邮件服务器之sendmail的安全配置之加密

导读

继上篇文章配置了简单的邮件服务器,但是当接收发邮件是容易被抓包获取到我们的敏感信息,为此这篇文章讨论一下邮件服务器的加密

① Pop3s加密协议 端口为995

② 通过startts工作在smtp协议的25端口加密

当收件人接受邮件时开启咱们的wireshark抓包工具,看看能不能获得敏感信息。

tshark -ni eth0 -R "tcp.port eq 110"

邮件服务器之sendmail的安全配置之加密_安全配置加密

如上可以获得到收信人的账户和密码

下面我们做的主要工作时防止被人抓包获取敏感信息。。

1、 创建CA认证中心

1)编辑/etc/pki/tls/openssl.cnf文件 修改如下几行为如下:

45 dir                        = /etc/pki/CA

88 countryName               = optional

89 stateOrProvinceName        = optional

90 organizationName           = optional

2cd /etc/pki/CA

[root@RHEL CA]# mkdir crl certs newcerts

[root@RHEL CA]# touch index.txt serial

[root@RHEL CA]# echo "01" serial

3)创建自己的私钥

[root@RHEL CA]# openssl genrsa 1024 >private/cakey.pem

Generating RSA private key, 1024 bit long modulus

.....++++++

................++++++

e is 65537 (0x10001)

4)生产证书

[root@RHEL CA]# openssl req -new -key private/cakey.pem -x509 -out cacert.pem

邮件服务器之sendmail的安全配置之加密_服务器加密配置_02

[root@RHEL CA]# chmod 600 private/*

5)创建用于存放邮件服务器的证书目录

mkdir /etc/mail/certs   

6)产生私钥

[root@RHEL certs]# openssl  genrsa 1024 > mail.key

Generating RSA private key, 1024 bit long modulus

....................................++++++

...++++++

e is 65537 (0x10001)   

7)请求

[root@RHEL certs]# openssl req -new -key mail.key -out mail.csr

邮件服务器之sendmail的安全配置之加密_邮件服务器_03

8)颁发证书

[root@RHEL certs]# openssl ca -in mail.csr -out mail.cert

邮件服务器之sendmail的安全配置之加密_邮件服务器_04

9vim /etc/dovecot.conf

去掉注释,并修改为如下:

ssl_cert_file = /etc/mail/certs/mail.cert

ssl_key_file = /etc/mail/certs/mail.key

10)重启dovecot服务

11outlook客户端启用SSl安全连接如下:

邮件服务器之sendmail的安全配置之加密_sendmail_05

tshark -ni eth0 -R "tcp.port eq 995"

邮件服务器之sendmail的安全配置之加密_sendmail_06

接受邮件时,再次抓包已经获取不到了敏感数据

有发才有收,所以在发送邮件时,也可能被被人监听

下面实现发送加密 即 在smtp25端口实现加密

(1) 产生私钥、创建请求、颁发证书如上述的(6)(7)(8)三的步骤 只是创建请求时写smtp.wsm.com ,并修改key的权限为600

实现smtp25端口加密的是startts功能

查看是否开启了

邮件服务器之sendmail的安全配置之加密_邮件服务器_07

还没有

编辑vim /etc/mail/sendmail.mc 如下 ,开启如下5行,并相应的修改

邮件服务器之sendmail的安全配置之加密_安全配置加密_08

134 DAEMON_OPTIONS(`Port=smtps, Name=TLSMTA, M=s')dnl

邮件服务器之sendmail的安全配置之加密_安全配置加密_09

已开启starttls功能

outlook中启用smtpssl安全连接如下:

邮件服务器之sendmail的安全配置之加密_sendmail_10

好了,,此时,你在和mail服务器之间发送和接收邮件应经实现了加密,,最好在给客户机发一个根证书。。。。