您现在的位置是:首页 >其他 >使用CentOS 7配置邮件服务-第四篇网站首页其他
使用CentOS 7配置邮件服务-第四篇
使用CentOS 7配置邮件服务-第四篇
在上一章我们配置主和从服务器的DNS域名解析,这一章我们配置使用CentOS 7配置邮件服务
要求:
1、两台邮件服务器IP地址分别为192.168.1.学号及192.168.0.199
2、 两台邮件服务器域名为学生姓名。例如mail.zhangsan.com 及mail.zs.com。
3、在DNS服务器配置两台服务器的域名。
4、配置完成Postfix服务及Dovecot服务。
5、实现两台邮件服务器使用sendmail命令互相发送邮件。
6、使用其他虚拟机或windows主机通过telnet邮件服务器的25 端口及110端口,完成收发邮件。
部分配置是基于上一篇配置DNS服务中
一、配置主服务器的DNS域名解析
因为我们所需求的ip网段不一样,一个是1,一个是0。
并且要设置不一样的DNS域名我们需要再添加配置一遍配置区域配置文件和数据配置文件
注意:
192.168.1.7是主机ip
192.168.0.199和192.168.1.199是从机要用到的ip,因为上一个实验要求用1.199这个实验用0.199我懒得换了。
主服务器的域名:
mail.linux-gjy.com
从服务器的域名:
mail.linux-gjy666.com
里面主从服务器其实没有什么区别的,邮件服务器没有主从之分,我为了方便写区分一下,这里主服务器就是主DNS服务器,从服务器是从DNS服务器。
在实现实验4之前要保证实验3的dns服务器能够使用。
(1)配置区域配置文件
打开区域配置文件
vim /etc/named.rfc1912.zones
可以将下面的参数添加的文件下面
zone"linux-gjy666.com" IN{
type master;
file "linux-gjy666.com.zone";
allow-update { 192.168.0.199; };
};
zone "0.168.192.in-addr.arpa" IN{
type master;
file "192.168.0.arpa";
allow-update { 192.168.0.199; };
};
如图1.1所示
图1.1
(2)数据配置文件
正向解析
1.从/var/named复制一份之前的模板
cp -p /var/named/linux-gjy.com.zone /var/named/linux-gjy666.com.zone
注意复制的文件名linux-gjy.com.zone与图1.1的file"xxx"是一致的。
然后打开配置文件
vim /var/named/linux-gjy666.com.zone
更改配置文件如下
$TTL 1D
@ IN SOA linux-gjy666 root.linux-gjy666.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.linux-gjy666.com.
dns IN A 192.168.0.199
@ IN MX 10 mail.linux-gjy666.com.
mail IN A 192.168.0.199
保存
反向解析
1.从/var/named复制一份之前的模板
cp -p /var/named/192.168.1.arpa /var/named/192.168.0.arpa
注意复制的文件名linux-gjy.com.zone与图1.1的file"xxx"是一致的。
然后打开配置文件
vim /var/named/192.168.0.arpa
更改配置文件如下
$TTL 1D
@ IN SOA linux-gjy666.com. root.linux-gjy666.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.linux-gjy666.com.
dns A 192.168.0.199
199 PTR dns.linux-gjy666.com.
199 PTR mail.linux-gjy666.com.
保存
重启BINDC
systemctl restart named
主机测试
反向解析测试
nslookup 192.168.0.199
如下图所示就成功了
正向解析测试
nslookup mail.linux-gjy666.com
如下图所示就成功了
二、配置从服务器的DNS域名解析
(1)配置区域配置文件
也是接着上从配置DNS那里添加下面文件
打开区域配置文件
vim /etc/named.rfc1912.zones
可以将下面的参数添加的文件下面
zone "linux-gjy666.com" IN{
type slave;
masters {192.168.1.7;};
file "slaves/linux-gjy666.com.zone";
};
zone "0.168.192.in-addr.arpa" IN{
type slave;
masters {192.168.1.7;};
file "slaves/192.168.0.arpa";
};
如图所示
重启BINDC查看有误报错
systemctl restart named
(2)配置从服务器ip
增加从服务器的ip192.168.0.199 DNS也是一样的
使用nmtui
命令
重启网关就可以了,之前我的网关从服务器改名与主服务器不一样了为ens33
重启命令
nmcli co down ens33;nmcli co up ens33;
重启BINDC
systemctl restart named
测试
查看/var/named/slaves/
ll /var/named/slaves/
目录下文件是否有如下目录
正向解析测试
nslookup mail.linux-gjy666.com
如下图所示就成功了
反向解析测试
nslookup 192.168.0.199
如下图所示就成功了
三、主从服务器配置
接下来这一章两个配置除了域名不一样其他都是一样的设置
第 1步:配置主机名。
配置服务器主机名称,需要保证服务器主机名称与发信域名保持一致。
打开文件
vim /etc/hostname
设置域名
主服务器的域名
mail.linux-gjy.com
从服务器的域名
mail.linux-gjy666.com
重启
reboot
验证
hostname
主DNS服务器主机名称
从DNS服务器主机名称
查看是否成功
cat /etc/resolv.conf
从服务器,主服务器一样的
第 2步:清空防火墙。
清空 iptables 防火墙默认策略,并保存策略状态,避免因防火墙中默认存在的策略阻止了客户端 DNS 解析城名及收发邮件。
iptables -F
service iptables save
之后重启BIND服务
systemctl restart named
第3步:配置Postfix
(1)关闭防火墙、下载Postfix
rpm -qa postfix //查看版本
yum install postfix //下载Postfix
systemctl disable iptables //关闭iptables 防火墙
(2)配置 Postfix 服务程序
在 Postfix 服务程序的主配置文件中,总计需要修改 5 处
打开配置文件
vim /etc/postfix/main.cf
备注:输入:set nu可以查看行数
1.首先是在第 76 行定义一个名为 myhostname 的变量,用来保存服务器的主机名称。请记住这个变量的名称,下边的参数需要调用它,注意去掉前面的注释符号井号“#”,如图所示
2.在第 83 行定义一个名为 mydomain 的变量,用来保存邮件域的名称,如图所示
3.在第 99 行调用前面的 mydomain 变量,用来定义发出邮件的域。调用变量的好处是避免重复写入信息,以及便于日后统一修改,如图所示
4 .修改是在第 114 行定义网卡监听地址。可以指定要使用服务器的哪些 IP 地址对外提供电子邮件服务;也可以干脆写成 all,代表所有 IP 地址都能提供电子邮件服务,直接注释114行“#”,如图所示
5.修改是在第 165 行定义可接收邮件的主机名或域名列表。这里可以直接调用前面定义好的 myhostname 和 mydomain 变量(如果不想调用变量,也可以直接调用变量中的值),如图所示
重启配置妥当的 Postfix 服务程序,并将其添加到开机启动项中即可。
systemctl restart postfix
systemctl enable postfix
第4步:配置Dovecot 服务
POP/IMAP是MUA 从邮件服务器中读取邮件时使用的协议。
(1)、安装 Dovecot 服务程序软件包。
yum install -y dovecot
(2)、配置部署 Dovecot 服务程序。
打开配置文件
vim /etc/dovecot/dovecot.conf
该参数来允许用户的明文登录
disable_plaintext_auth = no
如图所示
(3)、配置邮件格式与存储路径
打开配置文件
vim /etc/dovecot/conf.d/10-mail.conf
在 Dovecot 服务程序单独的子配置文件中,定义一个路径,用于指定要将收到的邮件存放到服务器本地的哪个位置。这个路径默认已经定义好了,只需要将该配置文件中第 25 行前面的井号( #)删除即可。
u是用户名,可以在/var/mail/%u查看邮件信息
五、创建用户
这个用于邮件接收发送,因为我想辨别度高一点就加用户了,如果用自己就跳过这一步看下一步
1.主服务器创建用户
useradd masters //创建用户
passwd masters //更改用户密码
从服务器创建用户
useradd slaves //创建用户
passwd slaves //更改用户密码
2.创建文件夹
sudo - masters //进入主服务器用户
mkdir -p mail/.imap/INBOX //创建文件夹
exit //退出
从服务器一样的就换一个用户名
3.重启配置妥当的 dovecot服务程序,并将其添加到开机启动项中即可。
systemctl restart dovecot
systemctl enable dovecot
六、sendmail验证
centos下可以安装命令:
yum -y install sendmail
安装完后启动sendmail命令
service sendmail start
1.先关闭防火墙,SELinux设置并重启DNS服务
DNS域名解析不了的一半原因是这些
systemctl stop firewalld
setenforce 0
systemctl restart named
systemctl restart dovecot
systemctl restart postfix
2.主DNS服务器向从DNS服务器发送邮件
其中master代表用户xxx发送,slaves为用户xxx接收 @linux-gjy.com代表mail域名
sendmail -f masters slaves@linux-gjy666.com
下面是邮件内容,结束是在最后一行输入.
ws-masters
666
.
在从DNS服务器查看邮件
cat /var/mail/slaves
如图所示
如果邮件太多了,在用vim /var/mail/slaves
打开文件使用gg
指针置顶,再使用dG
命令清空指针下文件。
3.从DNS服务器向主DNS服务器发送邮件
其中slaves代表用户名xxx发送,master代表用户名xxx接收,@linux-gjy.com代表mail域名
sendmail -f slaves masters@linux-gjy.com
下面是邮件内容,结束是在最后一行输入.
ws-slaves
bu666
.
在主DNS服务器查看邮件
cat /var/mail/masters
七、telnet验证
(1)安装telnet
yum -y install telnet
安装完后启动telnet命令
systemctl start telnet
systemctl enable telnet
(2).学习telnet命令格式
端口 25 是 SMTP(Simple Mail Transfer Protocol)的默认端口,用于电子邮件的发送。
端口 110 是 POP3(Post Office Protocol version 3)的默认端口,用于接收电子邮件。
1.电子邮件的发送
打开命令提示符或终端窗口,并输入以下命令连接到目标 SMTP 服务器:
telnet <SMTP服务器地址> 25
<SMTP服务器地址> 是目标邮件服务器的地址,SMTP 默认端口为 25。例如,如果目标 SMTP 服务器的地址是 mail.linux-gjy.com,则输入:
telnet mail.linux-gjy.com 25
如果连接成功,将看到 SMTP 服务器的欢迎信息。接下来,您需要按照 SMTP 协议规定的顺序发送命令。以下是常用的 SMTP 命令示例:
EHLO linux-gjy666.com # 发送扩展的 HELO/EHLO 命令,指定您的域名
MAIL FROM: <masters@mail.linux-gjy.com> # 指定发件人地址
RCPT TO: <slaves@mail.linux-gjy666.com> # 指定收件人地址
DATA # 准备发送邮件内容
Subject: Your Subject Here # 邮件主题
From: Your Name <masters@mail.linux-gjy.com> # 发件人
To: Recipient <slaves@mail.linux-gjy666.com> # 收件人
# 邮件正文内容
. # 输入 "." 表示邮件内容输入结束
quit # 断开与 SMTP 服务器的连接
注意:在上述命令中,
masters@mail.linux-gjy.com 是发件人的电子邮件地址,
slaves@mail.linux-gjy666.com 是收件人的电子邮件地址。您可以根据实际情况替换这些地址。
当输入 quit命令后,Telnet 将断开与 SMTP 服务器的连接。
2.邮件接收
2台服务器要配置ssl文件,不然在输入USER <用户名>时 会如下报错
-ERR [AUTH] Plaintext authentication disallowed on non-secure (SSL/TLS) connections.
vi /etc/dovecot/conf.d/10-ssl.conf
修改为: ssl = no
如图所示
<服务器地址> 是您要连接的邮件服务器的地址,<端口号> 是您要连接的协议的端口号。对于 POP3 协议,默认端口是 110,而对于 IMAP 协议,默认端口是 143。例如,要连接到服务器地址为 mail.linux-gjy.com 的 POP3 服务器,您可以输入:
telnet mail.linux-gjy.com 110
POP3 命令示例:
USER <用户名> # 输入用户名
PASS <密码> # 输入密码
LIST # 列出所有邮件
RETR <邮件编号> # 检索特定邮件
DELE <邮件编号> # 标记邮件为删除状态
QUIT # 断开与服务器的连接
(3)开始验证
1.主DNS服务器发送邮件到从DNS服务器
发送邮件
连接从服务器
telnet mail.linux-gjy666.com 25
指定发件人地址
MAIL FROM: <masters@mail.linux-gjy.com>
指定收件人地址
RCPT TO: <slaves@mail.linux-gjy666.com>
准备发送邮件内容
DATA
发送邮件内容
telnet fashong
ws-masters
ns-slaves
.
退出
quit
如图所示
在主DNS服务器查看邮件
主DNS服务器登录从DNS服务器
telnet mail.linux-gjy666.com 110
登录发件时用户slaves
USER slaves
写入用户密码
PASS gjy182900
查看邮件
list
查看最先邮件–17
RETR 17
如图所示
1.从DNS服务器到主DNS服务器
连接从服务器
telnet mail.linux-gjy.com 25
指定发件人地址
MAIL FROM: <slaves@mail.linux-gjy666.com>
指定收件人地址
RCPT TO: <masters@mail.linux-gjy.com>
准备发送邮件内容
DATA
发送邮件内容
telnet fashong 666
.
退出
quit
如图所示
在从DNS服务器查看邮件
在从DNS服务器登录主DNS服务器
telnet mail.linux-gjy.com 110
登录发件时用户slaves
USER masters
写入用户密码
PASS adw182900
查看邮件
list
查看最先邮件–3
RETR 3
好了如果你做到此,就代表你成功了
博客写得太快,如果有什么问题欢迎批评指正!!!