Ежемесячные архивы: March 2012

Проксирование POP/IMAP через NGINX c помощью Django

Одной из не так часто используемых возможностей nginx является возможность проксировать POP/IMAP. Когда это может быть полезно? Ну например для распределения нагрузки в высоконагруженной почтовой службе. Второй вариант — для прозрачной для пользователей переадресации на стороннюю почтовую службу.

Передо мной стояла следующая задача: в компании было принято решение использовать вместо своих серверов в качестве почтовой службы Яндекс.Почту для Домена. В основном решение было продиктовано огромным потоком спама, с которым не справлялся SpamAssassin, да и с самим объёмом почты сервер справлялся не без труда (на нём было множество других служб). При этом требовалось перенести почту без изменения паролей пользователей. Пароли, естественно, хранились в виде хэшей, поэтому автоматически установить пользователям на Яндексе такие же пароли было невозможно.

Поэтому я принял решение оставить авторизацию пользователей на своих серверах. Как раз с помощью nginx. А для упрощения администрирования этой системы, я написал два Django-приложения: одно для управления пользователями и авторизацией в nginx, а второе для синхронизации первого приложения с Яндекс.Почтой для домена. Читать далее »