基本信息
win7 : 作为客户端,安装好foxmail;IP地址为172.16.1.1,网关为172.16.1.254;DNS为177.1.1.2和188.1.1.2;
Router:作为内网路由以及外网NAT(路由协议使用RIPv2)
ISP:依据拓扑配置路由和IP(路由协议使用RIPv2)
Server1:quagga路由(路由协议使用RIPv2)、DNS(s1na.com的master,i63.com的slave)、以及s1na.com的邮箱服务器
Server2:quagga路由(路由协议使用RIPv2)、DNS(s1na.com的slave,i63.com的master)、以及slave.com的邮箱服务器
Router和ISP路由配置
1.Router配置命令:
en conf t int e 0/1 no sh ip nat inside ip add 172.16.1.254 255.255.255.0 int e 0/0 no sh ip nat outside ip add 166.1.1.1 255.255.255.252 access-list 1 permit any ip nat inside source list 1 interface e0/0 overload router rip version 2 no auto-summary network 166.1.0.0 ! end wr !
2.ISP配置命令:
en conf t int e 0/0 no sh ip add 166.1.1.2 255.255.255.252 int e 0/2 no sh ip add 177.1.1.1 255.255.255.252 int e 0/3 no sh ip add 188.1.1.1 255.255.255.252 router rip version 2 no auto-summary network 0.0.0.0 ! end wr !
Win7客户端配置
win7客户端网络配置信息如下图.
Server1-quagga配置
1.安装quagga:
yum -y install quagga
2.将模板ripd.conf.sample从/usr/share/doc/quagga-0.99.22.4/复制到/etc/quagga/下,并重命令为ripd.conf.sample
cp -a /usr/share/doc/quagga-0.99.22.4/ripd.conf.sample /etc/quagga/ripd.conf
3.启动服务并加入开机启动
#启动ripd.service systemctl start zebra.service ripd.service #加入开机启动ripd.service systemctl enable zebra.service ripd.service
4.使用vtysh命令登入路由配置界面并配置rip路由.
en conf t router rip version 2 network 177.1.0.0/16 end wr !
5.使用sh ip route命令查看Server1服务器目前的路由表况.
6.Server1服务器防火墙开放UDP520端口(此端口用于RIP路由协议)
#添加永久开放udp520端口 firewall-cmd --zone=public --add-port=520/udp --permanent #重启防火墙 systemctl restart firewalld #查看开放端口 firewall-cmd --zone=public --list-ports
Server2-quagga配置
1.安装quagga:
yum -y install quagga
2.将模板ripd.conf.sample从/usr/share/doc/quagga-0.99.22.4/复制到/etc/quagga/下,并重命令为ripd.conf.sample
cp -a /usr/share/doc/quagga-0.99.22.4/ripd.conf.sample /etc/quagga/ripd.conf
3.启动服务并加入开机启动
#启动ripd.service systemctl start zebra.service ripd.service #加入开机启动ripd.service systemctl enable zebra.service ripd.service
4.使用vtysh命令登入路由配置界面并配置rip路由.
en conf t router rip version 2 network 188.1.0.0/16 end wr !
5.使用sh ip route命令查看Server1服务器目前的路由表况.
6.Server2服务器防火墙开放UDP520端口(此端口用于RIP路由协议)
#添加永久开放udp520端口 firewall-cmd --zone=public --add-port=520/udp --permanent #重启防火墙 systemctl restart firewalld #查看开放端口 firewall-cmd --zone=public --list-ports
Server1-DNS配置
1.安装BIND服务,键入下方命令安装.
yum -y install bind-chroot.x86_64
2.DNS采用的UDP协议,监听53号端口,进一步检验named工作是否正常:
iptables -L -n |grep 53
3.修改主配置文件。
#编辑named.conf配置文件 vim /etc/named.conf
4.修改区域配置文件
vim /etc/named.rfc1912.zones
//s1na.com的主 zone "s1na.com" IN { type master; file "s1na-zone"; allow-update { 188.1.1.2; }; }; //i63.com的备 zone "i63.com" IN { type slave; file "slaves/i63-zone"; masterfile-format text; masters { 188.1.1.2; }; };
5.复制正向解析模板
#进入配置文件目录 cd /var/named/ #复制一份正向解析的模板文件,-a为保持源文件属性 cp -a named.localhost s1na-zone
6.配置s1na.com正向解析.
vim /var/named/s1na-zone
$TTL 1D @ IN SOA s1na.com. root.s1na.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS ns.s1na.com. ns IN A 177.1.1.2 @ IN MX 10 mail mail IN A 177.1.1.2
7.防火墙永久开放dns服务。
firewall-cmd --add-service=dns --permanent systemctl restart firewalld firewall-cmd --list-services
8.重启named服务
systemctl restart named
9.检查配置文件是否生效
named-checkzone mail.s1na.com /var/named/s1na-zone
10.查看同步i63-zone信息。(需要Server2防火墙开放dns服务)
cat /var/named/slaves/i63-zone
Server2-DNS配置
1.安装BIND服务,键入下方命令安装.
yum -y install bind-chroot.x86_64
2.DNS采用的UDP协议,监听53号端口,进一步检验named工作是否正常:
iptables -L -n |grep 53
3.修改主配置文件。
#编辑named.conf配置文件 vim /etc/named.conf
4.修改区域配置文件
vim /etc/named.rfc1912.zones
//s1na.com的备 zone "s1na.com" IN { type slave; file "slaves/s1na-zone"; masterfile-format text; masters { 177.1.1.2; }; }; //i63.com的主 zone "i63.com" IN { type master; file "i63-zone"; allow-update { 177.1.1.2; }; };
5.复制正向解析模板
#进入配置文件目录 cd /var/named/ #复制一份正向解析的模板文件,-a为保持源文件属性 cp -a named.localhost i63-zone
6.配置i63.com正向解析.
vim /var/named/i63-zone
$TTL 1D @ IN SOA i63.com. root.i63.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS ns.i63.com. ns IN A 188.1.1.2 @ IN MX 10 mail mail IN A 188.1.1.2
7.防火墙永久开放dns服务。(引用Server1的注解图,请略.)
firewall-cmd --add-service=dns --permanent systemctl restart firewalld firewall-cmd --list-services
8.重启named服务
systemctl restart named
9.检查配置文件是否生效
named-checkzone mail.i63.com /var/named/i63-zone
10.查看同步s1na-zone信息。(需要Server1防火墙开放dns服务)
cat /var/named/slaves/s1na-zone
Server1-Postfix部署配置
1.安装postfix
yum -y install postfix
2.检查postfix配置文件路径
rpm -ql postfix|more
3.配置postfix主配置文件(对应关键字可以直接使用搜索找到对应地址)
(1)备份并打开编辑主配置文件
#进入配置目录 cd /etc/postfix/ #备份配置文件 cp main.cf main.cf.bak #打开编辑main.cf vim /etc/postfix/main.cf
(2)修改myhostname参数,即是邮件服务器的主机名称.
myhostname = mail.s1na.com
(3)修改mydomain参数,即是域名称.
mydomain = s1na.com
(4)修改myorigin参数,即是邮件地址,是我们的邮件地址@后面的内容
myorigin = $mydomain
(5)修改smtp监听端口
inet_interfaces = all #inet_interfaces = localhost
注解:inet-interfaces参数指定postfix系统监听的网络接口。Postfix预设只会监听来自于本机端的所传出的封包,必须使用上列设定,才可以传收所有来自于网路端的所有封包.
(6)修改inet_protocols
inet_protocols = ipv4
注解:修改Postix的通讯协定,目前网路的协定主流有IPv4与IPV6,在大部份的情况下,我们都是利用IPv4在通讯的,如果你的Mail Server没有需要使用到IP6,可以做以上的设定修改
(7)修改mydestination
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
注解:mydestination参数设定能够接收信件的主机名称,Postfix预设只能收ation到设定的Hostname与Domain Name以及本机端的信件,此步骤是再增加能收信件的网络名称。.
(8)设定信任用户端
mynetworks = 0.0.0.0/0
注解:mynetworks参数设定信任的用户端,当要寄信时,会参考此值,若非信任的用户,则不会帮你的信件转到其它的MTA主机上。"
(9)设定relay_domain转发邮件域名
relay_domains = $mydestination
注解:规范可以relay的MTA主机位址(收发Mail的程序一般统称为邮件用户代理MUA(Mail User Agent)),通常这个都直接设为mydestination.
(10)设定邮件别名的路径(默认已配置)
检查"alias_maps"设定是否为以下字串设定:
alias_maps = hash:/etc/aliases
(11)设定置顶邮件别名表资料库路径(默认已配置)
检查"alias_database"设定是否为以下字串设定:
alias_database = hash:/etc/aliases
(12)执行以下命令(保持默认则忽略此步)
注解:用于设定邮件主机使用权限与过滤机制及邮件别名.
postmap hash:/etc/postfix/access postalias hash:/etc/aliases
4.下方贴出主配置文件的主要配置(可直接copy)
#筛选出主要的配置信息命令 grep -vE "^#|^$" main.cf
#已筛选的主要配置信息 queue_directory = /var/spool/postfix command_directory = /usr/sbin daemon_directory = /usr/libexec/postfix data_directory = /var/lib/postfix mail_owner = postfix myhostname = mail.s1na.com mydomain = s1na.com myorigin = $mydomain inet_interfaces = all inet_protocols = ipv4 mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain relay_domains = $mydestination unknown_local_recipient_reject_code = 550 mynetworks = 0.0.0.0/0 alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases debug_peer_level = 2 debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5 sendmail_path = /usr/sbin/sendmail.postfix newaliases_path = /usr/bin/newaliases.postfix mailq_path = /usr/bin/mailq.postfix setgid_group = postdrop html_directory = no manpage_directory = /usr/share/man sample_directory = /usr/share/doc/postfix-2.10.1/samples readme_directory = /usr/share/doc/postfix-2.10.1/README_FILES
Server2-Postfix部署配置
1.安装postfix
yum -y install postfix
2.检查postfix配置文件路径
rpm -ql postfix|more
3.配置postfix主配置文件(对应关键字可以直接使用搜索找到对应地址)
(1)备份并打开编辑主配置文件
#进入配置目录 cd /etc/postfix/ #备份配置文件 cp main.cf main.cf.bak #打开编辑main.cf vim /etc/postfix/main.cf
(2)修改myhostname参数,即是邮件服务器的主机名称.
myhostname = mail.i63.com
(3)修改mydomain参数,即是域名称.
mydomain = i63.com
(4)修改myorigin参数,即是邮件地址,是我们的邮件地址@后面的内容
myorigin = $mydomain
(5)修改smtp监听端口
inet_interfaces = all #inet_interfaces = localhost
注解:inet-interfaces参数指定postix系统监听的网络接口。Postfix预设只会监听来自于本机端的所传出的封包,必须使用上列设定,才可以传收所有来自于网路端的所有封包.
(6)修改inet_protocols
inet_protocols = ipv4
注解:修改Postix的通讯协定,目前网路的协定主流有IPv4与IPV6,在大部份的情况下,我们都是利用IPv4在通讯的,如果你的Mail Server没有需要使用到IP6,可以做以上的设定修改
(7)修改mydestination
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
注解:mydestination参数设定能够接收信件的主机名称,Postfix预设只能收ation到设定的Hostname与Domain Name以及本机端的信件,此步骤是再增加能收信件的网络名称。.
(8)设定信任用户端
mynetworks = 0.0.0.0/0
注解:mynetworks参数设定信任的用户端,当要寄信时,会参考此值,若非信任的用户,则不会帮你的信件转到其它的MTA主机上。"
(9)设定relay_domain转发邮件域名
relay_domains = $mydestination
注解:规范可以relay的MTA主机位址(收发Mail的程序一般统称为邮件用户代理MUA(Mail User Agent)),通常这个都直接设为mydestination.
(10)设定邮件别名的路径(默认已配置)
检查"alias_maps"设定是否为以下字串设定:
alias_maps = hash:/etc/aliases
(11)设定置顶邮件别名表资料库路径(默认已配置)
检查"alias_database"设定是否为以下字串设定:
alias_database = hash:/etc/aliases
(12)执行以下命令(保持默认则忽略此步)
注解:用于设定邮件主机使用权限与过滤机制及邮件别名.
postmap hash:/etc/postfix/access postalias hash:/etc/aliases
4.下方贴出主配置文件的主要配置(可直接copy)
#筛选出主要的配置信息命令 grep -vE "^#|^$" main.cf
#已筛选的主要配置信息 queue_directory = /var/spool/postfix command_directory = /usr/sbin daemon_directory = /usr/libexec/postfix data_directory = /var/lib/postfix mail_owner = postfix myhostname = mail.i63.com mydomain = i63.com myorigin = $mydomain inet_interfaces = all inet_protocols = ipv4 mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain relay_domains = $mydestination unknown_local_recipient_reject_code = 550 mynetworks = 0.0.0.0/0 alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases debug_peer_level = 2 debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5 sendmail_path = /usr/sbin/sendmail.postfix newaliases_path = /usr/bin/newaliases.postfix mailq_path = /usr/bin/mailq.postfix setgid_group = postdrop html_directory = no manpage_directory = /usr/share/man sample_directory = /usr/share/doc/postfix-2.10.1/samples readme_directory = /usr/share/doc/postfix-2.10.1/README_FILES
Server1-Dovecot 部署配置
1.安装dovecot服务
yum install -y dovecot
2.修改dovecot主配置文件 /etc/dovecot/dovecot.conf
vim /etc/dovecot/dovecot.conf #配置信息 protocols = imap pop3 lmtp disable_plaintext_auth = no
注解:修改Dovecot服务程序支持的电子邮件协议并添加允许用户使用明文密码验证.
3.配置邮件格式与存储路径(/etc/dovecot/conf.d/10-mail.conf)
vim /etc/dovecot/conf.d/10-mail.conf
在Dovecot服务程序单独的子配置文件中,定义一个路径,用于指定要将收到的邮件存放到服务器本地的哪个位置。这个路径默认已经定义好了,我们只需要将该配置文件中第25行前面的井号(#)删除即可
4.将登入需要ssl认证关闭(/etc/dovecot/conf.d/10-ssl.conf)
vim /etc/dovecot/conf.d/10-ssl.conf
5.配置邮件存放目录(同时添加测试用户test1)
useradd test1 ;echo 123456|passwd --stdin test1 su - test1 mkdir -p /home/test1/mail/.imap/INBOX exit
6.防火墙开放pop3、imap、smtp服务
#添加永久开放pop3/imap/smtp服务 firewall-cmd --add-service=pop3 --permanent firewall-cmd --add-service=imap --permanent firewall-cmd --add-service=smtp --permanent #重启防火墙 systemctl restart firewalld #查看开放服务 firewall-cmd --list-services
Server2-Dovecot 部署配置
1.安装dovecot服务
yum install -y dovecot
2.修改dovecot主配置文件 /etc/dovecot/dovecot.conf
vim /etc/dovecot/dovecot.conf #配置信息 protocols = imap pop3 lmtp disable_plaintext_auth = no
注解:修改Dovecot服务程序支持的电子邮件协议并添加允许用户使用明文密码验证.
3.配置邮件格式与存储路径(/etc/dovecot/conf.d/10-mail.conf)
vim /etc/dovecot/conf.d/10-mail.conf
在Dovecot服务程序单独的子配置文件中,定义一个路径,用于指定要将收到的邮件存放到服务器本地的哪个位置。这个路径默认已经定义好了,我们只需要将该配置文件中第25行前面的井号(#)删除即可
4.将登入需要ssl认证关闭(/etc/dovecot/conf.d/10-ssl.conf)
vim /etc/dovecot/conf.d/10-ssl.conf
5.配置邮件存放目录(同时添加测试用户test2)
useradd test2 ;echo 123456|passwd --stdin test2 su - test2 mkdir -p /home/test2/mail/.imap/INBOX exit
6.防火墙开放pop3、imap、smtp服务
#添加永久开放pop3/imap/smtp服务 firewall-cmd --add-service=pop3 --permanent firewall-cmd --add-service=imap --permanent firewall-cmd --add-service=smtp --permanent #重启防火墙 systemctl restart firewalld #查看开放服务 firewall-cmd --list-services
两台Server最后配置
两台Server服务器如上Postfix和Dovecot配置完毕,同样需要配置Dovccot及启动saslauthd服务,方可进行邮件的收发!
systemctl restart postfix systemctl restart dovecot systemctl restart saslauthd
Foxmail客户端配置
1.远程工具连接win7客户端打开foxmail客户端,首次运行如下图选择“其他邮箱”。
2.先添加Server1服务器中test1用户,填写完点击创建
3.一般他会自动补齐我们的pop3等地址信息.无误点击创建.
4.基本上配置不出错已经是可以创建登录成功的!点击完成即可打开主界面.
5.接下来添加Server2服务器中test2用户,在主界面中选择"账号管理"
6.选择新建菜单.
7.选择"其他邮箱"
8.其他步骤通test1创建时一样.
9.直至完成后如下图.
10.foxmail主控台已经可以看到有两个邮箱账号.
客户端检验收发信件
1.test1发送测试邮件至test2@i63.com
2.在test2用户收取邮件
3.查看是否收到test1用户发送的邮件.
4.test2用户中,将刚才收到的test2用户发来的邮件回复给test1用户.
5.查看是否收到test2用户回复的邮件.
总结
至此,所有配置和检验过程均已完成,自己做实验整理笔记也花了不少时间,希望对大家有帮助.有不清楚的地方欢迎在评论区留言,也可以添加我QQ咨询.
版权声明:本文为原创文章,版权归 阁主 所有,欢迎分享本文,转载请保留出处!
免责申明:有些内容源于网络,没能联系到作者。如侵犯到你的权益请告知,我们会尽快删除相关内容。