Linux下sendmail的简单配置详解!

endmail 服务
1.Sendmail 服务软件包
sendmail-8.13.8-2.el5.i386.rpm:sendmail 服务的主程序包,服务器端必须安装该软件包。
sendmail-cf-8.13.8-2.el5.i386.rpm:sendmail 宏文件包
sendmail-devel-8.13.8-2.el5.i386.rpm:sendmail服务器开发工具软件包
sendmail-doc-8.13.8-2.el5.i386.rpm:sendmail 服务器的说明文档
m4-1.4.5-3.el5.1.i386.rpm:宏处理过虑软件包
dovecot-1.0-1.2.rc15.el5.i386.rpm:接收邮件软件包,安装时需要注意安装顺序
2.Sendmail 相关配置文档
sendmail.cf:sendmail核心配置文件,位于/etc/mail/sendmail/sendmail.cf
sendmail.mc:sendmail 提供 sendmail 文件模板,通过编辑此文件后再使用 m4 工具将结果导入
sendmail.cf 完成配置 sendmail 核心配置文件,降低配置复杂度,位于/etc/mail/sendmail.mc
local-host-name:定义收发邮件服务器的域名和主机别名,位于/etc/mail/local-host-name
access.db:用来设置 sendmail 服务器为哪些主机进行转发邮件,位于/etc/mail/access.db
aliases.db:用来定义邮箱别名,位于/etc/mail/aliases.db
virtusertable.db:用来设置虚拟账户,位于/etc/mail/virtusertable.db
3.邮件功能组件
MUA:邮件用户代理(Mail User Agent)
MTA:邮件传输代理(Mail Transfer Agent)
MDA:邮件递送代理(Mail Delivery Agent)
4.Sendmail 常规服务器配置
搭建 Sendmail 服务器流程:
(1)配置 sendmail.mc 文件
(2)使用m4 工具将sendmail.mc 文件导入sendmail.cf 文件
(3)配置local-host-names 文件
(4)建立用户帐号
(5)重新启动服务使配置生效

局域网网段:192.168.8.0/24
企业域名:jie.com
DNS 及Sendmail 服务器地址:192.168.8.1
sendmail服务是和DNS服务结合相当紧密的一个服务,所以我们在配置sendmail之前,需要设置
并调试好DNS服务器,DNS配置中设置MX资源记录指定邮件服务器地址。
(6)安装 Sendmail 软件包
RHEL5 默认安装sendmail-8.13.8-2.el5 及m4-1.4.5-3.el5.1 软件包,我们只需要安装
sendmail-cf-8.13.8-2.el5 宏文件包就可以了。
(7)编辑sendmail.mc 修改SMTP 侦听网段范围
配置邮件服务器需要更改IP 地址为公司内部网段或者 0.0.0.0,这样可以扩大侦听范围(通常
都设置成 0.0.0.0),否则邮件服务器无法正常发送邮件。
vim /etc/mail/sendmail.mc
第 116 行将smtp 侦听范围从 127.0.0.1 改为0.0.0.0
第 155 行修改成自己域:LOCAL_DOMAIN(`jie.com')dnl
使用m4 命令生成sendmail.cf 文件,其实sendmail.mc 即是一个模板文件哈~
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
(8)修改local-host-names 文件添加域名及主机名
vim /etc/mail/local-host-names mail.jie.com(添加所设置的域名)
(9)安装Dovecot 软件包(POP3 和IMAP)
到这里sendmail 服务器基本配置完成后,Mail Server 就可以完成邮件发送工作,如果需要使用
POP3 和 IMAP 协议接收邮件还需要安装dovecot 软件包。在rhel5 里 dovecot 整合了IMAP。
安装dovecot软件包要解决其依赖性,安装per-DBI-1.52-1.fc6.i386.rpm 和
mysql-5.0.22-2.1.0.1.i386.rpm
(10)启动 Sendmail 服务
service sendmail restart 和 service dovecot restart 命令启动sendmail 和dovecot 服务,
如果每次开机启动,可以使用 chkconfig命令修改。
(11)测试端口
使用netstat 命令测试是否开启SMTP 的25 端口、POP3 的 110 端口及 IMAP 的143 端口。
netstat -an|grep 25
netstat -an|grep 110
netstat -an|grep 143
也可以使用netstat -ntla
(12)验证Sendmail 的SMTP 认证功能
telnet localhost 25 后输入ehlo localhost 验证Sendmail 的SMTP 认证功能
telnet localhost 110
telnet mail.jie.com 25
telnet mail.jie.com 110

#########################################################################
下面的是一个配置事例,如果有看不太懂的地方,建议你看看sendmail的基础知识部分!
声明:这里的sendmail的设置没有身份验证功能,小菜我也在进一步的学习当中。不过也希望如果各位午饭们会这方面的内容,能够给大家分享下!呵呵

rpm -ivh /media/CentOS_5.5_Final/CentOS/bind-9.3.6-4.P1.el5_4.2.i386.rpm
rpm -ivh /media/CentOS_5.5_Final/CentOS/bind-utils-9.3.6-4.P1.el5_4.2.i386.rpm
rpm -ivh /media/CentOS_5.5_Final/CentOS/bind-chroot-9.3.6-4.P1.el5_4.2.i386.rpm
rpm -ivh /media/CentOS_5.5_Final/CentOS/caching-nameserver-9.3.6-4.P1.el5_4.2.i386.rpm

neat
service network restart
service named restart

cd /var/named/chroot/
cp -p etc/named.caching-nameserver.conf etc/named.conf
vi etc/named.conf
127.0.0.1和localhost 都变成any
vi etc/named.rfc1912.zones
添加
zone "xinhua.com" IN {
type master;
file "xinhua.com.hosts";
allow-update { none; };
};
zone "0.168.192.in-addr.arpa" IN {
type master;
file "192.168.0.rev";
allow-update { none; };
};

cp -p var/named/localhost.zone var/named/xinhua.com.hosts
$TTL 86400
@ IN SOA dns.xinhua.com. root.xinhua.com. (
2011062401
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
@ IN NS dns.xinhua.com.
@ IN MX 5 mail.xinhua.com.
dns IN A 192.168.0.3
mail IN A 192.168.0.3
cp -p var/named/localhost.zone var/named/192.168.0.rev

vi var/named/xinhua.com.hosts
cp -p var/named/xinhua.com.hosts var/named/192.168.0.rev
vi var/named/192.168.0.rev
@ IN SOA dns.xinhua.com. root.xinhua.com. (
2011062401
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
@ IN NS dns.xinhua.com.
@ IN MX 5 mail.xinhua.com.
3 IN PTR dns.xinhua.com.
3 IN PTR mail.xinhua.com.

service named restart
nslookup
-----------------------------------------------------------------------------------
在安装这些软件包的时候要根据提示来解决他们之间的依赖性!
rpm -ivh /media/CentOS_5.5_Final/CentOS/sendmail-8.13.8-8.el5.i386.rpm
rpm -ivh /media/CentOS_5.5_Final/CentOS/sendmail-devel-8.13.8-8.el5.i386.rpm
rpm -ivh /media/CentOS_5.5_Final/CentOS/sendmail-cf-8.13.8-8.el5.i386.rpm
rpm -ivh /media/CentOS_5.5_Final/CentOS/sendmail-doc-8.13.8-8.el5.i386.rpm
rpm -ivh /media/CentOS_5.5_Final/CentOS/m4-1.4.5-3.el5.1.i386.rpm

vi /etc/mail/sendmail.mc
116行 0.0.0.0 155行改域名
m4 /etc/mail/sendmail.mc >/etc/mail/sendmail.cf

cd /etc/mail
vi local-host-names
xinhua.com.
mail.xinhua.com.

vi access
Connect:192.168.0.3 RELAY
Connect:192.168.0 RELAY
Connect: www.xinhua.com RELAY
Connect:xinhua.com RELAY
makemap hash access.db<access

vi /etc/alias #这里的设置是让sendmail支持群发功能!
group1: a,b,c
group2: aa,bb,cc
newaliases
useradd -s /sbin/nologin a
useradd -s /sbin/nologin b
useradd -s /sbin/nologin c
useradd -s /sbin/nologin aa
useradd -s /sbin/nologin bb
useradd -s /sbin/nologin cc
passwd a
passwd b
passwd c
passwd aa
passwd bb
passwd cc

rpm -ivh /media/CentOS_5.5_Final/CentOS/mysql-5.0.77-4.el5_4.2.i386.rpm
rpm -ivh /media/CentOS_5.5_Final/CentOS/perl-DBI-1.52-2.el5.i386.rpm
rpm -ivh /media/CentOS_5.5_Final/CentOS/mysql-5.0.77-4.el5_4.2.i386.rpm
rpm -ivh /media/CentOS_5.5_Final/CentOS/dovecot-1.0.7-7.el5.i386.rpm

vi /etc/dovecot.conf

service sendmail restart
service dovecat restart

--------------------------------------
客户端测试不要SMTP认证,不然你会收不到邮件地哦!呵呵(建议使用foxmail客户端http://fox.foxmail.com.cn/)

你可能感兴趣的:(linux,职场,sendmail,休闲)