主页 > 创业  > 

Postfix主配置文件:只允许本机发送邮件,不接收任何外部邮件

Postfix主配置文件:只允许本机发送邮件,不接收任何外部邮件

我想实现的功能是,它可以发送邮件,给外网的用户,,比如发送给我xxxxxxxxxxxxxx@163 , 但是这个服务器不接收任何邮件。

下面是Postfix 具体配置。配置内容保存到 Postfix 的主配置文件中(一般为 /etc/postfix/main.cf),然后重启 Postfix 服务生效。

############################################################################### # Postfix 主配置文件:只允许本机发送外部邮件,不接收任何外部邮件 ############################################################################### # 163 邮件服务器不支持 SMTPUTF8 扩展,禁止这个才能给163发邮件。 smtputf8_enable = no # 显示在 SMTP 握手时的标识信息 smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu) # 关闭 biff 服务(即时邮件通知) biff = no # 不自动追加发件人地址的域名(由 MUA 自行处理) append_dot_mydomain = no # 禁止提供 readme 目录(安全考虑) readme_directory = no # 设置 Postfix 的兼容性级别(默认级别为 2) compatibility_level = 2 ############################################################################### # TLS/SSL 参数配置(测试环境使用 snakeoil 证书,正式环境建议使用正规证书) ############################################################################### smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key smtpd_tls_security_level = may smtp_tls_CApath = /etc/ssl/certs smtp_tls_security_level = may smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache ############################################################################### # 中继限制设置 # 仅允许本机或经过认证的用户通过此服务器发送邮件,防止成为开放中继 ############################################################################### smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, defer_unauth_destination ############################################################################### # 主机名及发信域名设置 ############################################################################### # 设置邮件服务器的主机名(与 hostnamectl 显示一致) myhostname = MY-HOST-NAME # 发件域名使用 /etc/mailname 中的内容,也可直接指定域名,如:example myorigin = /etc/mailname ############################################################################### # 本地投递设置 # 为确保不接收外部邮件,将本地投递域限制为 localhost ############################################################################### mydestination = localhost ############################################################################### # 中转设置 # relayhost 为空表示 Postfix 直接通过 DNS 将邮件发送到目标邮件服务器 ############################################################################### relayhost = ############################################################################### # 网络访问控制 # 只允许本机(127.0.0.0/8 和 IPv6 的 loopback 地址)通过此服务器发送邮件, # 防止外部主机连接到该服务器提交邮件。 ############################################################################### mynetworks = 127.0.0.0/8, [::1]/128 ############################################################################### # 邮箱及邮件地址相关设置 ############################################################################### # 邮箱大小无限制(0 表示不限制) mailbox_size_limit = 0 # 定义邮件地址中的分隔符(例如 user+tag@example ) recipient_delimiter = + ############################################################################### # 接收服务设置 # 只在本机回环接口上监听 SMTP 服务,外部无法连接到该服务器接收邮件 ############################################################################### inet_interfaces = loopback-only # 同时支持 IPv4 和 IPv6 协议 inet_protocols = all

重启邮件服务

sudo systemctl restart postfix

测试发送一份邮件给自己

echo "这是一封测试邮件,来自 Postfix 配置测试。" | mail -s "测试邮件" xxxxxxxx@163

观察日志 使用如下命令观察日志,确认邮件是否发送成功:

tail -f /var/log/mail.log
标签:

Postfix主配置文件:只允许本机发送邮件,不接收任何外部邮件由讯客互联创业栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“Postfix主配置文件:只允许本机发送邮件,不接收任何外部邮件