У меня возникли проблемы с postfix для отправки почты через SSL с внешней веб-почты. У меня есть несколько настроек домена на моем сервере, настроенных в postfix с mysql. Когда я отправляю почту с моего основного домена domain1.com, все работает нормально, но если я отправляю почту с domain2.com, я получаю это в своем журнале:
Обратите внимание: если я отключу SSL в веб-почте, он заработает.
connect from unknown[78.209.78.XXX]
timeout after UNKNOWN from unknown[78.209.78.XXX]
disconnect from unknown[78.209.78.XXX]
Вот мой main.cf:
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no
disable_vrfy_command = yes
smtpd_helo_required = yes
append_dot_mydomain = no
mydomain= domain1.com
myhostname = domain1.com
myorigin = $mydomain
mydestination = XXX.kimsufi.com, localhost.kimsufi.com, localhost
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
alias_maps = hash:/etc/aliases
queue_directory = /var/spool/postfix
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
virtual_mailbox_domains = mysql:/etc/postfix/mysql/mailbox-domains.cf
virtual_mailbox_base = /home/vmail
virtual_mailbox_maps = mysql:/etc/postfix/mysql/mailbox-maps.cf
virtual_alias_maps = mysql:/etc/postfix/mysql/alias-maps.cf
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
smtpd_use_tls = yes
smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
tls_random_source = dev:/dev/urandom
mail local si actif
smtpd_recipient_restrictions = permit_sasl_authenticated,
permit_mynetworks,
reject_unauth_destination,
check_policy_service unix:private/policy, # SPF
permit
#check_relay_domains
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/authnoactive, mutual_auth
broken_sasl_auth_clients = yes
# DKIM
milter_default_action = accept
milter_protocol = 6
smtpd_milters = inet:127.0.0.1:8891
non_smtpd_milters = inet:127.0.0.1:8891
Обратите внимание, что в веб-почте я установил smtp-сервер на mail.domain1.com, так как я прочитал, что мне нужно использовать домен, определенный как Common Name в сертификате tls.
Я хочу, чтобы он работал с SSL. Есть идеи, почему это не работает?
редактировать
Вот новая информация:
Кажется, что проблема не связана с доменом 1 или 2, а возникает только с новыми конфигурациями. У меня был домен, который настраивался более года, и все работало нормально. Я удалил его из своей веб-почты и перенастроил, и теперь я не могу отправлять почту.
Пока я настраивал его, я увидел, что он просил меня использовать мой https-сертификат, а не постфиксный. Так что, возможно, проблема оттуда, но я не знаю, как ее решить.
Вот мой apache conf:
<VirtualHost _default_:80>
include /etc/apache2/domain.conf
</VirtualHost>
<VirtualHost _default_:443>
include /etc/apache2/domain.conf
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/cert-domain.com.crt
SSLCertificateKeyFile /etc/apache2/ssl/domain.com.key
SSLCACertificateFile /etc/apache2/ssl/GandiStandardSSLCA.pem
SSLVerifyClient None
</VirtualHost>
Также, если я использую openssl s_client -connect localhost: 465, я получаю следующее:
CONNECTED(00000003)
11508:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:s23_clnt.c:607:
Я не знаю, нормально ли это для самоподписанного сертификата.
Postfix не слушает smtpd_tls_wrappermode
на порт 465, а скорее как стандартный сервер smtp.
Ваш master.cf
должен содержать (составную) строку, аналогичную
smtps inet n - n - - smtpd
-o syslog_name = постфикс / smtps
-o smtpd_tls_wrappermode = да
-o smtpd_sasl_auth_enable = да
-o smtpd_client_restrictions = allow_sasl_authenticated, отклонить
Однако, вероятно, только
smtps inet n - n - - smtpd