dnl yourself from spam. However, the laptop and users on computers that do
dnl not have 24x7 DNS do need this.
dnl FEATURE(`accept_unresolvable_domains&)dnl
dnl FEATURE(`relay_based_on_MX&)dnl
MAILER(smtp)dnl
MAILER(procmail)dnl
Cwlocalhost.localdomain
其中:
1、2是我打开注解的,是打开相应的认证机制,主要是为了支持outlook
3、4是我添加的,设置相应的mta and msa的所用端口。
5、6要注掉。
1、TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN&)dnl
2、define(`confAUTH_MECHANISMS&, `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN&)dnl
3、DAEMON_OPTIONS(`Port=25,Name=MTA&)dnl
4、DAEMON_OPTIONS(`Port=587,Name=MSA,M=Ea&)dnl
5、dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA&)
6、dnl FEATURE(`accept_unresolvable_domains&)dnl
最后保存。
二、编译sendmail.mc 生成sendmail.cf文件
# m4 /etc/mail/sendmail.mc > /etc/sendmail.cf
#/etc/rc.d/init.d/sendmail restart --重起sendmail服务。
三、检测编译结果。
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
Trying 127.0.0.1.....
Connected to localhost (127.0.0.1).
Escape character is &^]&.
220 webmail.readchina.com ESMTP SENDMAIL 8.12.5/8.12.5;THU,13 FEB 2003.19:12;:59; +0800
EHLO localhost --打个招呼
250-webmail.readchina.com hello localhost [127.0.0.1],pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH GSSAPI LOGIN PLAIN
250-DELIVERBY
250-HELP
quit ---退出
只要输出有LOGIN PLAIN就OK!了,不然,就不能relay mail.
到这里,sendmail就配置完了,你可以天天加一个用户试试看。
邮件用户是系统用户.
#useradd -d /home peng peng
#passwd peng ----设置密码
设置你的foxmail or outlook,要设置上用户需要smtp认证。
有的网友说,必须把你的域名添加到/etc/mail/local-host-names中,我没有添加,也可以发送。我英
为是在局域网中测试,发信没问题,不知道收信有没有问题。你最好加上吧。当你要支持虚拟域时,必
须都要加上的。
四、pop3安装。
redhat8.0中有它的rpm包,是imap-2001a.15.rpm
# rpm -ivh imap-2001a.rpm
#/etc/xinetd.d/ipop3
disable =no
#/etc/rc.d/init.d/xinetd restart --重起pop3服务
#telnet localhost 110
Trying 127.0.0.1...
Connected to localhost (127.0.0.1)
Escape character is &^]&
+OK POP3 localhost v2001.78rh server ready
quit ---退出
有以上显示,为正确。
五、其他设置。
要想更好的使用sendmail,常用到的一些设置:
1、限制最大邮件。
vi /etc/sendmail.cf
# maximum message size
O MaxMessageSize=5000000 (注:5M)
2、最大的群发数目。
vi /etc/sendmail.cf
# maximum number of recipients per SMTP envelope
O MaxRecipientsPerMessage=20 (注:20个)
3、域名文件----local-host-name
可以用他来实现虚拟域名或多域名支持。
/etc/mail/local-host-name
v1mail.com
v2mail.com
.......
4、mail别名文件--aliases。
vi /etc/aliases
系统内部别名:peng:zpeng,hero,mmmn,yt peng是我的用户名,其他的是别名,用逗号隔开。
转发到其他的邮箱:peng:zpeng@sina.com,yt.sohu.com
#newaliases --写到库中
5、邮件控制文件--access
relay、ok、reject和discard。relay可以实现转发。ok是用来允许用户的任意访问,它会覆盖任何其它已建立的检查(实际设置中,最好别设这项,除非你对该用户是绝对信任的);reject可以实现对来访地址的拒绝,它根本就不容许该地址与你的邮件服务器进行连接通信;discard的作用是在接收到传输的邮件消息后,偷偷地把它丢弃掉(在发送者看来,他的邮件的确是接收了,但他并不知道,发送的目的地址根本不可能接收到他的邮件,服务器巧妙地欺骗了他。
vi /etc/mail/access.
localhost.localdomain RELAY ---允许
localhost RELAY
127.0.0.1 RELAY
peng@sina.com ok
@sexgirl.net reject
211.77.22.45 discard
#makemap hash access.db < access --写道库中
6、虚拟用户文件---virtusertable.
这个文件可以mail重名问题。