Cent OS 8的配置与管理postfix邮件服务器

目录

项目设计

电子邮件服务配置实例


项目设计

主机名

操 作 系 统

IP地址

角色及其他

邮件服务器:Server01

RHEL 8

192.168.10.1

DNS服务器、postfix邮件服务器,VMnet1

Linux客户端:Client1

RHEL 8

192.168.10.20

邮件测试客户端,VMnet1

项目准备
(1)安装好企业版Linux网络操作系统,并且必须保证Apache服务和perl语言解释器正常工作。客户端使用Linux,服务器和客户端能够通过网络进行通信。
(2)电子邮件服务器的IP地址、子网掩码等TCP/IP参数应手工配置。
(3)电子邮件服务器应拥有一个友好的DNS名称,应能够被正常解析,并且具有电子邮件服务所需的MX资源记录。
(4)创建任何电子邮件域之前,规划并设置好POP3服务器的身份验证方法。
配置postfix常规服务器(完成邮件发送准备)

1.安装bind和postfix服务。

[root@Server01 ~]# mount  /dev/cdrom  /media
[root@Server01 ~]# dnf  clean  all                //安装前先清除缓存
[root@Server01 ~]# dnf  install  bind  postfix  -y

2.开放dns、smtp服务。
打开SELinux有关的布尔值,在防火墙中开放dns、smtp服务。重启服务,并设置开机重启生效。
 

[root@Server01 ~]# setsebool  -P  allow_postfix_local_write_mail_spool  on 
[root@Server01 ~]# systemctl  restart postfix
[root@Server01 ~]# systemctl  restart named
[root@Server01 ~]# systemctl  enable named
[root@Server01 ~]# systemctl  enable postfix
[root@Server01 ~]# firewall-cmd  --permanent  --add-service=dns
[root@Server01 ~]# firewall-cmd  --permanent  --add-service=smtp
[root@Server01 ~]# firewall-cmd --reload

postfix服务程序主配置文件中的主要参数

Cent OS 8的配置与管理postfix邮件服务器_第1张图片

2.4 配置Dovecot服务程序(完成使用POP3和IMAP协议接收邮件准备)
1.安装Dovecot服务程序软件包(安装POP3和IMAP)。

[root@Server01 ~]# mount   /dev/cdrom  /media
[root@Server01 ~]# dnf  install  dovecot  -y

2.启动POP3服务,同时开放pop3和imap对应的TCP端口110和143。

[root@Server01 ~]# systemctl  restart  dovecot 
[root@Server01 ~]# systemctl  enable  dovecot 
[root@Server01 ~]# firewall-cmd  --permanent  --add-port=110/tcp
[root@Server01 ~]# firewall-cmd  --permanent  --add-port=25/tcp
[root@Server01 ~]# firewall-cmd  --permanent  --add-port=143/tcp
[root@Server01 ~]# firewall-cmd  –reload

3.测试。
使用netstat命令测试是否开启POP3的110端口和IMAP的143端口。

[root@Server01 ~]#netstat   -an|grep   :110
[root@Server01 ~]#netstat   -an|grep   :143


2.5 配置Dovecot服务程序主配置文件(/etc/dovecot/dovecot.conf)
(1)首先修改第24行,确认支持的电子邮件协议为imap、pop3和lmtp,默认就是这些协议。

[root@Server01  ~]#  vim  /etc/dovecot/dovecot.conf  -n

protocols = imap  pop3  lmtp

(2)在主配置文件的第48行,设置允许登录的网段地址,如果想允许所有人都能使用,则修改本参数如下:
login_trusted_networks = 0.0.0.0/0
也可修改为某网段,如192.168.10.0/24。
2.6 配置邮件格式与存储路径(/etc/dovecot/conf.d/10-mail.conf)
在Dovecot服务程序单独的子配置文件中,定义一个路径,用于指定要将收到的邮件存放到服务器本地的哪个位置。这个路径默认已经定义好了,只需将该配置文件中第24行前面的井号(#)删除,然后存盘退出即可。
 

[root@Server01 ~]# vim  /etc/dovecot/conf.d/10-mail.conf

mail_location = mbox:~/mail:INBOX=/var/mail/%u

2.7创建用户,建立保存邮件的目录
建立相应用户的保存邮件的目录(这是必须的,否则出错),以创建user1和user2为例:

[root@Server01 ~]# useradd  user1
[root@Server01 ~]# useradd  user2
[root@Server01 ~]# passwd  user1 
[root@Server01 ~]# passwd  user2 
[root@Server01 ~]# mkdir  -p  /home/user1/mail/.imap/INBOX
[root@Server01 ~]# mkdir  -p  /home/user2/mail/.imap/INBOX

至此,对Dovecot服务程序的配置部署全部结束。



电子邮件服务配置实例

项目需求
       postfix电子邮件服务器和DNS服务器的地址为192.168.10.1,利用Telnet命令,使邮件地址为[email protected]的用户向邮件地址为[email protected]的用户发送主题为“The first mail:user3 TO user4”的邮件,同时使用telnet命令从IP地址为192.168.10.1的POP3服务器接收电子邮件。

#Telnet指令是一种常用的远程登录工具,可用于与远程主机建立连接并执行命令。

第1步:在Server01上安装dns、postfix、dovecot和telnet,并启动。
(1)安装dns、postfix、dovecot和telnet。

[root@Server01 ~]# mount  /dev/cdrom  /media
[root@Server01 ~]# dnf  clean  all
[root@Server01 ~]# dnf  install  bind  postfix  dovecot  telnet-server  telnet –y

(2)打开SELinux有关的布尔值,在防火墙中开放dns、smtp服务。

[root@Server01 ~]# setsebool  -P  allow_postfix_local_write_mail_spool  on 
[root@Server01 ~]# firewall-cmd  --permanent  --add-service=dns
[root@Server01 ~]# firewall-cmd  --permanent  --add-service=smtp
[root@Server01 ~]# firewall-cmd  --permanent  --add-service=telnet

(3)启动POP3服务,同时开放pop3和imap对应的TCP端口110和143。

[root@Server01 ~]# firewall-cmd  --permanent  --add-port=110/tcp
[root@Server01 ~]# firewall-cmd  --permanent  --add-port=25/tcp
[root@Server01 ~]# firewall-cmd  --permanent  --add-port=143/tcp
[root@Server01 ~]# firewall-cmd  --reload

第2步:在Server01上配置DNS服务器,设置MX资源记录。
编辑修改DNS服务的主配置文件,添加long90.cn域的区域声明(具体配置过程详见《DNS服务器配置与管理》章节)。
第3步:在server01上配置邮件服务器。
(1)配置/etc/postfix/main.cf。

[root@Server01 ~]# vim /etc/postfix/main.cf
myhostname = mail.long90.cn
mydomain = long90.cn
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname,$mydomain,localhost


(2)配置/etc/dovecot/dovecot.conf。

[root@Server01 ~]# vim  /etc/dovecot/dovecot.conf
protocols = imap  pop3  lmtp
login_trusted_networks = 0.0.0.0/0

第3步:在server01上配置邮件服务器。
(3)配置邮件格式和路径(默认已配置好,在25行左右),建立邮件目录(极易出错)。

[root@Server01 ~]# vim  /etc/dovecot/conf.d/10-mail.conf
mail_location = mbox:~/mail:INBOX=/var/mail/%u
[root@Server01 ~]# useradd  user3
[root@Server01 ~]# useradd  user4
[root@Server01 ~]# passwd  user3 
[root@Server01 ~]# passwd  user4 
[root@Server01 ~]# mkdir  -p  /home/user3/mail/.imap/INBOX
[root@Server01 ~]# mkdir  -p  /home/user4/mail/.imap/INBOX


(4)启动各种服务,配置防火墙,允许布尔值等。

[root@Server01 ~]# systemctl  restart  postfix
[root@Server01 ~]# systemctl  restart  named
[root@Server01 ~]# systemctl  restart  dovecot 
[root@Server01 ~]# systemctl  enable  postfix
[root@Server01 ~]# systemctl  enable  dovecot 
[root@Server01 ~]# systemctl  enable  named
[root@Server01 ~]# setsebool  -P  allow_postfix_local_write_mail_spool  on

第4步:在client1上使用telnet发送邮件。
(1)在Client1上测试DNS。

[root@client1 ~]# vim  /etc/resolv.conf

nameserver  192.168.10.1

[root@client1 ~]# nslookup

> set  type=MX
> long90.cn
Server:    192.168.10.1
Address: 192.168.10.1#53
long90.cn mail exchanger = 10 mail.long90.cn.
> exit

(2)在Client1上依次安装telnet所需的软件包。

[root@Client1 ~]# dnf install telnet-server -y    //安装telnet服务器软件
[root@Client1 ~]# dnf install telnet -y               //安装telnet客户端软件

第4步:在client1上使用telnet发送邮件。
(3)在Client1客户端测试。

[root@Client1 ~]# telnet  192.168.10.1 25      //利用telnet命令连接邮件服务器的25端口

Trying 192.168.10.1...
Connected to 192.168.10.1.
Escape character is '^]'.
220 mail.long90.cn ESMTP postfix
helo long90.cn                                                //利用helo命令向邮件服务器表明身份,不是hello
250 mail.long90.cn
mail from:"test"             //设置信件标题以及发信人地址。其中信件标题      
                                                                       //为“test”,发信人地址为[email protected]
250 2.1.0 Ok
rcpt to:[email protected]                               //利用rcpt to命令输入收件人的邮件地址
250 2.1.5 Ok
data                         // data表示要求开始写信件内容了。当输入完data指令后,会提示以一个单行的“.”结束信件
354 End data with .
The first mail:user3 TO user4                      //信件内容
.                                                                     //“.”表示结束信件内容。千万不要忘记输入“.”
250 2.0.0 Ok: queued as 456EF25F
quit                               //退出telnet命令
221 2.0.0 Bye
Connection closed by foreign host.

第5步:在Client1上利用Telnet命令接收电子邮件。

 [root@Client1 ~]# telnet 192.168.10.1 110            //利用telnet命令连接邮件服务器110端口

Trying 192.168.10.1...
Connected to 192.168.10.1.
Escape character is '^]'.
+OK Dovecot ready.
user user4                                                              //利用user命令输入用户的用户名为user4
+OK
pass 12345678                                                      //利用pass命令输入user4账户的密码,此处假设为12345678
+OK Logged in.
list                                                                         //利用list命令获得user4账户邮箱中各邮件的编号
+OK 1 messages:
1 263
.
retr 1                                                                    //利用retr命令收取邮件编号为1的邮件信息,下面各行为邮件信息
+OK 291 octets
Return-Path:    X-Original-To: [email protected]    Delivered-To: [email protected]
Received: from long90.cn (unknown [192.168.10.20])
 by mail.long90.cn (postfix) with SMTP id 235DC1485
 for ; Sun, 21 Feb 2021 12:09:51 -0500 (EST)
.
quit                //退出telnet命令

你可能感兴趣的:(CentOS8,服务器,linux,运维)