src*_*091 6 ssl email-server postfix thunderbird
我已经设法在我的服务器上设置postfix
并dovecot
使用自签名证书。我可以在那里使用 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]
Run Code Online (Sandbox Code Playgroud)
这/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
Run Code Online (Sandbox Code Playgroud)
这是我的/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
Run Code Online (Sandbox Code Playgroud)
另外,不知道这是否可以帮助,但都telnet localhost 25
和telnet localhost 465
工作在服务器上,但只有telnet myserver.com 465
我的笔记本电脑工作,当我尝试端口25,它说telnet: Unable to connect to remote host: Connection timed out
。ufw
在服务器上处于非活动状态。
我应该怎么做才能修复它?
HBr*_*ijn 18
端口 465 用于 SMTPS,它在建立连接时立即使用 SSL,然后在建立安全连接后使用与通常在端口 25 上找到的相同的 SMTP 协议。您从命令行使用以下命令进行测试:
openssl s_client -connect smtp.example.com:465
Run Code Online (Sandbox Code Playgroud)
使用 telnet 连接到端口 465 将导致日志文件中出现错误消息,因为未使用 SSL 协议。
只是为了完整性:在普通 SMTP 端口 TCP/25 上测试 TLS
openssl s_client -starttls smtp -connect smtp.example.com:25
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
53719 次 |
最近记录: |