Сразу создаём самоподписной доверенный сертификат:
openssl req -new -nodes -x509 -out /etc/postfix/smtpd.pem -keyout /etc/postfix/smtpd.pem -days 3650
В процессе выполнения на экран будут выданы запросы о вводе таких параметров как: Country Name, State or Province Name; Locality Name; Organization Name; Organizational Unit Name; Common Name; Email Address. Самым важным параметром является значение Common Name и в нашем случае оно должно совпадать с FQDN сервера, по которому клиенты будут обращаться к нему для отправки почты.
Теперь необходимо включить поддержку TLS в файле /etc/postfix/main.cf:
smtp_use_tls = yes smtpd_use_tls = yes smtpd_tls_auth_only = yes smtp_tls_note_starttls_offer = yes smtpd_tls_key_file = /etc/postfix/smtpd.pem smtpd_tls_cert_file = /etc/postfix/smtpd.pem smtpd_tls_CAfile = /etc/postfix/smtpd.pem smtpd_tls_loglevel = 1 smtpd_tls_received_header = yes smtpd_tls_session_cache_timeout = 3600s tls_random_source = dev:/dev/urandom
Указанные параметры имеют следующие значения: smtp_use_tls - использовать TLS, если удаленный сервер сообщает о поддержке TLS smtpd_use_tls - сообщать клиентам о поддержке TLS smtpd_tls_auth_only - использовать аутентификацию SMTP только для TLS-соединений smtp_tls_note_starttls_offer - фиксировать в логе имена серверов, выдающих сообщение STARTTLS, поддержка TLS для которых не включена smtpd_tls_key_file - местонахождение закрытого ключа сервера smtpd_tls_cert_file - местонахождение сертификата сервера smtpd_tls_CAfile - местонахождение самоподписного доверенного сертификата smtpd_tls_loglevel - детальность сообщений о TLS-активности, выводимых в лог smtpd_tls_received_header - запрашивать заголовки сообщений с информацией о версии протокола и алгоритме шифрования smtpd_tls_session_cache_timeout - время, в течение которого данные в кэше TLS-сессии считаются актуальными tls_random_source - имя устройства-генератора псевдослучайных чисел (PRNG).
Для того, чтобы Postfix принимал TLS-соединения на специальный порт (465/SMTPS, а не 25/SMTP), в файле /etc/postfix/master.cf необходимо раскомментировать строки:
smtps inet n - n - - smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
На этом добавление поддержки TLS-шифрования трафика к Postfix заканчивается. Остается перезапустить Postfix и начать пользоваться аутентификацией SMTP и TLS-шифрованием трафика.
Для создания самоподписного доверенного сертификата, находясь в папке /usr/local/etc/postfix, необходимо выполнить команду: |