***************4.配置电子邮件传输*****************
##1.基本电子邮件配置##
配置dns服务,添加MX记录
两台服务器分别配置 /etc/postfix/main.cf文件

wKiom1g9bVLT-UMRAAAvQMwO0Fg229.png 

 

myhostname--主机名

wKioL1g9bVvyQYHQAAAlKrevINA515.png 


mydomain--域名

wKiom1g9bWSyjrq6AAAXVMrjrmA409.png 


myorigin--重写本地发布的电子邮件,使其显示为来自该域。这样有助于确保响应返回入站邮件服务器

wKiom1g9bW_jPPb0AAAX5w6SwVg335.png 


inet_interfaces--控制Postfix侦听传入电子邮件的网络接口。如果设置为all,则侦听所有网络接口。还可以指定特定地址。

wKioL1g9bXmTM1qUAABzzJYxIz4775.png 


mydestination--收到地址为这些域的电子邮件将传递至MDA,以进行本地发送。

wKiom1g9bYaxgeWyAAAxhaJCnI8423.png 


重启服务

wKioL1g9bZTRByz-AAAxu7HdbdM985.png 

 

mail_linux进行同样的配置


测试

wKioL1g9baCDJQmiAABeH04JoyU030.png 

wKiom1g9baryLFA5AACD4arpmeQ535.png 

附:
mailq //查看队列中的邮件
postqueue -f //处理队列中的邮件
postsuper -d ID //删除ID的邮件
> /var/mail/root //清空root用户邮件
postconf -d //显示配置文件默认值。
postconf -n //显示配置文件不同于默认值的更改。
postconf -e "..." //更改配置


##2.用户别名##
1.匿名邮件

1.修改配置文件,匿名用户对应,前面为匿名,后面为真实用户名,若真实用户名包含为一文件,可用来群发邮件。

wKioL1g9bbbTWdEEAAAqZ7hfEUQ326.png 

wKiom1g9bcTCUu6AAAAkDlc2-To421.png 

wKioL1g9bdSzmSAyAAArQZ7IEok468.png

wKiom1g9bd-hXnx5AAANg9J5U20135.png  

2.创建别名数据库

wKioL1g9bg-gJUDwAAAs9lEZjPY831.png 

 

3.重启服务

wKiom1g9bhvzezCRAAA457WDmqM417.png 

 

4.测试

 

匿名测试:

wKiom1g9bivAvENAAABAZAlmkkE851.png 

 

wKioL1g9bjaRBw8NAAFi4G8g-30781.png 

 

 

 

群发测试:

wKioL1g9bkOBB9VZAABLuLFsrvo975.png 

 

wKiom1g9blGT4b-fAAFnphJaxNM828.png
##3.邮箱别名## --出站地址伪装

1.修改配置文件

wKioL1g9bl2wur_KAABOb6J2QKo103.png 

添加伪装地址

wKioL1g9bmrTyrp5AAAnk5xIphw601.png 

2.使配置文件立即生效

wKiom1g9bnXBerfqAAAqGVFGwWk994.png 

3.修改主配置文件里smtp_generic_maps

wKioL1g9boWDY8MSAABN7X9PrQ0891.png 

4.重启服务

wKiom1g9bpSB_a_1AAA4iv3_GGQ180.png 

5.测试:

wKiom1g9bqKBclYXAABJN_Fx1Lo448.png 

wKioL1g9bseSlZ1TAAHWGemkM1s633.png 


##4.远程检测端口##

通过远程主机检测mail_westos的25端口

wKioL1g9bq_QKXdvAAIVyeophhk319.png 

查看结果

wKiom1g9btuBnc0pAAFqGah608Y317.png

##限制发送##

1.通过ip进行限制 //冻结主机

/etx/postfix/下编辑文件 access,在文件末尾添加所要限制的ip 和REJECT语句

例如:

172.25.254.8REJECT

然后利用postmap access 使文件立即生效

然后在主配置文件中添加

wKiom1hIFCyRCzy4AAA3dUGqK00301.png

 

重启服务后测试

 

2.通过邮箱进行限制 //冻结邮箱

限制发送

/etx/postfix/下编辑文件 sender(文件名可自定义),在文件末尾添加所要限制的邮箱地址和REJECT语句

例如:

student@westosREJECT

然后利用postmap sender 使文件立即生效

然后在主配置文件中添加

wKioL1hIFC2iRFjlAAAzRgOo-0E737.png


重启服务后测试

wKiom1hIFC6zduxzAAEh_e9a9jw523.png 

 

限制接收

/etx/postfix/下编辑文件 recipient(文件名可自定义),在文件末尾添加所要限制的邮箱地址和REJECT语句

例如:

student@westosREJECT

然后利用postmap recipient 使文件立即生效

然后在主配置文件中添加

wKiom1hIFOTws8e9AAA51ecBZ-k224.png 

重启服务后测试

wKioL1hIFO_xw7URAAE00bwtZbg763.png 

解除限制

删除配置文件中的限制,postmap 配置文件,最后重启服务

## 2.邮件接收服务,dovecot ##

1.安装dovecot服务 yum install dovecot -y

2.配置dovecot服务

/etc/dovecot/下配置主配置文件dovecot.conf

wKioL1hIFVHwelNyAAAa4tgtS-E413.png 

wKiom1hIFV2jwxj3AAA6aILY47A426.png 

/etc/dovecot/conf,d/下配置文件10-mail.conf

wKiom1hIFWfDjGD_AAAq5JLx1yA233.png 

重启服务后测试

 

在服务端添加用户test并为用户设置密码,切换到test用户,并执行以下操作

wKioL1hIFXKxLJhrAABSB07VHAM661.png 

wKiom1hIFX6ANfulAAA9LzRvPRU488.png 

切换到root用户给test用户发一封邮件

测试端,安装mutt邮件管理器进行测试

 Yum install mutt -y

使用mutt -f imap://test@ip进行测试

 

## 3.利用mysql创建虚拟用户 ##

1.安装所需服务 mariadb-server,httpd.php,php-mysql等,建立图形化管理数据库,并在数据库中建立库email和email库中的表muser,表中内容如下,参考mariadb笔记。

wKioL1hIFZiwv1USAABF0EBJM0U734.png 

2.添加数据库用户postfix,并给用户添加 INSERT,UPDATE,SELECT等权限

wKiom1hIFamw_u8zAAAlexIOEpM323.png 

3.添加vmail组和vmail用户

 wKioL1hIFfPQfi98AAAb3v8E7jA444.png

4.在/etc/postfix/中分别编辑以下三个文件

 Vim mysql-users

wKiom1hIFb2zcxQpAAAlCCWQ5q8729.png 

Vim mysql-domain

wKioL1hIFbTiqZn-AAAkzIWsA7M900.png 

Vim mysql-maildir

wKioL1hIFdbiBxnAAAAkxAm8aMI250.png 

然后分别用postmap -q 使文件生效 -p 查看生效结果

wKioL1hIFg2jxOtiAAAZmSgLPO8060.png

wKiom1hIFg6yPShzAAAV5GrRt_E334.png

wKiom1hIFg6gI0y2AAAYfxoD_Y8749.png

5.在主配置文件/etc/postfix/main.cf下添加如下参数

wKioL1hIFhrDeeDmAACAHOP9U_w923.png 

重启服务后,虚拟用户就配置好了。可以给虚拟用户发一封邮件测试一下,在/home/vmail/westos.org/new可是查看发送给虚拟用的邮件。但是用户现在没有接受邮件的服务,我们还需要给虚拟用户配置dovecot服务,这一个完整的用户就被创建出来了。

 

1.安装dovecot-mysql插件

 

2.配置dovecot服务,同上笔记。

 

3.拷贝配置文件到/etc/doveocot,并进行编辑

Cp /usr/share/doc/dovecot-2.2.10/example-config/dovecot-sql.conf.ext
/etc/dovecot/

Vim /etc/dovecot/dovecot-sql.conf.ext

32 driver = mysql
71 connect = host=localhost dbname=email user=postfix password=postfix
78 default_pass_scheme = PLAIN
107 password_query = \
108 SELECT username, domain, password \
109 FROM muser WHERE username = '%u' AND domain = '%d'
125 user_query = SELECT maildir, 666 AS uid, 666 AS gid FROM muser WHERE username = '%u'


4.编辑/etc/dovecot/conf.d/10-auth.conf
打开 123 !include auth-sql.conf.ext

5.编辑/etc/dovecot/conf.d/10-mail.conf
30 mail_location = maildir:/home/vmail/%d/%n
168 first_valid_uid = 666
175 first_valid_gid = 666

 

6.重启服务
systemctl restart dovecot.service 

 

## 空壳邮件 ##

实际上,大多数组织不再只用一个邮件服务器来处理所有入站和出站电子邮件。相反,出于安全方面的考虑邮件服务器专门针对特定角色进行了设置,以便可以面向其具体针对的应用程序更好标准角色包括:

null客户端:运行本地MTA的客户端计算机,使所有电子邮件都可以转发至中央邮件服务器以进行发送,null客户端不接受任何电子邮件的本地发送。
仅入站邮件服务器:在站点处理用户的所有传入电子邮件,并将之传递给MD以发送至用户邮件存储位置的邮件服务器。
在实际情况中,通常会在仅入站邮件服务器前端安装反垃圾邮件服务器或设备,以过滤垃圾邮件并且仅将 正常邮件转发至入站邮件服务器。
出站邮件转发:出站邮件转发(或“smarthost”)接收所有出站邮件,并使用MX记录和SMTP协议将邮件转发至目标位置 。

1.代理服务器的配置

修改主配置文件/etc/postfix/main.cf

主机名:代理服务器主机名

wKioL1hIFjTjGUOKAAARofVDrFo916.png 

域名:代理服务器域名

wKiom1hIFj-ikdZ9AAAPyE8_6Hc489.png 

邮件地址后缀名

wKiom1hIFlSwVkTDAAAQZFCFT-c664.png 

侦听所有网络接口

wKioL1hIFl-xoCd2AAALqCMNicY775.png 

设置为空,不接受任何电子邮件传送给MDA

wKiom1hIFmjRh0kSAAAMfu_fTeM212.png 

本地发送

wKiom1hIFnHBanSHAAAZZhfD2MQ200.png 

转发邮件目的地

wKioL1hIFnqjAAaFAAAWxKgmero940.png 

然后重启服务

 

1.主服务器的配置

修改主配置文件/etc/postfix/main.cf

接受转发自哪里的邮件

wKioL1hIFobSzrpRAAAU0-hEupk395.png 

然后重启服务

空壳邮件服务就配置好了

 

我们还可以图形化的邮件服务来管理邮件,比如thunderbird

用我们的虚拟用户登录来做一个小的介绍

wKiom1hIFpaDQTv0AADk9cpKF-c020.png

wKioL1hIFpegfYnaAAC0OpYy7S0338.png