温馨提示×

centos怎么设置邮件转发

小樊
42
2026-10-08 19:47:52
栏目: 智能运维

在 CentOS 上“设置邮件转发”通常有几种常见场景,下面按最常见用法给你说明,你可以对照自己的需求选择。


一、本地用户邮件转发(最常用)

适用于:系统内部用户(如 root)收到邮件,转发到别的邮箱

方法 1:使用 ~/.forward

例如把 root 的邮件转发到外部邮箱:

vi /root/.forward

内容:

you@example.com

多个收件人:

user1@example.com
user2@example.com

✅ 立即生效,无需重启服务
✅ 适合 postfix / sendmail


二、系统级邮件转发(推荐)

适用于:所有本地用户或特定用户统一转发

编辑 Postfix 的别名文件(CentOS 默认用 postfix):

vi /etc/aliases

示例:

root: you@example.com
www: you@example.com

保存后执行:

newaliases

三、Postfix 整体配置转发(SMTP 转发)

适用于:把 CentOS 发出的所有邮件通过外部 SMTP 转发

1. 安装 postfix(如未安装)

yum install postfix mailx -y
systemctl enable postfix
systemctl start postfix

2. 修改主配置

vi /etc/postfix/main.cf

关键配置:

myhostname = centos.example.com
mydestination = $myhostname, localhost
relayhost = [smtp.example.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous

3. 配置 SMTP 账号

vi /etc/postfix/sasl_passwd
[smtp.example.com]:587 user@example.com:password

生成数据库:

postmap /etc/postfix/sasl_passwd
chmod 600 /etc/postfix/sasl_passwd*

4. 重启 postfix

systemctl restart postfix

四、测试邮件转发

echo "test" | mail -s "test mail" you@example.com

查看日志:

tail -f /var/log/maillog

五、常见用途总结

需求 推荐方式
root 邮件转发 /root/.forward
多用户转发 /etc/aliases
服务器统一发信 Postfix + relayhost
云服务器发外部邮箱 SMTP 转发(避免被拦截)

如果你能告诉我:

  • 是 root 邮件转发 还是 整个服务器邮件转发
  • 是否使用 外部邮箱(QQ / 163 / 企业邮)

我可以给你一份可直接复制使用的配置。

0 踩