Примечание . Хотя все это ниже может быть познавательным, оказалось, что вся моя проблема была не с постфиксом, а с моим провайдером. Я фактически переключил интернет-провайдеров в рассматриваемое время, и мой новый перехватывает и переписывает незашифрованный SMTP-трафик таким образом, который явно нарушает STARTTLS. Я обошел проблему, установив соединение только TLS на порт 465.
STARTTLS работал сегодня с моей системой. Без того, чтобы я каким-либо образом изменил систему, она спонтанно сломалась. Сейчас я пытаюсь исправить это пару часов, но безуспешно.
Когда я подключаюсь к серверу, вот что я получаю:
savanni@Orolo:~$ telnet apps.savannidgerinel.com 25
Trying 129.121.182.135...
Connected to apps.sasavanni@Orolo:~$ telnet apps.savannidgerinel.com 25
Trying 129.121.182.135...
Connected to apps.savannidgerinel.com.
Escape character is '^]'.
220 ***********************************************
ehlo dude
250-apps.savannidgerinel.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-XXXXXXXA
250-AUTH PLAIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
^]close
telnet> close
Connection closed.
Хорошо, очевидно, STARTTLS в этом списке нет. Поэтому я копался в своих файлах конфигурации и снова работал над учебными пособиями, и это не принесло мне никакой пользы. Вот моя конфигурация, связанная с tls:
smtp_tls_CAfile = /etc/ssl/certs/savannidgerinel_com_CA.pem
smtp_tls_cert_file = /etc/ssl/certs/apps.savannidgerinel.com.pem
smtp_tls_key_file = /etc/ssl/private/apps.savannidgerinel.com.key.pem
smtp_tls_security_level = may
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_tls_CAfile = /etc/ssl/certs/savannidgerinel_com_CA.pem
smtpd_tls_cert_file = /etc/ssl/certs/apps.savannidgerinel.com.pem
smtpd_tls_key_file = /etc/ssl/private/apps.savannidgerinel.com.key.pem
smtpd_tls_loglevel = 3
smtpd_tls_received_header = yes
smtpd_tls_security_level = may
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
tls_random_source = dev:/dev/urandom
Все файлы сертификатов присутствуют, присутствует закрытый ключ сервера, присутствует сервер CA, и оба файла smtpd_scache.db и smtp_scache.db , Все доступно пользователю postfix. Говоря об этом, вот выполняющиеся процессы:
savanni@apps:/var/lib/postfix$ ps aux | grep postfix
root 3525 0.0 0.1 25112 1680 ? Ss 20:19 0:00 /usr/lib/postfix/master
postfix 3526 0.0 0.1 27176 1524 ? S 20:19 0:00 pickup -l -t fifo -u -c -o content_filter= -o receive_override_options=no_header_body_checks
postfix 3527 0.0 0.1 27228 1552 ? S 20:19 0:00 qmgr -l -t fifo -u
postfix 3528 0.0 0.4 46948 4144 ? S 20:19 0:00 smtpd -n smtp -t inet -u -c -o stress= -s 2
postfix 3529 0.0 0.1 27176 1628 ? S 20:19 0:00 proxymap -t unix -u
postfix 3530 0.0 0.3 38212 3176 ? S 20:19 0:00 tlsmgr -l -t unix -u -c
postfix 3531 0.0 0.1 27176 1516 ? S 20:19 0:00 anvil -l -t unix -u -c
postfix 3535 0.0 0.1 27188 1544 ? S 20:20 0:00 trivial-rewrite -n rewrite -t unix -u -c
Файлы журналов не говорят абсолютно ничего, связанного с TLS, кроме этого:
Nov 6 02:19:45 apps postfix/master[3525]: daemon started -- version 2.9.6, configuration /etc/postfix
Nov 6 02:19:49 apps postfix/smtpd[3528]: initializing the server-side TLS engine
Nov 6 02:19:49 apps postfix/tlsmgr[3530]: open smtpd TLS cache btree:/var/lib/postfix/smtpd_scache
Nov 6 02:19:49 apps postfix/tlsmgr[3530]: tlsmgr_cache_run_event: start TLS smtpd session cache cleanup
Nov 6 02:19:49 apps postfix/smtpd[3528]: connect from unknown[204.16.68.108]
Ни syslog, ни mail.err не показывают никаких указаний проблемы. Что касается всей системы, все хорошо. Но нет STARTTLS, и поэтому я вдруг не могу отправить любое электронное письмо вообще.
Помощь ???
from main.cf
Для большего количества журналов tls: smtp_tls_note_starttls_offer = yes
закомментируйте или удалите:
smtp_tls_CAfile = /etc/ssl/certs/savannidgerinel_com_CA.pem
smtp_tls_cert_file = /etc/ssl/certs/apps.savannidgerinel.com.pem
smtp_tls_key_file = /etc/ssl/private/apps.savannidgerinel.com.key.pem
"Не настраивайте клиентские сертификаты, если вы не должны предоставлять клиентские сертификаты TLS одному или нескольким серверам. Клиентские сертификаты обычно не нужны и могут вызвать проблемы в конфигурациях, которые работают без них. Рекомендуется использовать стандартные значения по умолчанию. "
Перезагрузить конфиг или перезапуск постфикса.
Я проверил ваш сервер:
EHLO apps.savannidgerinel.com
250-apps.savannidgerinel.com
250-PIPELINING
250-SIZE 10240000
250-VRFY 250-ETRN
250-STARTTLS
250-AUTH PLAIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
Он действительно предлагает 250-STARTTLS
. Итак, что-то перехватывает ваш трафик через порт 25 как прокси. Это может быть брандмауэр любого типа или расширенный маршрутизатор с такой расширенной функциональностью, что ваш локальный компьютер подключается через него. Если у вас нет брандмауэра или расширенного маршрутизатора, скорее всего, это антиспам-политика вашего интернет-провайдера, чтобы предотвратить появление спама с их IP-диапазонов. В худшем случае кто-то делает человек в средней атаке.