邮件
一、先做DNS解析
(1)第一台主机
1.hostnamectl set-hostname westos.mail.com
systemctl stop firewalld
配置ip为172.25.254.109
yum install bind -y ##下载解析服务器
systemctl start named ##开启解析服务
2.vim /etc/named.conf
注释掉11、12、17行
32行:dnssec-validation no;
:wq
vim /etc/named.rfc1912.zones
zone"westos.com" IN {
type master;
file "westos.com.zone"; ##域名westos.com的解析文件为westos.com.zone
allow-update { none; };
};
zone"qq.com" IN {
type master;
file "qq.com.zone"; ##域名qq.com的解析文件为qq.com.zone
allow-update { none; };
};
3.cd /var/named
cp -p named.localhost westos.com.zone
vim westos.com.zone
cp -p westos.com.zone qq.com.zone
vim qq.com.zone
4.systemctl restart named
5.vim /etc/resolv.conf
编辑内容:nameserver 172.25.254.109
6.可以使用dig命令进行检测:dig -t mx westos.com
dig -t mx qq.com
(2)另外一台主机
1.systemctl stop firewalld
配置IP为172.25.254.209
systemctl start network
hostnamectl set-hostname qq.mail.com
2.vim /etc/resolv.conf
编辑:nameserver 172.25.254.109
二、postfix
(1)postfix提供smtp协议用来投递邮件,其默认端口为25
netstat -antlpe | grep master ##查看25端口
(2)修改配置文件
第一台主机--westos.mail.com
1.vim /etc/postfix/main.cf
76myhostname = westos-mail.westos.com ##Postfix服务邮件主机的主机名
83mydomain = westos.com ##域名为westos.com,Postifx会自动删除名称第一部分,将剩余部分作为域名
99myorigin = $mydomain ##发送的邮件结尾是westos.com
116inet_interfaces = all ##开放端口
164mydestination = $myhostname, $mydomain, localhost,westos.com ##以这些内容结尾的邮件该主机接收
2.systemctl restart postfix ##重启服务
第二台主机--qq.mail.com
1.vim /etc/postfix/main.cf
76myhostname = qq-mail.qq.com ##主机名
83mydomain = qq.com ##域名为qq.com
99myorigin = $mydomain ##发送的邮件结尾是qq.com
116inet_interfaces = all ##开放所有的网络接口
164mydestination = $myhostname, $mydomain, localhost,qq.com ##以这些内容结尾的邮件该主机接收
2.systemctl restart postfix ##重启服务
(3)测试
第一台主机端--westos.mail.com
1.mail root@qq.com ##发送邮件给域名为qq.com的主机
Subject: ##输入主机
##写内容
. ##发送
postsuper -d ##删除邮件队列
2.mailq ##查看邮件队列,查看是否成功发送
postqueue -f ##重新处理邮件队列
postsuper -d 队列ID ##删除队列中和指定邮件
接受端使用命令mail查看是收到邮件
三、用户别名
1.vim /etc/aliases
在最后编辑内容如下:
别名: 用户
如: admin: root
2.postalias /etc/aliases ##使文件生效
3.测试:在另一台主机可使用命令如下
mail 别名@qq.com
在接受端使用命令mail查看
四、邮件群发
在qq.com主机端做如下1、2、3操作
1.vim /etc/aliases
在最后编辑内容如下:
别名: :include:filename ##文件中的用户均使用这一别名
如: moreuser: :include:/etc/postfix/fmorefile ##以绝对路径来指定路径
2.vim /etc/postfix/morefile ##编辑群发的用户
用户名
student
root
:wq
3.postalias /etc/aliases ##使文件生效
4.测试
在westos.com主机端使用如下命令测试:
mail moreuser@qq.com
在qq.com主机端使用如下命令查看:
mail ##查看root用户是否收到邮件
mail -u 用户名 ##查看该用户是否收到邮件
mail -u student ##查看student用户是否收到邮件
五、邮件客户端的访问控制
<1>在未限制客户端的访问控制前,其客户端访问效果如下:
1.yum install telnet -y
2.telnet 172.25.254.109 25 ##远程访问
Trying172.25.254.109...
Connectedto 172.25.254.109.
Escapecharacter is '^]'.
220westos.mail.com ESMTP Postfix ##登录信息
mailfrom:root@westos.com ##root用户从westos.com域发送邮件
2502.1.0 Ok
rcptto :root@qq.com ##发送邮件至qq.com域的root
2502.1.5 Ok
data ##开始输入邮件内容
354End data with <CR><LF>.<CR><LF>
文件内容
. ##发送邮件
2502.0.0 Ok: queued as 74B8AEAC27 ##发送成功
quit ##结束远程访问
在域名为qq.com的主机使用mail命令查看是否接收到邮件
<2>限制客户端
(1)在客户端(主机ip--172.25.254.90)
yum install telnet -y
(2)在mta上,使用以下命令,即可限制客户端(举例选择在westos.com主机进行实验)
1.postconf -d | grep client ##查看访问限制命令
postconf -e "smtpd_client_restrictions = check_client_access hash:/etc/postfix/access"
###限制hash加密的/etc/postfix/access文件中的客户端访问
2.vim /etc/postfix/access ###编辑限制客户端名单
格式: IP REJECT
如:172.25.254.90 REJECT ###限制172.25.254.90这台主机访问,注意编辑时不能多加空格
3.postmap /etc/postfix/access ##对文件加密生成加密文件access.db,为mta提供限制名单
4.systemctl restart postfix ##重启postfix