进入sendmail的世界
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://kingdee.blog.51cto.com/98119/27482 |
SENDMAIL 配置笔记
一:安装篇
[root@redhatlinux9 RPMS]# rpm -qa | grep sendmail
sendmail-
sendmail-doc-
sendmail-cf-
m4-
imap
imap-devel
#rpm -qa|grep sasl SMTP认证功能
cyrus-sasl-
cyrus-sasl-plain-
cyrus-sasl-devel-
cyrus-sasl-md5-
二:文件区:
/etc/mail/sendmail.cf #主配置文件,一般用M4来编辑
/etc/mail/sendmai.mc #M4配置文件
/etc/xinetd.d/imap #imap配置文件
/etc/mail/access.db #规定谁可以或不可以使用邮件服务器数据库
/etc/mail/aliases.db #别名数据库
/etc/mail/statistics #收发信件相关信息
/etc/mail/local-host-names #声明收发邮件的主机名
/var/spool/mail #每个用户信件放置目录
三:编译篇
m4 /etc/sendmail.mc > /etc/mail/sendmail.cf #编译sendmail.mc以产生需要的cf文件
然后在编译过的sendmail.cf中查找Cw,在其后加入邮件服务器名、域名,这样可以保证当你以username@mail.domain.com或username@domain.com发信时,用户都可以收到。
四:启动服务器
[root@redhatlinux9 RPMS]# pstree | grep sendmail 检查是否启动
chkconfig ipop3 on #开启pop服务
chkconfig imap on #开启imap服务
此两种服务需要xinetd的支持。service xintetd restart (/etc/xinetd.d)
启动收信服务:
[root@redhatlinux9 root]# vi /etc/xinetd.d/ipop3
将
disable = yes 改为:
disable = no
[root@redhatlinux9 root]# vi /etc/xinetd.d/imap
将
disable = yes 改为:
disable = no
chkconfig ipop3 on #开启pop服务
chkconfig imap on #开启imap服务
[root@redhatlinux9 root]# /usr/sbin/sendmail -bd -q
-- -bd:表示将以daemon形式启动
-q:后接时间参数。表示每隔30分钟将邮件列表常识寄出一次
五:配置篇
A.添加可以用来收发信件的主机名:
[root@redhatlinux9 root]# vi /etc/mail/local-host-names
xyz.com
mail.xyz.com
B.编辑可使用服务器权限(即RELAY权限):
[root@redhatlinux9 RPMS]# vi /etc/mail/access
规定范围 可执行操作
ip/ip段/主机名/E-mail RELAY/DISCARD/REJECT 接受/丢弃/拒绝并回传错误信息
localhost RELAY
192.168.0 RELAY
h8h.com DISCARD
55@3.com REJECT
[root@redhatlinux9 root]# makemap hash /etc/mail/access.db < /etc/mail/access #服务器读取的是数据库文件,所以编辑完后要改写成数据库
C.设置用户别名
/etc/mail/aliases
情况1:群组寄信功能
收件者帐号 真实帐号
wangwei(此号可随便取): aaa, bbb, ccc #则发给wangwei的信会发给abc三个人
情况2:设置用户别名和备分
a1: a2 #则发给a1和a2的信都可用a2这个帐号来收取。两个号只需a2这一个实体号即可
情况3:文件类型的别名include
vi /etc/mail/student #这个文件可以随便创建一个
zhangsan, \
lisi, \
...
wangwu #最后一个帐号后不能加符号
vi /etc/mail/aliases
student: :include:/etc/mail/student #这样文件显得更整洁
D.信件列表与Mailer中的统计状态
暂时无法发送的信件每隔60分钟尝试重新传送.
修改时间:/etc/sysconfig/sendmail 里QUEUE=
[root@redhatlinux9 root]# mailq #查看信件列表
[root@redhatlinux9 root]# mailstats #查看统计状态
M msgsfr bytes_from msgsto bytes_to msgsrej msgsdis mailer
代号 发信数量 发信容量 收信数 收信容量 拒绝数 丢弃数 工作者
M下的代号T表示总和
注意事项:
[root@redhatlinux9 RPMS]# netstat -tnl
tcp 0 0 127.0.0.1:25
[root@redhatlinux9 RPMS]# vi /etc/mail/sendmail.cf
O DaemonPortOptions=Port=smtp,Addr=127.0.0.1,Name=MTA
更改为
O DaemonPortOptions=Port=smtp,Addr=
SMTP认证:虽然access可以进行RELAY,但是如果要RELAY的网段不是固定的,则不行。
vi /etc/mail/sendmail.mc
将
dnl TRUST_AUTH_MECH(`DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl define(`confAUTH_MECHANISMS',`DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1,Name=MTA')dn1
修改为:
TRUST_AUTH_MECH(`DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS',`DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
DAEMON_OPTIONS(`Port=smtp,Addr=192.168.1.200,Name=MTA')dn1
m4 sendmail.mc > sendmail.cf 再编译一下cf
本文出自 “金蝶软件帮助客户成功” 博客,请务必保留此出处http://kingdee.blog.51cto.com/98119/27482 本文出自 51CTO.COM技术博客 |


ww7319
博客统计信息
热门文章
最新评论
友情链接