您的位置:首页 > 大数据 > 人工智能

mail服务器中sendmail的搭建用法

2012-09-11 12:20 351 查看
Mail服务器简介:

邮件服务器是一种用来负责电子邮件收发管理的设备。它比网络上的免费邮箱更安全和高效,因此一直是企业公司的必备设备
电子邮件是因特网上最为流行的应用之一。如同邮递员分发投递传统邮件一样,电子邮件也是异步的,也就是说人们是在方便的时候发送和阅读邮件的,无须预先与别人协同。与传统邮件不同的是,电子邮件既迅速,又易于分发,而且成本低廉。另外,现代的电子邮件消息可以包含超链接、HTML格式文本、图像、声音甚至视频数据。我们将在本文中查看处于因特网电子邮件核心地位的应用层协议。
电子邮件系统由三类主要部件构成:用户代理、邮件服务器和简单邮件传送协议,简称SMTP)。(simple Mail Transfer Protocol
在linux下有许多软件包可以实现标准的邮件服务,linux中的电子邮件系统模型可分为MTA(邮件传输代理),MSA(邮件存储和获取代理)以及MUA(邮件用户代理)三大模块。linux下可供选择的邮件服务器套件有Sendmail和Qmail。Qmail比较注意安全问题,假如你需要一个安全的邮件网关,那它是一个不错的可选方案;而Sendmail在稳定性、可移植性、及确保没有bug方面具有一定特色,且可以在网络中搜索到大量的使用资料,因此Linux下一般都选用此系统搭建,下面就演示sendmail的搭建方法。
案例拓扑图:




MailA服务器的相关配置:
安装sendmail相关软件包
rpm -ivh sendmail-cf-8.13.8-2.el5.i386.rpm 保证可以编辑sendmail.mc文件
cd /etc/mail进入目录编辑sendmail.mc




service sendmail restart 重启sendmail
编辑access启用中继





vim local-host-names声明域名和邮箱名




重启sendmail
vim /etc/sysconfig/network编辑文件更改域名




安装dns服务器:rpm -ivh bind-9.3.6-4.P1.el5.i386.rpm
rpm -ivh bind-chroot-9.3.6-4.P1.el5.i386.rpm
rpm -ivh caching-nameserver-9.3.6-4.P1.el5.i386.rpm
cd /var/named/chroot/etc 切换到dns主目录
cp -p named.caching-nameserver.conf named.conf 拷贝文件为named.conf
编辑文件named.conf





vim named.rfc1912.zones编辑该文件




cd ../var/named cp -p localhost.zone A.com.zone切换目录别生成域的文件





service named start重启dns
chkconfig named on设为开机启动
vim /etc/resolv.conf做dns指向




创建账号和密码测试useradd user1 useradd user2 passwd user1 passwd user2
mail -s ok user1给user1发送个邮件名字为ok
安装接受服务器
rpm -ivh perl-DBI-1.52-2.el5.i386.rpm
rpm -ivh mysql-5.0.77-3.el5.i386.rpm //dov相关软件包
rpm -ivh dovecot-1.0.7-7.el5.i386.rpm
service dovecot start重启并设为开机启动chkconfig dovecot on
meilB服务器与mailA服务器基本相同就不多做介绍了。
以上只是实现A区域,B区域自己系统内的邮件收发。
当A区域要向B区域发送消息时,A的dns无法解析B的域名,因此需要把A的DNS指向B的DNS。
vim /var/named/chroot/etc/named.conf





service named restart重启dns
同样B区域也要做指向。
配置好后在A区域客户端上向B区域客户发送邮件,此时时间会很长,因为本次试验拓扑在同一网段,需要在dns中指明逆向解析,这样速度就会增加
Vim /var/named/chroot/etc/named.rfc1912.zones




cd ../var/named/ cp -p named.local 192.168.100.zone切换目录并把文件拷贝为配置文件
vim 192.168.100.zone





同样在B区域也要做逆向解析。






重启dns后再次发送邮件




这样A,B两区域可相互收发邮件,但邮件无安全性,因此,还何以在邮件系统中增加安全设置
安装抓包工具来更清楚的知道邮件传送,收发问题
rpm -ivh libsmi-0.4.5-2.el5.i386.rpm
rpm -ivh wireshark-1.0.8-1.el5_3.1.i386.rpm
tshark -ni eth0 -R "tcp.dstport eq 110" 在eth0上开始抓包
发送一封邮件测试一下,结果抓到了相关的用户和密码,根本没有安全性。
创建加密发送机制smtps:vim /etc/pki/tls/openssl.cnf




为证书机制创建3个目录2个文件mkdir crl certs newcerts touch index.txt serial
echo "01" >serial给文件初始值
openssl genrsa 1024 >private/cakey.pem 产生公钥并放入指定目录
chmod 600 private/* 修改文件权限
openssl req -new -key private/cakey.pem -x509 -days 3650 -out cacert.pem 产生证书此指令执行后有很多相关条件要填写,为避免每次都填写可以编辑文件vim /etc/pki/tls/openssl.cnf 中相关条件







mkdir -pv /etc/mail/certs创建文件切换到该文件cd /etc/mail/certs/
openssl genrsa 1024 >sendmail.key创建私钥钥匙
openssl req -new -key sendmail.key -out sendmail.csr为私钥申请证书并填写正确邮箱地址
ca -in sendmail.csr -out sendmail.cert 生成证书并放在sendmail.cert中
chmod 600 *把所有的文件权限更改,保证安全。
为证书和私钥指明路径:vim /etc/mail/sendmail.mc







service sendmail restart重启服务
创建接受加密机制pop3s:
mkdir -pv /etc/dovecot/certs 创建目录并切换到目录cd /etc/dovecot/certs/
openssl genrsa 1024 >dovecot.key 产生钥匙
openssl req -new -key dovecot.key -out dovecot.csr请求证书
openssl ca -in dovecot.csr -out dovecot.cert产生证书指明钥匙和证书路径:vim /etc/dovecot.conf




在客户端上把smtp的地址设置为配置的邮件地址,并在高级选项中开启接受和发送ssl,发送测试,也可以抓包查看,账号名字加密。




本文出自 “孙恩涛的浅薄” 博客,请务必保留此出处http://sunentao.blog.51cto.com/5628536/987305
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: