У нас был предыдущий коллега, который установил webmin с постфиксом, чтобы разрешить отправку SMS-сообщений с серверов приложений и по электронной почте.
Он ушел под темной тучей и так и не сдал!
Недавно мы обновили наш брандмауэр, чтобы использовать TLS и более высокие уровни шифрования. Мы внесли изменения в наши общедоступные системы, и никаких проблем! Однако теперь нам сообщили, что у нас возникли проблемы с нашим SMS-шлюзом. Веб-сервер, который находится в демилитаризованной зоне нашего ASA, выполняет аутентификацию по SMS, при которой пользователь входит в систему, система генерирует SMS и отправляет их через наш шлюз SMS и получает код входа для пользователей.
После изменения брандмауэра пользователи больше не получают эти текстовые сообщения. После небольшого исследования выяснилось, что наша ошибка связана с тем, что центр сертификации не указан в настройках TLS. Изменение этого привело к новой ошибке: неизвестный CA. Я создал новый самоподписанный сертификат, обновил все правильные настройки и теперь получаю следующее:
Mar 23 09:22:47 srvesms01 postfix/smtpd[14295]: connect from unknown[10.*.*.*]
Mar 23 09:22:53 srvesms01 postfix/smtpd[14083]: SSL_accept error from unknown[10.*.*.*]: -1
Mar 23 09:22:53 srvesms01 postfix/smtpd[14083]: warning: TLS library problem: 14083:error:140760FC:SSL routines:SSL23_GET_CLIENT_HELLO:unkn own protocol:s23_srvr.c:647:
Mar 23 09:22:53 srvesms01 postfix/smtpd[14083]: lost connection after CONNECT from unknown[10.*.*.*]
Веб-сервер, генерирующий SMS (10... *) настроен для TLS и имеет безопасные шифры.
Может ли кто-нибудь помочь мне разобраться в этой проблеме? Для меня это все в новинку, так что извиняюсь за глупые вопросы!
Спасибо
Похоже, основная проблема заключается в несоответствии поддерживаемых протоколов SSL / TLS.
На первый взгляд кажется, что либо клиент, подключающийся к postfix (или, в частности, SMPTD), пытается использовать SSLv3.
Кроме того, кажется, что SSLv3 не поддерживается - ваше обновление включало настройку только использование TLS?
Один из способов быстро проверить, что поддерживает ваш сервер (не входя в конфигурацию), - это использовать openssl s_client
:
openssl s_client -connect mail.server:25 -starttls smtp -ssl2
openssl s_client -connect mail.server:25 -starttls smtp -ssl3
openssl s_client -connect mail.server:25 -starttls smtp -tls1
Затем вы можете проверить, что поддерживает ваш сервер, и позволяет ли какая-либо из этих команд воспроизвести проблему.
При необходимости вы можете выполнить аналогичные проверки на удаленном конце.
Еще одна идея - убедиться, что у вас есть подходящие Настройки TLS в постфиксе:
main.cf
) из smtpd_tls_security_level
smtpd_tls_mandatory_ciphers
, smtpd_tls_mandatory_protocols
, и smtpd_tls_mandatory_exclude_ciphers