Назад | Перейти на главную страницу

Не могу отправлять почту через ssl с моими виртуальными доменами из внешней веб-почты

У меня возникли проблемы с 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