RHCE 系列(九):如何使用无客户端配置 Postfix 邮件服务器(SMTP)

本文涉及的产品
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
简介: RHCE 系列(九):如何使用无客户端配置 Postfix 邮件服务器(SMTP) 尽管现在有很多在线联系方式,电子邮件仍然是一个人传递信息给远在世界尽头或办公室里坐在我们旁边的另一个人的有效方式。

RHCE 系列(九):如何使用无客户端配置 Postfix 邮件服务器(SMTP)


尽管现在有很多在线联系方式,电子邮件仍然是一个人传递信息给远在世界尽头或办公室里坐在我们旁边的另一个人的有效方式。

下面的图描述了电子邮件从发送者发出直到信息到达接收者收件箱的传递过程。

电子邮件如何工作

电子邮件如何工作

要实现这一切,背后发生了好多事情。为了使电子邮件信息从一个客户端应用程序(例如 Thunderbird、Outlook,或者 web 邮件服务,例如 Gmail 或 Yahoo 邮件)投递到一个邮件服务器,并从其投递到目标服务器并最终到目标接收人,每个服务器上都必须有 SMTP(简单邮件传输协议)服务。

这就是为什么我们要在这篇博文中介绍如何在 RHEL 7 中设置 SMTP 服务器,从本地用户发送的邮件(甚至发送到另外一个本地用户)被转发forward到一个中央邮件服务器以便于访问。

在这个考试的要求中这称为无客户端null-client安装。

在我们的测试环境中将包括一个起源originating邮件服务器和一个中央服务器或中继主机relayhost

  • 起源邮件服务器: (主机名: box1.mydomain.com / IP: 192.168.0.18)
  • 中央邮件服务器: (主机名: mail.mydomain.com / IP: 192.168.0.20)

我们在两台机器中都会使用你熟知的 /etc/hosts 文件做名字解析:

192.168.0.18    box1.mydomain.com       box1
192.168.0.20    mail.mydomain.com       mail

安装 Postfix 和防火墙/SELinux 注意事项

首先,我们需要(在两台机器上):

1、 安装 Postfix:

# yum update && yum install postfix

2、 启动服务并启用开机自动启动:

# systemctl start postfix
# systemctl enable postfix

3、 允许邮件流量通过防火墙:

# firewall-cmd --permanent --add-service=smtp
# firewall-cmd --add-service=smtp

在防火墙中开通邮件服务器端口

在防火墙中开通邮件服务器端口

4、 在 box1.mydomain.com 配置 Postfix

Postfix 的主要配置文件是 /etc/postfix/main.cf。这个文件本身是一个很大的文本文件,因为其中包含了解释程序设置的用途的注释。

为了简洁,我们只显示了需要编辑的行(没错,在起源服务器中你需要保留 mydestination 为空;否则邮件会被存储到本地,而不是我们实际想要发往的中央邮件服务器):

myhostname = box1.mydomain.com
mydomain = mydomain.com
myorigin = $mydomain
inet_interfaces = loopback-only
mydestination =
relayhost = 192.168.0.20

5、 在 mail.mydomain.com 配置 Postfix

myhostname = mail.mydomain.com
mydomain = mydomain.com
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks = 192.168.0.0/24, 127.0.0.0/8

如果还没有设置,还要设置相关的 SELinux 布尔值永久为真:

# setsebool -P allow_postfix_local_write_mail_spool on

设置 Postfix SELinux 权限

设置 Postfix SELinux 权限

上面的 SELinux 布尔值会允许中央服务器上的 Postfix 可以写入邮件池mail spool

6、 在两台机子上重启服务以使更改生效:


  
  
  1. # systemctl restart postfix

如果 Postfix 没有正确启动,你可以使用下面的命令进行错误处理。


  
  
  1. # systemctl -l status postfix
  2. # journalctl -xn
  3. # postconf -n

测试 Postfix 邮件服务

要测试邮件服务器,你可以使用任何邮件用户代理Mail User Agent,MUA,例如 mail 或 mutt

由于我个人喜欢 mutt,我会在 box1 中使用它发送邮件给用户 tecmint,并把现有文件(mailbody.txt)作为信息内容:


  
  
  1. # mutt -s "Part 9-RHCE series" tecmint@mydomain.com < mailbody.txt

测试 Postfix 邮件服务器

测试 Postfix 邮件服务器

现在到中央邮件服务器(mail.mydomain.com)以 tecmint 用户登录,并检查是否收到了邮件:


  
  
  1. # su tecmint
  2. # mail

检查 Postfix 邮件服务器发送

检查 Postfix 邮件服务器发送

如果没有收到邮件,检查 root 用户的邮件池看看是否有警告或者错误提示。你也许需要使用 nmap 命令确保两台服务器运行了 SMTP 服务,并在中央邮件服务器中打开了 25 号端口:


  
  
  1. # nmap -PN 192.168.0.20

Postfix 邮件服务器错误处理

Postfix 邮件服务器错误处理

总结

像本文中展示的设置邮件服务器和中继主机是每个系统管理员必须拥有的重要技能,也代表了理解和安装更复杂情景的基础,例如一个邮件服务器托管有多个邮件账户(甚至成百上千)的域名。

(请注意这种类型的设置需要有 DNS 服务器,这不在本文的介绍范围),但你可以参照下面的文章设置 DNS 服务器:

最后,我强烈建议你熟悉 Postfix 的配置文件(main.cf)和这个程序的帮助手册。如果有任何疑问,别犹豫,使用下面的评论框或者我们的论坛 Linuxsay.com 告诉我们吧,你会从世界各地的 Linux 高手中获得几乎是及时的帮助。

本文来自云栖社区合作伙伴“Linux中国”,原文发表于2013-04-02.
相关文章
|
23天前
|
安全 Linux 应用服务中间件
从零开始启动、配置、保护你的云服务器并搭建一个简单的网站
本文详细介绍了如何准备原料、搭建基础环境、进行安全防护、建设网站、管理证书以及开启BBR优化网络性能。主要内容包括获取健康云服务器、配置SSH登录、创建非root用户、启用密钥认证、安装Nginx、申请TLS证书、配置HTTPS自动跳转及优化网络性能等步骤。通过本文,读者可以掌握从零开始搭建个人网站的全过程。
36 1
从零开始启动、配置、保护你的云服务器并搭建一个简单的网站
|
15天前
|
开发框架 .NET PHP
网站应用项目如何选择阿里云服务器实例规格+内存+CPU+带宽+操作系统等配置
对于使用阿里云服务器的搭建网站的用户来说,面对众多可选的实例规格和配置选项,我们应该如何做出最佳选择,以最大化业务效益并控制成本,成为大家比较关注的问题,如果实例、内存、CPU、带宽等配置选择不合适,可能会影响到自己业务在云服务器上的计算性能及后期运营状况,本文将详细解析企业在搭建网站应用项目时选购阿里云服务器应考虑的一些因素,以供参考。
|
23天前
|
存储 人工智能 弹性计算
阿里云弹性计算(ECS)提供强大的AI工作负载平台,支持灵活的资源配置与高性能计算,适用于AI训练与推理
阿里云弹性计算(ECS)提供强大的AI工作负载平台,支持灵活的资源配置与高性能计算,适用于AI训练与推理。通过合理优化资源分配、利用自动伸缩及高效数据管理,ECS能显著提升AI系统的性能与效率,降低运营成本,助力科研与企业用户在AI领域取得突破。
42 6
|
26天前
|
负载均衡 监控 应用服务中间件
配置Nginx反向代理时如何指定后端服务器的权重?
配置Nginx反向代理时如何指定后端服务器的权重?
47 4
|
1月前
|
存储 分布式计算 固态存储
阿里云2核16G、4核32G、8核64G配置云服务器租用收费标准与活动价格参考
2核16G、8核64G、4核32G配置的云服务器处理器与内存比为1:8,这种配比的云服务器一般适用于数据分析与挖掘,Hadoop、Spark集群和数据库,缓存等内存密集型场景,因此,多为企业级用户选择。目前2核16G配置按量收费最低收费标准为0.54元/小时,按月租用标准收费标准为260.44元/1个月。4核32G配置的阿里云服务器按量收费标准最低为1.08元/小时,按月租用标准收费标准为520.88元/1个月。8核64G配置的阿里云服务器按量收费标准最低为2.17元/小时,按月租用标准收费标准为1041.77元/1个月。本文介绍这些配置的最新租用收费标准与活动价格情况,以供参考。
|
1月前
|
监控 PHP Apache
优化 PHP-FPM 参数配置:实现服务器性能提升
优化PHP-FPM的参数配置可以显著提高服务器的性能和稳定性。通过合理设置 `pm.max_children`、`pm.start_servers`、`pm.min_spare_servers`、`pm.max_spare_servers`和 `pm.max_requests`等参数,并结合监控和调优措施,可以有效应对高并发和负载波动,确保Web应用程序的高效运行。希望本文提供的优化建议和配置示例能够帮助您实现服务器性能的提升。
62 3
|
1月前
|
存储 缓存 固态存储
阿里云服务器2核8G、4核16G、8核32G配置租用收费标准与活动价格参考
2核8G、8核32G、4核16G配置的云服务器处理器与内存比为1:4,这种配比的云服务器一般适用于中小型数据库系统、缓存、搜索集群和企业办公类应用等通用型场景,因此,多为企业级用户选择。本文介绍这些配置的最新租用收费标准与活动价格情况,以供参考。
|
7月前
|
Ruby
|
7月前
|
数据安全/隐私保护 Ruby
|
7月前
|
数据安全/隐私保护 Ruby