Mail,邮件服务(三):POP3认证机制,以及中继的规则
2011-08-23 18:40
344 查看
Mail,邮件服务(三):POP3认证机制,以及中继的规则
我们使用马哥的“基于虚拟用户的邮件系统架构做出我们已经有的邮件系统”的基础上来实现pop3的认证机制。
如果你还没有一个可以使用的邮件服务系统,那么可以按照马哥的说明,一步步的做下来,相信你是可以做到的。
进入正题:
POP3认证机制:
1.创建CA服务,为颁发证书做准备
# cd /etc/pki/CA
# vim ../tls/openssl.cnf 修改里面的默认配置路径和默认选项
dir = /etc/pki/CA
countryName_default = CN
stateOrProvinceName_default = HeNan
localityName_default = ZZ
0.organizationName_default = Linux
organizationalUnitName_default = TECH
# openssl genrsa 2048 > private/cakey.pem
# opsenssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3650
# chmod 600 private/cakey.pem
# mkdir certs newcerts crl
# touch index.txt serial
# echo 01 > serial
# ll
2.为dovecot颁发证书
# mkdir /etc/dovecot 建立要存放的目录
# mkdir /etc/dovecot/ssl
# cd /etc/dovecot/ssl
# (umask 077;openssl genrsa 1024 > dovecot.key)
生成证书颁发请求
# openssl req -new -key dovecot.key -out dovecot.csr
里面服务器的名字很重要:pop3.a.org(此时我们还没有这个名字,需要一会儿去自己加入)
# openssl ca -in dovecot.csr -out dovecot.crt -days 3650
# rm dovecot.csr
此时,证书和私钥都有了。
# dovecot还要用到CA的证书,所以我们复制一个
# cp /etc/pki/CA/cacert.pem ./
# mv cacert.pem cacert.crt
# ll
3.配置dovecot使其支持认证机制
# vim /etc/dovecot.conf
修改
ssl_cert_file = /etc/dovecot/ssl/dovecot.crt
ssl_key_file = /etc/dovecot/ssl/dovecot.key
ssl_ca_file = /etc/dovecot/ssl/cacert.crt
开启
protocols = imap imaps pop3 pop3s
# service dovecot restart
# vim /var/named/a.org.zone
加入正向的 pop3 对应的ip,反向同理。
# service named reload
# mutt -f pops://weiyan@weiyan.org@pop3.weiyan.org
按r 拒绝,按o进入,发现需要输入密码
这时候,我们的收发邮件就是加密的了
检测:
开启抓包工具:
# tshark -ni eth0 -R “tcp.srcport eq 995 or tcp.dstport eq 995”
到另一台主机上
# mutt -f pops://gentoo@a.org@172.16.100.1
我们可以看到抓包抓出来的结果全都被显示成了加密后信息
中继的规则限制:
在main.cf中定义中继的规则,我们以虚拟域为例:
1.实现限制开放网段中的一个或者几个ip
smtpd_client_restrictions = file
file这个文件可以自定义 文件内容只要写成
172.16.100.100 REJECT
这样的格式,就表明不能让172.16.100.100转发,在REJECT后还可以加上REJECT信息。
定义完成后使用postmap命令将其转换成*.db的二进制文件
# postmap file
编辑main.cf 修改
smtpd_client_restrictions = hash:/filename
这时候,我们去指定哪个ip地址的主机上发邮件试试,应该会被拒绝
而我们如果使用其他的IP就可以实现。
2.限定拒绝某个特定邮件地址
smtpd_sender_restrictions = file
我们也需要建立一个新文件来定义
centos@a.org REJECT
@a.org REJECT
gentoo@ REJECT
第一个意思是拒绝 centos@a.org
第二行意思是拒绝 所有是a.org域的转发
第三行是拒绝所有gentoo用户的无论哪个域的转发
# postmap file
vim /etc/postfix/main.cf
smtpd_sender_restrictions = hash:/etc/postfix/sender
我们使用马哥的“基于虚拟用户的邮件系统架构做出我们已经有的邮件系统”的基础上来实现pop3的认证机制。
如果你还没有一个可以使用的邮件服务系统,那么可以按照马哥的说明,一步步的做下来,相信你是可以做到的。
进入正题:
POP3认证机制:
1.创建CA服务,为颁发证书做准备
# cd /etc/pki/CA
# vim ../tls/openssl.cnf 修改里面的默认配置路径和默认选项
dir = /etc/pki/CA
countryName_default = CN
stateOrProvinceName_default = HeNan
localityName_default = ZZ
0.organizationName_default = Linux
organizationalUnitName_default = TECH
# openssl genrsa 2048 > private/cakey.pem
# opsenssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3650
# chmod 600 private/cakey.pem
# mkdir certs newcerts crl
# touch index.txt serial
# echo 01 > serial
# ll
2.为dovecot颁发证书
# mkdir /etc/dovecot 建立要存放的目录
# mkdir /etc/dovecot/ssl
# cd /etc/dovecot/ssl
# (umask 077;openssl genrsa 1024 > dovecot.key)
生成证书颁发请求
# openssl req -new -key dovecot.key -out dovecot.csr
里面服务器的名字很重要:pop3.a.org(此时我们还没有这个名字,需要一会儿去自己加入)
# openssl ca -in dovecot.csr -out dovecot.crt -days 3650
# rm dovecot.csr
此时,证书和私钥都有了。
# dovecot还要用到CA的证书,所以我们复制一个
# cp /etc/pki/CA/cacert.pem ./
# mv cacert.pem cacert.crt
# ll
3.配置dovecot使其支持认证机制
# vim /etc/dovecot.conf
修改
ssl_cert_file = /etc/dovecot/ssl/dovecot.crt
ssl_key_file = /etc/dovecot/ssl/dovecot.key
ssl_ca_file = /etc/dovecot/ssl/cacert.crt
开启
protocols = imap imaps pop3 pop3s
# service dovecot restart
# vim /var/named/a.org.zone
加入正向的 pop3 对应的ip,反向同理。
# service named reload
# mutt -f pops://weiyan@weiyan.org@pop3.weiyan.org
按r 拒绝,按o进入,发现需要输入密码
这时候,我们的收发邮件就是加密的了
检测:
开启抓包工具:
# tshark -ni eth0 -R “tcp.srcport eq 995 or tcp.dstport eq 995”
到另一台主机上
# mutt -f pops://gentoo@a.org@172.16.100.1
我们可以看到抓包抓出来的结果全都被显示成了加密后信息
中继的规则限制:
在main.cf中定义中继的规则,我们以虚拟域为例:
1.实现限制开放网段中的一个或者几个ip
smtpd_client_restrictions = file
file这个文件可以自定义 文件内容只要写成
172.16.100.100 REJECT
这样的格式,就表明不能让172.16.100.100转发,在REJECT后还可以加上REJECT信息。
定义完成后使用postmap命令将其转换成*.db的二进制文件
# postmap file
编辑main.cf 修改
smtpd_client_restrictions = hash:/filename
这时候,我们去指定哪个ip地址的主机上发邮件试试,应该会被拒绝
而我们如果使用其他的IP就可以实现。
2.限定拒绝某个特定邮件地址
smtpd_sender_restrictions = file
我们也需要建立一个新文件来定义
centos@a.org REJECT
@a.org REJECT
gentoo@ REJECT
第一个意思是拒绝 centos@a.org
第二行意思是拒绝 所有是a.org域的转发
第三行是拒绝所有gentoo用户的无论哪个域的转发
# postmap file
vim /etc/postfix/main.cf
smtpd_sender_restrictions = hash:/etc/postfix/sender
相关文章推荐
- Mail,邮件服务(二):收发邮件以及如何基于认证实现邮件简单安全
- Mail,邮件服务(一):邮件服务的历史及运作机制
- Mail,邮件服务(一):邮件服务的历史及运作机制
- 分布式协调服务zookeeper02-zookeeper核心工作机制以及api代码演示
- iRedMail邮件服务的部署
- iRedMail邮件服务的部署
- smtp&pop3认证邮件发送接收
- 【如何】将SharePoint传出邮件服务设置为认证方式
- 配置 Winows Domain LDAP 认证 和 Exchange 邮件服务
- linux系统服务总结之七:SENDMAIL+webmail成功收发邮件设置
- 智能化的U-Mail邮件中继实时监测确保必达
- WEB后台--基于Token的WEB后台登录认证机制(并讲解其他认证机制以及cookie和session机制)
- 邮件服务系统专题10:Turbomail教你设置Outlook
- Spring邮件服务之Html:Maven + Spring SMTP Mail With Html
- iRedMail邮件服务的部署
- iRedMail邮件服务的部署