Работа по протоколу Milter |
Взаимодействие с Postfix по протоколу Milter происходит следующим образом: •Через транспортное соединение, определяемое со стороны модуля drweb-milter (который работает как компонент Receiver) транспортным адресом, системе Postfix передаются внутренние команды Milter API и сообщение. При этом сообщение передается по частям, в зависимости от фазы почтовой сессии (helo, mail from:, rcpt to: и т.д.). Части сообщения сохраняются модулем drweb-milter во временных файлах. Посредством Milter API модуль drweb-milter передает системе Postfix указания о действиях, которые необходимо совершить над данным сообщением. Milter API является многопоточной библиотекой, что позволяет одновременно обрабатывать несколько почтовых сессий. В описываемом режиме взаимодействия Postfix является клиентом, а drweb-milter – сервером, поэтому в конфигурационном файле системы Postfix main.cf указывается адрес модуля drweb-milter, а система Postfix выбирает подходящий клиентский адрес для этого соединения; •Через другое транспортное соединение модуль drweb-milter передает модулю drweb-maild команды и ждет ответа. В приведенной схеме модуль drweb-milter является простым посредником (или преобразователем) между интерфейсом почтовой системы Postfix и модулем drweb-maild. Пожалуйста, обратите внимание на особенности работы через Milter в синхронном и асинхронном режимах.
|