Postfix 可以很方便的在一台机器上部署 smtp 服务,在 centos 上来说的话可以使用:
sudo yum install postfix sudo systemctl enable postfix sudo systemctl start postfix
可以通过访问 cd /etc/postfix/ 查看配置下面有些什么东西:
[root@iZ2ze9mbirr18cl7fb5ewtZ postfix]# ls access canonical generic header_checks main.cf master.cf relocated transport virtual
主要需要去配置一下 main.cf 我们需要关注:
# The myhostname parameter specifies the internet hostname of this # mail system. The default is to use the fully-qualified domain name # from gethostname(). $myhostname is used as a default value for many # other configuration parameters. # myhostname = mail.hundun.cn #myhostname = virtual.domain.tld
这里配置 hostname 需要配下另外还需要配置一下主域名:
# The mydomain parameter specifies the local internet domain name. # The default is to use $myhostname minus the first component. # $mydomain is used as a default value for many other configuration # parameters. # #mydomain = domain.tld mydomain = hundun.cn
将接收的网络邮件改为
# The inet_interfaces parameter specifies the network interface # addresses that this mail system receives mail on. By default, # the software claims all active interfaces on the machine. The # parameter also controls delivery of mail to user@[ip.address]. # # See also the proxy_interfaces parameter, for network addresses that # are forwarded to us via a proxy or network address translator. # # Note: you need to stop/start Postfix when this parameter changes. # inet_interfaces = all
之后就可以了, start restart 一把。 我们在 cenos7 下可以使用 systemctl status postfix 查看 postfix 目前的情况。
如果我们是将这个服务部署在 aliyun 上的话就会面临另外一个问题,就是 aliyun 目前默认会封锁 smtp 的 25 号邮件端口,这样的话及时我们配置好了
也无法让邮件发送到公网,所以我们需要去 aliyun 申请域名下的 25 号端口解封。申请好就可以了。
另外我们可以去 domain server 上配置 dns mx 解析,让我们的邮件服务器地址能被 dns 正确的解析到正确的域下面,这样会减少邮件进垃圾邮件的风险。