Postfix 邮件服务器的配置

字节探险家说
• 阅读 8502

安装

yum install postfix dovecot 
yum remove sendmail

请注意,CentOS 5中的默认MTA 是sendmail。如果您不将默认MTA作为后缀,更新后缀可能会导致默认MTA恢复为sendmail。

配置

接下来,我们需要配置电子邮件服务器的各个部分。

Postfix

Postfix配置文件存储在 /etc/postfix 中。两个主要的postfix配置文件是master.cf 和 main.cf,虽然我们这里只处理 main.cf。首先,我们将对main.cf 配置文件进行一些添加或更改。应添加,编辑或取消注释以下行:

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

注意:每一行应从新行的开头开始,不应以空格或制表符开头。行开头的空格或制表符被视为前一行的延续,如果前一行是注释(#)行,则后续行也被视为这样。此外,应避免内联注释。

现在让我们看看每个设置项,以了解我们刚刚做了什么:

  • myhostname:是系统的主机名(即系统名为mail或mail.example.com)。
  • mydomain:是电子邮件服务器的域名(可以是真实或虚假的域名)。
  • myorigin:是本地发布的电子邮件似乎来自并传递到的域名。
  • inet_interfaces:设置Postfix可以接收邮件的网络接口。这些需要包括至少localhost和local.domain。
  • mydestination:是要传递到的域名列表(即,此服务器是发送到这些域的电子邮件的最终目的地)。
  • mynetworks:是可以通过服务器发送或中继邮件的可信IP地址列表。尝试通过源自此处未列出的IP地址的服务器发送电子邮件的用户将被拒绝。
  • relay_domains:此系统将邮件中继到的目标域列表。通过将其设置为空白,我们确保我们的邮件服务器不会充当不受信任网络的开放中继。建议读者测试他们的系统在这里不是一个开放的中继:http://www.abuse.net/relay.html
  • home_mailbox:设置邮箱相对于用户主目录的路径,还指定要使用的邮箱样式。Postfix支持Maildir和mbox格式,鼓励读者自己阅读每个格式的优点。但是,在本文中,我们选择使用Maildir格式(尾部斜杠表示Maildir格式。要指定mbox格式,读者将使用home_mailbox = Mailbox)。

创建用户邮箱

接下来,我们需要为其主目录中的每个用户创建一个邮箱并设置相应的权限,因此使用我们的示例用户john:

mkdir /home/john/Maildir
chown john:john /home/john/Maildir
chmod -R 700 /home/john/Maildir 

注意:如果以root身份创建用户邮箱,则必须将目录的所有权设置为用户。

别名

我们差不多完成了。我们为我们的用户 John Smith 设置了一个电子邮件帐户,该帐户以john 身份登录。他的电子邮件地址是 john@example.com。但是,John 可能希望收到jsmith@example.com(或任何其他别名)的电子邮件。我们可以通过使用系统别名文件为John 设置别名来实现此目的(默认情况下,postfix使用 /etc/aliases )。我们还可以为其他用户添加别名,例如我们也可以通过将以下内容添加到/etc/aliases 来将 root 的电子邮件重定向到 John :

# Person who should get root's mail
root:           john
# User aliases
jsmith:         john
j.smith:        john

如果在运行postfix后编辑别名文件以为用户设置新别名,则必须通过运行newaliases命令重建别名数据库。

启动服务器

我们现在准备启动新的电子邮件服务器。首先,我们需要告诉我们的系统使用 postfix 作为MTA而不是默认的 sendmail。为此,请运行 system-switch-mail 命令并选择 postfix作为MTA。这将安装后缀服务并将其设置为在运行级别3,4和5自动启动。接下来,我们需要将dovecot服务设置为也自动从运行级别3,4和5开始,并启动这两个服务:

chkconfig --level 345 dovecot on
/etc/init.d/dovecot start
/etc/init.d/postfix start

此时你应该启动并运行。您的电子邮件服务器在内部发送和接收电子邮件以及发送外部电子邮 要在您的域上接收外部电子邮件,您还需要在 DNS 中为您的域配置 MX 记录(理想情况下,还应通过您的ISP将IP地址映射到您的域来配置 PTR rDNS 条目)。不要忘记在Linux防火墙上打开任何所需的端口,具体取决于您运行的服务(SMTP 25; POP3 110; IMAP 143; IMAPS 993; POP3S 995),并为任何路由器上的端口启用端口转发。

如果对 postfix 配置文件 main.cf 进行任何更改,则可以重新启动 postfix 服务或运行 postfix reload 命令来更新更改。

总结

Postfix是一种功能强大且功能多样的邮件传输代理。在本文中,我们已经了解了如何使用postfix 和 dovecot为基于系统用户帐户的单个域实现基本电子邮件服务器。我们几乎没有涉及基于 postfix 的系统的真正功能,但希望能为新用户构建提供坚实的工作基础。

点赞
收藏
评论区
推荐文章
Stella981 Stella981
3年前
Linux中用postfix搭建邮件服务器实战详解
Linux中用postfix搭建邮件服务器实战详解postfix是WietseVenema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件。Postfix试图更快、更容易管理、更安全,同时还与sendmail保持足够的兼容性,因此它是免费的。postfix的产生是为了替代传统的sendmail。相较于sendmail,postfix
Wesley13 Wesley13
3年前
vertica 安装日记
如果Linux系统已经安装好后,并且文件系统为Ext4格式的(centos6默认ext4,centos默认为xfs,安装系统的时候可以修改,之后不能修改所以一定要在装系统时候修改为Ext4)才能继续以下步骤。1.手动配置静态IPvi/etc/sysconfig/networkscripts/ifcfg{相应的网络设备如:ent33}(Ip
Stella981 Stella981
3年前
MediaWiki 设置QQ邮箱SMTP(SSl方式)发送邮件
MediaWiki默认采用本机作为邮件发送服务器,而发出去的邮件很容易被接收方当成垃圾邮件或者直接被屏蔽掉,所以建议直接采用第三方smtp服务器,以腾讯企业邮箱为例:安装需要的库PHP7使用composer安装依赖库composerrequireupdatenodevpear/mailpear/net_smt
Stella981 Stella981
3年前
Jenkins 配置邮件通知步骤
Jenkins配置邮件通知前言可以在Jenkins中配置邮件通知,比如在构建失败时发送邮件通知项目组来及时修复问题。Jenkins邮件通知功能的插件主要包括:MailerPlugin(默认的发送邮件插件)EmailExtensionPlugin(功能更强大的发送邮件插件)建议同时安装这两个插件。下面来介绍如何在
Stella981 Stella981
3年前
Postfix邮件服务
DNS域名系统服务器IP与域名之间解析;提供分层的域名解析服务;bing伯克利加州大学应用最广的域名服务系统;bind主要分为主配置文件和域数据记录文件yum安装:yuminstallbindy配置NDS域名解析直接添加一下内容:root@mail~cat/e
Stella981 Stella981
3年前
Jenkins配置下拉菜单联动效果
  在使用Jenkins集成时,经常需要配置一些环境信息,由于测试、线上、预发布需要切换环境和域名,需要在Jenkins中配置下拉菜单联动效果。  首先选择参数化构建过程,然后首先配置环境,环境分为:测试环境、预发布环境、正式环境,选择的组件为ChoiceParameter,Name定义为environment,选项为test、pre、onli
Stella981 Stella981
3年前
C++ ORM ODB mysql 中文问题
系统必须统一字符编码,建议均为utf81) 在mysql的服务器配置 my.cnf 中的配置,必须把服务器的默认编码设置为 utf82)在创建表格的时候,必须指定表格的编码为utf8,(ODB自动生成的DDL语句,默认是UTF8),这点从    show create table table\_name可以得到确认。3)最关键的地方就是客户端
Wesley13 Wesley13
3年前
DHCP服务+PXE自动安装系统
DHCP服务PXE自动安装系统DHCP安装安装DHCP服务器yuminstalldhcpy安装完dhcp默认无法启动,需要编辑配置文件设置分配地址范围等相关信息,服务器自身IP地址要在某个分配的子网中。编辑配置文件默认配置文件中没有定义相关内容,需
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Stella981 Stella981
3年前
JOptionPane修改图标
1.在Linux平台下.JOptionPane会显示Java默认的图标,在window平台不显示图标,如何替换这个图标了?2JOptionPane.setIcon(Icon)修改的是内容区域的icon,而不是左上角的Icon.所以需要通过修改Jdialog/Frame的图标来达到修改默认图标的问题.3.代码:if(JOptio
Stella981 Stella981
3年前
Linux中Postfix邮件WebMail配置(七)
ExtmailExtmail是一个以perl语言编写,面向大容量/ISP级应用,免费的高性能Webmail软件,主要包括ExtMail、Extman两个部分的程序套件。ExtMail套件用于提供从浏览器中登录、使用邮件系统的Web操作界面,提供给普通邮件用户使用。而Extman套件用于提供从浏览器中管理邮件系统的Web操作界面,提供给邮件系统的