当邮件客户端连接到后缀时SSL_accept错误

我设法在我的服务器上设置了自签名证书的postfixdovecot 。 我可以在那里使用telnet命令发送和接收电子邮件。 现在我想从我的笔记本电脑上的Thunderbird客户端连接到我的邮件服务器,但是失败了,这里是/var/log/mail.log的输出:

 postfix/submission/smtpd[11560]: connect from unknown[95.134.50.75] postfix/submission/smtpd[11439]: SSL_accept error from unknown[95.134.50.75]: lost connection postfix/submission/smtpd[11439]: lost connection after CONNECT from unknown[95.134.50.75] 

以下是我在安装程序中更改的/etc/postfix/master.cf的一部分:

 # ========================================================================== # service type private unpriv chroot wakeup maxproc command + args # (yes) (yes) (yes) (never) (100) # ========================================================================== smtp inet n - - - - smtpd smtps inet n - - - - smtpd #smtp inet n - - - 1 postscreen #smtpd pass - - - - - smtpd #dnsblog unix - - - - 0 dnsblog #tlsproxy unix - - - - 0 tlsproxy submission inet n - - - - smtpd -o syslog_name=postfix/submission -o smtpd_tls_wrappermode=yes -o smtpd_tls_security_level=encrypt -o smtpd_sasl_auth_enable=yes -o smtpd_recipient_restrictions=permit_mynetworks,permit_sasl_authenticated,reject -o milter_macro_daemon_name=ORIGINATING -o smtpd_sasl_type=dovecot -o smtpd_sasl_path=private/auth 

这是我的/etc/postfix/main.cf

 myhostname = mail.myserver.com myorigin = /etc/mailname mydestination = mail.myserver.com, myserver.com, localhost, localhost.localdomain relayhost = mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases smtpd_tls_cert_file=/etc/ssl/certs/mailcert.pem smtpd_tls_key_file=/etc/ssl/private/mail.key smtpd_use_tls=yes smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache smtpd_tls_protocols = !SSLv2, !SSLv3 smtpd_tls_security_level = may smtp_tls_security_level = may smtp_tls_loglevel = 1 smtpd_tls_loglevel = 1 local_recipient_maps = proxy:unix:passwd.byname $alias_maps inet_protocols = all 

另外,不知道这是否可以帮助,但telnet localhost 25telnet localhost 465在服务器上工作,但只有telnet myserver.com 465从我的笔记本电脑工作,当我尝试端口25它说telnet: Unable to connect to remote host: Connection timed outufw在服务器上不活动。

我该怎么办才能解决这个问题?

端口465用于SMTPS,它在build立连接时立即使用SSL,然后在build立安全连接之后使用与端口25上正常发现的相同的SMTP协议。 你从命令行testing:

 openssl s_client -connect smtp.example.com:465 

使用telnet连接到端口465将导致日志文件中出现错误消息,因为不使用SSL协议。

只是为了完整:在普通的SMTP端口TCP / 25上testingTLS

 openssl s_client -starttls smtp -connect smtp.example.com:25