您现在的位置是:首页 >其他 >使用CentOS 7配置邮件服务-第四篇网站首页其他

使用CentOS 7配置邮件服务-第四篇

是小咩咩呀 2024-10-03 12:01:04
简介使用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

在这里插入图片描述
在这里插入图片描述

好了如果你做到此,就代表你成功了
博客写得太快,如果有什么问题欢迎批评指正!!!

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。