如何在 Ubuntu 环境下搭建邮件服务器
答案:2 悬赏:30 手机版
解决时间 2021-02-07 23:42
- 提问者网友:记得曾经
- 2021-02-07 11:21
如何在 Ubuntu 环境下搭建邮件服务器
最佳答案
- 五星知识达人网友:迟山
- 2021-02-07 12:00
1.先决条件
每个域必须有一个DNS服务器。建议不要使用Live域用于测试目的。在本教程中,将在实验室环境中使用测试域example.tst。在这个假设域名的DNS服务器应该在至少以下记录。
example.tst的forward zone配置:
IN MX 10 mail.example.tst.
mail.example.tst. IN A 192.168.10.1
example.tst的Reverse zone配置:
192.168.10.1 IN PTR mail.example.tst.
在配置邮件服务器的过程中,这些记录可以根据系统的要求进行修改。
2.设置主机名
首先,必须在/etc/hostname和/etc/hosts文件中指定邮件服务器的主机名。前者应仅包含主机名。
root@mail:~# vim /etc/hostname
mail
root@mail:~# vim /etc/hosts
## IP Fully Qualified Domain Name Hostname ##
192.168.10.1 mail.example.tst mail
增加用户
每一个Linux用户,在默认情况下,系统会为其自动创建一个邮箱。这些用户和邮箱将被用作电子邮件帐户和它们各自的邮箱。创建一个用户是很容易的。
root@mail:~# adduser fourbyte
安装和配置SMTP
服务: postfix
配置文件路径 /etc/postfix/
执行脚本 /etc/init.d/postfix
日志文件 /var/log/mail.log
端口 TCP/25
SMTP:安装postfix
postfix是广泛使用的SMTP服务器之一,因为它是稳定的、轻量级的、可扩展的、高度可定制的。安装postfix可以使用apt-get的完成。
root@mail:~# apt-get install postfix
在安装过程中,需要指定电子邮件服务器和域名的类型。
由于此邮件服务器就会直接向目的地发送电子邮件,我们选择Internet Site。
邮件服务器的域名也需要配置,这可以从确保该邮件服务器发送的所有邮件都有@ example.tst作为发件人域。
postfix的配置文件存储在/etc/postfix目录。下面的配置文件是非常重要的。他们中的一些可能不存在,因此需要手动创建。
transport:主要用于定义邮件如何被路由到特定的目标域。绕过DNS查询可以是一个很好的例子。在这种情况下,人们可以发送到域XYZ.com的电子邮件直接通过IP地址XYYX不考虑任何DNS查询的结果。
access:可用于安全目的,如阻止发件人/收件人和他们的域名。
aliases:用于定义用户别名。例如,发送到userA的邮件可以由userB和userC接收。
main.cf:是postfix的配置文件。
SMTP:准备配置文件
差不多可以准备配置文件了。transport与aliases配置文件没有默认提供,需要手动创建。
root@mail:~# cd /etc/postfix
root@mail:/etc/postfix# touch transport aliases
main.cf
首先需要备份main.cf然后再进行修改。根据下面的配置添加或修改配置文件。有关参数的更多详细信息,请参阅官方README和配置手册。
root@mail:/etc/postfix# vim main.cf
## the name of the server ##
myhostname = mail.example.tst
## alias definitions ##
alias_maps = hash:/etc/postfix/aliases
alias_database = hash:/etc/postfix/aliases
## transport definition ##
transport_maps = hash:/etc/postfix/transport
## myorigin defines the domain name for emails originated from this server. In this case, all outgoing mail should have '@example.tst' as sender domain ##
myorigin = example.tst
## mydestination parameter specifies what domains this machine will deliver locally, instead of forwarding to another machine. ##
mydestination = mail.example.tst, localhost.example.tst, localhost, hash:/etc/postfix/transport
## the smarthost address. Not used in this tutorial and will be covered in the future##
relayhost =
## the trusted sender networks. postfix will not forward mails originated from other subnets ##
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 192.168.10.0/24
## mailbox size in bytes. 0 denotes no limit ##
mailbox_size_limit = 0
## postfix will listen on all available interfaces i.e. eth0, eth1, eth2 and so on ##
inet_interfaces = all
transport
邮件域example.tst被定义为在本地传递不需要任何DNS查询。
root@mail:/etc/postfix# vim transport
example.tst local:
.example.tst local:
root@mail:/etc/postfix# postmap transport
aliases
假设所有发送到userA的所有电子邮件可以由userB接收,别名文件需要按如下所述进行修改。
每个域必须有一个DNS服务器。建议不要使用Live域用于测试目的。在本教程中,将在实验室环境中使用测试域example.tst。在这个假设域名的DNS服务器应该在至少以下记录。
example.tst的forward zone配置:
IN MX 10 mail.example.tst.
mail.example.tst. IN A 192.168.10.1
example.tst的Reverse zone配置:
192.168.10.1 IN PTR mail.example.tst.
在配置邮件服务器的过程中,这些记录可以根据系统的要求进行修改。
2.设置主机名
首先,必须在/etc/hostname和/etc/hosts文件中指定邮件服务器的主机名。前者应仅包含主机名。
root@mail:~# vim /etc/hostname
root@mail:~# vim /etc/hosts
## IP Fully Qualified Domain Name Hostname ##
192.168.10.1 mail.example.tst mail
增加用户
每一个Linux用户,在默认情况下,系统会为其自动创建一个邮箱。这些用户和邮箱将被用作电子邮件帐户和它们各自的邮箱。创建一个用户是很容易的。
root@mail:~# adduser fourbyte
安装和配置SMTP
服务: postfix
配置文件路径 /etc/postfix/
执行脚本 /etc/init.d/postfix
日志文件 /var/log/mail.log
端口 TCP/25
SMTP:安装postfix
postfix是广泛使用的SMTP服务器之一,因为它是稳定的、轻量级的、可扩展的、高度可定制的。安装postfix可以使用apt-get的完成。
root@mail:~# apt-get install postfix
在安装过程中,需要指定电子邮件服务器和域名的类型。
由于此邮件服务器就会直接向目的地发送电子邮件,我们选择Internet Site。
邮件服务器的域名也需要配置,这可以从确保该邮件服务器发送的所有邮件都有@ example.tst作为发件人域。
postfix的配置文件存储在/etc/postfix目录。下面的配置文件是非常重要的。他们中的一些可能不存在,因此需要手动创建。
transport:主要用于定义邮件如何被路由到特定的目标域。绕过DNS查询可以是一个很好的例子。在这种情况下,人们可以发送到域XYZ.com的电子邮件直接通过IP地址XYYX不考虑任何DNS查询的结果。
access:可用于安全目的,如阻止发件人/收件人和他们的域名。
aliases:用于定义用户别名。例如,发送到userA的邮件可以由userB和userC接收。
main.cf:是postfix的配置文件。
SMTP:准备配置文件
差不多可以准备配置文件了。transport与aliases配置文件没有默认提供,需要手动创建。
root@mail:~# cd /etc/postfix
root@mail:/etc/postfix# touch transport aliases
main.cf
首先需要备份main.cf然后再进行修改。根据下面的配置添加或修改配置文件。有关参数的更多详细信息,请参阅官方README和配置手册。
root@mail:/etc/postfix# vim main.cf
## the name of the server ##
myhostname = mail.example.tst
## alias definitions ##
alias_maps = hash:/etc/postfix/aliases
alias_database = hash:/etc/postfix/aliases
## transport definition ##
transport_maps = hash:/etc/postfix/transport
## myorigin defines the domain name for emails originated from this server. In this case, all outgoing mail should have '@example.tst' as sender domain ##
myorigin = example.tst
## mydestination parameter specifies what domains this machine will deliver locally, instead of forwarding to another machine. ##
mydestination = mail.example.tst, localhost.example.tst, localhost, hash:/etc/postfix/transport
## the smarthost address. Not used in this tutorial and will be covered in the future##
relayhost =
## the trusted sender networks. postfix will not forward mails originated from other subnets ##
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 192.168.10.0/24
## mailbox size in bytes. 0 denotes no limit ##
mailbox_size_limit = 0
## postfix will listen on all available interfaces i.e. eth0, eth1, eth2 and so on ##
inet_interfaces = all
transport
邮件域example.tst被定义为在本地传递不需要任何DNS查询。
root@mail:/etc/postfix# vim transport
example.tst local:
.example.tst local:
root@mail:/etc/postfix# postmap transport
aliases
假设所有发送到userA的所有电子邮件可以由userB接收,别名文件需要按如下所述进行修改。
全部回答
- 1楼网友:想偏头吻你
- 2021-02-07 13:22
还是用现成的云邮箱安全些。
阿里云邮箱是基于庞大的服务器集群构建的企业邮箱平台,在全球多个节点部署了多个中转集群,保证邮件在全球收发无阻。
云企业邮箱 (无限容量,5个起售 ) :80元/年/个 (例如:5个账号就是400元/年)
可以加咱们,现在在线。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯