实验要求
配置一台基于sendmail+dovecot的电子邮件服务器,并通过outlook或其他Email客户端工具完成收发电子邮件。要求如下:
1、 sendmail只为192.168.30.0/24的子网提供邮件转发功能(XX为学号后两位);
2、 允许用户teacher用户有多个电子邮件地址,比如teacher@linuxstudy.com、qz@linuxstudy.com;
3、 设置sendmail可以转发来自126.com域的邮件。
实验操作过程
配置网络为NAT模式,并且在NAT设置中配置自己的IP地址
(1)配置centsOS的静态IP 地址
bootproto = static 设置IP为静态
onboot = yes 自动打开
设置网关和DNS(图中最后4行)【可以不用添加】
(2)重启网络
ping网络(以百度为例)看是否成功
(3)关闭防火墙,方便后续实验
(4)下载包
使用命令yum -y install vim net-tools telnet下载需要的包
使用命令yum -y install sendmail* m4下载需要的包
yum -y install dovecot安装dovecot
(5)启用sendmail服务
alternatives -- config mta 选择启用sendmail.sendmail
(6)禁用系统自带的邮件服务器postfix
(7)启用dovecot
(8)修改配置邮件服务器文件sendmail.mc
使用命令 gedit /etc/mail/sendmail.mc
1、将IP地址转变为虚拟机的IP地址【192.168.30.21】
2、修改后续我们要使用的域名地址
3、修改sendmail配置文件 /etc/mail/sendmail.mc 后,使用以下命令生成sendmail.cf文件
命令m4 /etc/mail/sendmail.mc > /etc/mail/mail.cf
(9)修改邮件的中继
【要求】
1、sendmail只为192.168.30.0/24的子网提供邮件转发功能
2、sendmail可以转发来自126.com域的邮件
加入想要添加的邮件的域名
(9)配置local-host-names文件
形成可接受邮件的域名列表
(10)进入host文件修改host文件
给服务器的IP地址配置域名对应的域名
(11)设置群发别名
【要求】
允许用户teacher用户有多个电子邮件地址,比如teacher@linuxstudy.com,qz@linuxstudy.com;在这里:qz是teacher用户的别名
test是个用户组,包括stu和teacher
(11)使设置的群发名称生效
(12)设置密码
用户设置,添加一个用户组test,然后添加用户stu和teacher。
添加完成之后修改两个用户的密码
(13)使用telnet工具进行邮件测试
[root@centos7 ~]# telnet 192.168.30.21 25
Trying 192.168.30.21...
Connected to 192.168.30.21.
Escape character is 'A
220 centos7. localdomain ESMTP Sendmail 8.14.7/8.14.7; Tue, 31 0ct 2023 20: 58: 30+0800
helo mail.linuxstudy.com250 centos7.localdomain Hello base [ 192.168.30.21], pleased to meet youmail
from:"test mail"root@linuxstudy.com
250 2.1.0 "test mail"root@linuxstudy.com...Sender ok
rcpt to: stu@linuxstudy.com250 2.1.5 stu@linuxstudy.comRecipient ok
data
354 Enter mail, end with "." on a line by itself
this is a test email to stu from root.
250 2.0.0 39VCWU09013079 Message accepted for deliveryquit
221 2.0.0 centos7.localdomain closing connectionConnection closed by foreign
(13)使用mailq检查
检查是否成功看待发送队列里面的total request是否为0,为0就是成功
(14)进入dovecot文件进行配置
1、添加可信任的子网网段
2、去掉注释符号,修改端口协议
3、修改存储运行数据的文件地址
(15)配置mail.conf中的文件
1、使用命令 /etc/dovecot/conf.d/10-mail.conf
2、让默认的设置邮件收受位置生效以用户名作为邮箱
3、修改权限,0600代表有读写权限无执行权限
4、重启dovecot
(16)客户端配置Outlook
在windows7下安装Microsoft Outlook
配置我们之前创建好的teacher和stu两个的账户
邮件发送测试,两者互相发送邮件,看是否传输成功
其他的一些知识/指令
(1)Sendmail服务器的配置文件主要在目录/etc/mail下
- /etc/mail/sendmail.mc和/etc/mail/sendmail.cf
- /etc/aliases和/etc/aliases.db
- /etc/mail/access和/etc/mail/access.db
- /etc/mail/local-host-name
(2)配置Sendmail服务
1.修改hostname(以为study.com域创建邮件服务为例)
hostnamectl set-hostname mail.study.com
reboot
2.➢ 修改hosts文件
gedit /etc/hosts
添加解析记录
192.168.20.130 mail.study.com study.com
3.➢ 修改local-host-names文件添加域名和主机名
/etc/mail/local-host-names
4.➢gedit /etc/hosts 添加解析记录
192.168.20.130 mail.study.com study.com
5.➢ 修改local-host-names文件添加域名和主机名
/etc/mail/local-host-names
(3)配置dovecot(好像没用过)
➢ 修改邮箱文件/etc/dovecot/conf.d/10-mail.conf的mail_localtion为 如下: mail_location = mbox:/var/mail:INBOX=/var/mail/%u
➢ 修改认证文件/etc/dovecot/conf.d/10-auth.conf内容如下: disable_plaintext_auth = no
➢ 修改加密文件/etc/dovecot/conf.d/10-ssl.conf ssl = no ➢
开发防火墙端口 firewall-cmd --add-port=25/tcp firewall-cmd --add-port=110/tcp 或者systemctl stop firewalld