我使用的是 Ubuntu 18.04,今天的最后更新。
后缀:3.3.0-1ubuntu0.2
openssh: 1:7.6p1-4ubuntu0.3
我有一个小型本地网络,其中有 1 台 PC (P)、2 台笔记本电脑 (L1/L2),全部运行 Ubuntu、一台平板电脑和 2 部智能手机。传入邮件(来自互联网)由电子邮件客户端直接处理。我希望能够使用 postfix 发送邮件,要求:
R1:从任意P、L1、L2发送邮件至任意P、L1、L2
R2:从任何 P、L1、L2 发送邮件到互联网上的任何电子邮件帐户
R3:我的邮件提供商需要一些 TLS 设置,如下所示
目前,我在所有三个上使用了相当相同的配置,这些行位于 main.cf 中,这些行在我的提供商论坛中部分建议首先进行连接。
relayhost = [smtp.mymail.provider]:465
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.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
smtp_tls_wrappermode = yes
smtp_tls_security_level = encrypt
此设置涵盖 R2,但我无法在本地网络内发送邮件。例如,从 P 向 L1 发送邮件会将其记录在 /var/log/mail.log 中:
10 月 20 日 14:02:58 P postfix/smtp[7453]:L1.mylan[192.168.18.21]:25 的 SSL_connect 错误:-1
10 月 20 日 14:02:58 P postfix/smtp[7453]:警告:TLS 库问题:错误:1408F10B:SSL 例程:ssl3_get_record:版本号错误:../ssl/record/ssl3_record.c:332:
10 月 20 日 14:02:58 P postfix/smtp[7453]: 6CE0E2A1138: to=,relay=L1.mylan[192.168.18.21]:25,delay=0.08,delays=0.02/0.01/0.05/0,dsn=4.7.5,status=deferred (无法启动 TLS:握手失败)
这听起来像是某些 TLS 库中的错误,但是:
- 在 TLS_README 中,严格不鼓励使用此设置。相反,它建议在 master.cf 中放置类似行的解决方案。我尝试了多种线路和选项,但没有成功。
我想要的是,P 是进入互联网的转发服务器,并且所有服务器本身仅处理本地邮件传输(在 LAN 中)。
所以这是我的问题:
- 有没有一种简单(且正确)的方法来做到这一点?如何?
- 我不应该使用 postfix 吗?然后怎样呢?
问候
杰克