Настройка exim4 для приема почты от авторизованных пользователей

Хочу настроить прием почты с авторизацией пользователей с использованием TLS на 587-м порту, при этом 25-й порт остается открытым для приема почты без авторизации с внешних серверов.

– В конфиге exim4 в разделе main/03_exim4-config_tlsoptions добавить строки:

MAIN_TLS_ADVERTISE_HOSTS = ${if eq {$interface_port}{587} {*}{}}
MAIN_TLS_ENABLE = true

– создать ключ и сертификат – запустить /usr/share/doc/exim4-base/examples/exim-gencert,
который создаст файлы сертификата и ключа (/etc/exim4/exim.crt и /etc/exim4/exim.key).

– в файле /etc/default/exim4 добавить строку:

SMTPLISTENEROPTIONS='-oX 587:25 -oP /var/run/exim4/exim.pid'

– в разделе auth/30_exim4-config_examples раскомментировать строки:

login_server:
   driver = plaintext
   public_name = LOGIN
   server_prompts = "Username:: : Password::"
   server_condition = "${if crypteq{$auth2}{${extract{1}{:}{${lookup{$auth1}lsearch{CONFDIR/passwd}{$value}{*:*}}}}}{1}{0}}"
   server_set_id = $auth1
   .ifndef AUTH_SERVER_ALLOW_NOTLS_PASSWORDS
   server_advertise_condition = ${if eq{$tls_cipher}{}{}{*}}
   .endif

– создать пары username:password и записать их в файл /etc/exim4/passwd, это делается запуском программки /usr/share/doc/exim4-base/examples/exim-adduser (файл /etc/exim4/passwd должен принадлежать root:Debian-exim, права 640).

– в файле /etc/exim4/update-exim4.conf.conf для приема почты для нашего домена example.com извне для должен быть указан внешний IP нашего сервера (xxx.xxx.xxx.xxx), и надо указать наш домен example.com в списке dc_other_hostnames:

dc_local_interfaces='127.0.0.1 ; ::1 ; xxx.xxx.xxx.xxx'
dc_other_hostnames='example.com;

Последнее можно сделать, запустив dpkg-reconfigure exim4-config, затем перезапустить exim: service exim4 restart

В итоге, пользователь vasya, указанный в файле /etc/exim4/passwd, сможет для отправки своей исходящей почты подключаться к нашему серверу exim на 587-м порту, с TLS и авторизацией; не сможет отправлять почту на 25-й порт с авторизацией, и будет приниматься почта на 25-й порт без авторизации для домена example.com.

Leave a Reply

Your email address will not be published. *
You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>