本次实验环境是redhat 7.0系统
如上图所示
客户端使用outlook收发邮件
服务器端使用postfix向外发送邮件,使用dovecot接收邮件并转发改用户
1. 安装dns域名解析服务
1.1 配置服务器主机名称,需要保证服务器主机名称和发信域名保持一致
[root@localhost Desktop]# vim /etc/hostname
mail.wifiin.com
[root@localhost Desktop]# hostname
mail.wifiin.com
1.2 清空iptables防火墙的默认策略
[root@localhost Desktop]# iptables -F
[root@localhost Desktop]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]
1.3 配置dns服务
# 安装
[root@localhost Desktop]# yum install bind-chroot -y
# 修改配置
[root@localhost Desktop]# vim /etc/named.conf
options {
listen-on port 53 { any; }; 【改成any】
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { any; }; 【改成any】
# 将wifiin.com的zone信息添加到文件的末尾
[root@localhost Desktop]# vim /etc/named.rfc1912.zones
zone "wifiin.com" IN {
type master;
file "wifiin.com.zone";
allow-update { none; };
};
# 进入到named的区域配置文件目录/var/named
[root@localhost log]# cd /var/named/
[root@localhost named]# cp -a named.localhost wifiin.com.zone
[root@localhost named]# vim wifiin.com.zone
$TTL 1D
@ IN SOA wifiin.com. root.wifiin.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS ns.wifiin.com.
ns IN A 192.168.137.10
@ IN MX 10 mail.wifiin.com.
mail IN A 192.168.137.10
1.4 启动dns服务
# 启动服务并设置开机自启动
[root@localhost named]# systemctl restart named
[root@localhost named]# systemctl enable named
ln -s '/usr/lib/systemd/system/named.service' '/etc/systemd/system/multi-user.target.wants/named.service'
# 将服务器的dns修改为本机的ip
[root@localhost named]# vim /etc/resolv.conf
nameserver 192.168.137.10
2. 配置postfix服务
2.1 安装
[root@localhost ~]# yum install postfix -y
2.2 修改配置文件
主配置文件是/etc/postfix/main.cf,需要修改一下几个参数:
# 修改myhostname的变量,用户保存服务器的主机名称
myhostname = mail.wifiin.com
# 修改mydomain的变量,用来保存邮件域的名称
mydomain = wifiin.com
# 修改myorigin的变量,用来保存发出邮件的域名称,调用mydomain的变量即可
myorigin = $mydomain
# 修改服务监听地址,哪些IP地址对外提供电子邮件服务
inet_interfaces = all
# 修改可接受邮件的主机名或域名列表
mydestination = $myhostname, $mydomain
2.3 创建电子邮件系统的登录用户,此用户就是服务器本地系统的用户
[root@localhost ~]# useradd developer
[root@localhost ~]# echo "redhat" |passwd --stdin developer
Changing password for user developer.
passwd: all authentication tokens updated successfully.
[root@localhost ~]# systemctl restart postfix
[root@localhost ~]# systemctl enable postfix
3 配置dovecot服务
3.1 安装
[root@localhost ~]# yum install dovecot -y
3.2 修改配置
主配置文件/etc/dovecot/dovecot.conf,修改一下参数:
# 修改支持的电子邮件协议
protocols = imap pop3 lmtp
# 允许用户使用明文进行密码验证,因为我的实验环境没有证书。需要自己写入配置文件中
disable_plaintext_auth = no
# 设置允许登录的网段
login_trusted_networks = 192.168.137.0/24
配置文件/etc/dovecot/conf.d/10-mail.conf,修改以下参数:
# 配置邮件格式与存储路径
mail_location = mbox:~/mail:INBOX=/var/mail/%u
# 切换到developer用户,在家目录中创建保存邮件的目录
[root@localhost ~]# su - developer
[developer@mail ~]$ mkdir -p mail/.imap/INBOX
[developer@mail ~]$ exit
# 启动服务
[root@localhost ~]# systemctl restart dovecot
[root@localhost ~]# systemctl enable dovecot
ln -s '/usr/lib/systemd/system/dovecot.service' '/etc/systemd/system/multi-user.target.wants/dovecot.service'
服务器端配置完成
4. 测试
- windows测试机必须和服务器端在同一个网段内
- windows测试机必须将dns修改为服务器端的dns地址
- 使用windows的outlook登录developer@wifiin.com邮箱,给root@wifiin.com用户发邮件,登录到服务器上查看root用户是否能收到developer用户发送的邮件
- 在服务器上使用root用户给developer@wifin.com发送邮件,查看在windows的outlook上developer用户是否能够收到root发送的邮件
developer用户发送的邮件,如下图:
developer用户接受的邮件,如下图:
原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/183259.html