配置SendmailWikipedia,自由的百科全书
[编辑]
要生成sendmail.cf文件一般是编译sendmail.mc来生成sendmail.cf,这样的好处是通过编译,会查看出一些sendmail的设置错误和漏洞。 # cd /etc/mail # vi sendmail.mc (1)找到: TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN‘)dnl 打开注解,启用相应的认证机制,主要是为了支持Outlook。 (2)找到: define(`confAUTH_MECHANISMS‘, `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN‘)dnl 打开注解,启用相应的认证机制,主要是为了支持Outlook。 (3)在(2)后添加两行: DAEMON_OPTIONS(`Port=25,Name=MTA‘)dnl DAEMON_OPTIONS(`Port=587,Name=MSA,M=Ea‘)dnl 设置MTA和MSA端口。 (4)找到: dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA‘) 将该行注释掉,以允许通过网络连接Sendmail。 (5)找到: dnl FEATURE(`accept_unresolvable_domains‘) 禁止不可解析域名的转发邮件。 最后保存退出。 [编辑]
编译sendmail.mc生成sendmail.cf文件# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf # /etc/rc.d/init.d/sendmail restart --重起sendmail服务。 如果在执行m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf 报错的话,那么检查是否安装sendmail-cf.*.rpm是否安装: # rpm -qa | grep sendmail-cf 如果没有安装,则需要在安装光盘中找到sendmail-cf包,并安装: # rpm -ivh sendmail-cf*.rpm [编辑]
检测编译结果1、检测SASL被编译到sendmail中。 #/usr/sbin/sendmail -d0.1 -bv root |grep SASL 输出类似如下: NETUNIX NEWDB NIS PIPELINING SASL SCANF STARTTLS TCPWRAPPERS 保证你看到SASL就是正确的。 2、检测25端口: # telnet localhost 25 只要输出有LOGIN PLAIN就可以了。 到这里,sendmail就配置完了,你可以添加一个用户进行测试: #useradd test #passwd test 设置密码 把你服务器的域名添加到/etc/mail/local-host-names中。 [编辑]
其他设置要想更好的使用sendmail,常用到的一些设置: 1、限制最大邮件。 # vi /etc/sendmail.cf # maximum message size MaxMessageSize=5000000 (注:5M) 2、最大的群发数目。 # vi /etc/sendmail.cf # maximum number of recipients per SMTP envelope MaxRecipientsPerMessage=20 (注:20个) 3、域名文件----local-host-name 可以用他来实现虚拟域名或多域名支持。 # vi /etc/mail/local-host-name test.com test1.com 4、mail别名文件--aliases。 # vi /etc/aliases 系统内部别名:discuz:bbsadmin discuz是我的用户名,其他的是别名,用逗号隔开。 转发到其他的邮箱:discuz:bbsadmin@discuz.com # newaliases --写到库中 5、邮件控制文件 relay、ok、reject和discard。 relay: 可以实现转发。 ok: 是用来允许用户的任意访问,它会覆盖任何其它已建立的检查(实际设置中,最好不要设为这项,除非你对该用户是绝对信任的); reject: 可以实现对来访地址的拒绝,它根本就不容许该地址与你的邮件服务器进行连接通信; discard: 的作用是在接收到传输的邮件消息后,把它丢弃掉。在发送者看来,他的邮件的确是接收了,但他并不知道,发送的目的地址根本不可能接收到他的邮件,服务器巧妙地欺骗了他。 # vi /etc/mail/access |
|
来自: 农夫子oice > 《Sendmail》