К счастью, Debian предоставляет пакет SASL с Postfix. Вы можете использовать библиотеки Debian SASL, чтобы позволить пользователям аутентифицироваться за пределами сети. В следующем примере мы используем SASL для удостоверения того, что люди, пытающиеся выйти на связь, имеют валидные учетные записи на сервере Linux. Наша система позволяет подключаться и посылать почту только пользователям с учетными записями на сервере. Мы будем применять механизм входа Linux по умолчанию, то есть подключать модули аутентификации.
Если вы инсталлировали пакеты ранее, то обеспечили необходимые расширения и библиотеки SASL (postfixtls, libsasl2, sasl2bin и libsasl2). Теперь вам нужно конфигурировать файл /etc/postfix/main.cf. Сначала мы покажем вам, как
добавлять параметры в файл, используя команды postconf, затем покажем альтернативный способ, включающий простое редактирование /etc/postfix/main.cf.
Включение аутентификации на сервере Postfix SMTP добавляет параметры smtpd к вашему файлу main.cf командой postconf.
Далее добавьте параметр для согласования с некоторыми нестандартными клиентами, которые не следуют аутентификации SMTP правильно:
# postconf е 'broken_sasl_auth_clients = yes'Параметр smtpd_sasl_security_options позволяет контролировать механизмы паролей, когда клиенты подключаются к вашему серверу SMTP. Следующая конфигурация блокирует анонимную аутентификацию:
# postconf е 'smtpd_sasl_security_options = noanonymous'По умолчанию Postfix не позволяет неавторизованной пересылки почты. Итак, чтобы разрешить пользователям работать с вашим сервером из Интернета, вы должны добавить другой параметр (одной строкой):
# postconf е 'smtpdrecipientrestrictions =permi tjnynetworks.permi t_sa si_authenti cated.rej ect_unauth_desti nati on'
Наконец, параметр smtpd_sas 1 _1 oca 1 _domai n ставит условием имя домена локальной аутентификации. По умолчанию Postfix считает имя машины доменным именем локальной аутентификации. Чтобы использовать поведение по умолчанию, укажите пустую строку:
Это завершает конфигурирование SASL для Postfix. В качестве альтернативы, вместо выполнения предшествующих команд postconf вы можете отредактировать файл /etc/postfi x/mai n. cf, добавить следующие записи и перезагрузить Postfix:
smtpd_sasl_local_domain = Smyhostname smtpd_sasl_auth_enable = yes broken_sasl_auth_clients = yes smtpd_sasl_security_options = noanonymous smtpd_recipient_restrictions
permi t_sasl_authenti cated,permi tjnynetworks.reject_unauth_desti nati on smtpd_sasl_local_domain =
Вы уже завершаете настройку SASL и можете начать его использовать. Прежде чем мы обсудим последние шаги, выполните следующие команды, чтобы создать файл конфигурации SASL в директории, где Postfix будет его искать (параметр р позволяет избежать ошибки, если директория уже существует):
Create the smtpd.conf file with these two lines: pwcheck_method: saslauthd mech_list: plain login
Теперь вы можете перезапустить Postfix: