Linux下sendmail 的配置
用redhat 8.0自帶的sendmail+sasl配置需要認證的郵件服務(wù)器,以及把sendmail8.12.5升級到sendmail.8.12.9
redhat8默認安裝的是sendmail 8.12.5.
系統(tǒng)安裝時,選擇的是custom,sendmail默認安裝。
一、首先,要生成sendmail.cf文件。
一般是編譯sendmail.mc來生成sendmail.cf,這樣的好處是通過編譯,會查看出一些sendmail的設(shè)置錯誤和漏洞。
# cd /etc/mail
# vi sendmail.mc
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')
其中:
1、2是打開注解的,是打開相應(yīng)的認證機制,主要是為了支持outlook
3、4是添加的,設(shè)置相應(yīng)的mta and msa的所用端口。
5、6要注掉。 5允許通過網(wǎng)絡(luò)連接Sendmail,6 禁止不可解析的域名relay郵件
最后保存。
二、編譯sendmail.mc 生成sendmail.cf文件
# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
# /etc/rc.d/init.d/sendmail restart --重起sendmail服務(wù)。
假如你在執(zhí)行m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf 報錯的話,那么檢查是否安裝sendmail-cf.*.rpm,redhat8.0自帶的是
sendmail-cf-8.12.5-7.i386.rpm,在安裝盤的第3張,安裝方法:# rpm -ivh sendmail-cf-8.12.5-7.i386.rpm
三、檢測編譯結(jié)果
1、檢測SASL被編譯到sendmail中。
#/usr/sbin/sendmail -d0.1 -bv root |grep SASL
輸出類似如下:
NETUNIX NEWDB NIS PIPELINING SASL SCANF STARTTLS TCPWRAPPERS
保證你看到SASL就是正確的。
2、檢測25端口:
- [root@fyhtest mail]# telnet localhost 25
- Trying 127.0.0.1...
- Connected to localhost.
- Escape character is '^]'.
- 220 fyhtest.163.net ESMTP Sendmail 8.12.5/8.12.5; Thu, 10 Apr 2003 16:35:42 -0400
- ehlo test
- 250-fyhtest.163.net Hello localhost [127.0.0.1], pleased to meet you
- 250-ENHANCEDSTATUSCODES
- 250-PIPELINING
- 250-8BITMIME
- 250-SIZE
- 250-DSN
- 250-ETRN
- 250-AUTH LOGIN PLAIN
- 250-DELIVERBY
- 250 HELP
只要輸出有LOGIN PLAIN就OK!了,不然,就不能relay mail.
到這里,sendmail就配置完了,你可以天天加一個用戶試試看。
郵件用戶是系統(tǒng)用戶.
#useradd test
#passwd test ----設(shè)置密碼
設(shè)置你的foxmail or outlook,要設(shè)置上用戶需要smtp認證。
把你的域名添加到/etc/mail/local-host-names中.
#p#
四、pop3安裝。
- redhat8.0中有它的rpm包,是imap-2001a-15.i386.rpm
- # rpm -ivh imap-2001a-15.i386.rpm
- 修改/etc/xinetd.d/ipop3
- 把其中disable =yes更改為disable =no
- 修改/etc/xinetd.d/imap
- 把其中disable =yes更改為disable =no
- # /etc/rc.d/init.d/xinetd restart --重起pop3服務(wù)
- [root@fyhtest xinetd.d]# telnet localhost 110
- Trying 127.0.0.1...
- Connected to localhost.
- Escape character is '^]'.
- +OK POP3 localhost v2001.78rh server ready
- [root@fyhtest xinetd.d]# telnet localhost 143
- Trying 127.0.0.1...
- Connected to localhost.
- Escape character is '^]'.
- * OK [CAPABILITY IMAP4REV1 LOGIN-REFERRALS STARTTLS AUTH=LOGIN] localhost IMAP4rev1 2001.315rh at Thu, 10 Apr 2003 16:41:06
- -0400 (EDT)
有以上顯示,為正確。
五、其他設(shè)置
要想更好的使用sendmail,常用到的一些設(shè)置:
1、限制最大郵件。
vi /etc/sendmail.cf
# maximum message size
O MaxMessageSize=5000000 (注:5M)
2、最大的群發(fā)數(shù)目。
vi /etc/sendmail.cf
# maximum number of recipients per SMTP envelope
O MaxRecipientsPerMessage=20 (注:20個)
3、域名文件----local-host-name
可以用他來實現(xiàn)虛擬域名或多域名支持。
/etc/mail/local-host-name
test.com
test1.com
4、mail別名文件--aliases。
vi /etc/aliases
系統(tǒng)內(nèi)部別名:test:fangyh test是我的用戶名,其他的是別名,用逗號隔開。
轉(zhuǎn)發(fā)到其他的郵箱:test:test@sina.com
# newaliases --寫到庫中
5、郵件控制文件--access
relay、ok、reject和discard。relay可以實現(xiàn)轉(zhuǎn)發(fā)。ok是用來允許用戶的任意訪問,它會覆蓋任何其它已建立的檢查(實際設(shè)置中,最好別設(shè)
這項,除非你對該用戶是絕對信任的);reject可以實現(xiàn)對來訪地址的拒絕,它根本就不容許該地址與你的郵件服務(wù)器進行連接通信;discard
的作用是在接收到傳輸?shù)泥]件消息后,偷偷地把它丟棄掉(在發(fā)送者看來,他的郵件的確是接收了,但他并不知道,發(fā)送的目的地址根本不可
能接收到他的郵件,服務(wù)器巧妙地欺騙了他。
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 < access --寫到庫中
6、虛擬用戶文件---virtusertable.
這個文件可以mail重名問題。
例如:你有兩個域名,virt1.com and virt2.com,但是都有test這個用戶:
test@virt1.com 和 test@virt2.com,這是兩個用戶。但對于系統(tǒng)用戶來說,他只認系統(tǒng)用戶test,只能通過一下改:
- vi /etc/mail/virtusertable
test@virt2.com r010
這樣就可以了。在新開一個用戶r010,但是test@virt2.com在客戶端的pop3 and smtp server的用戶名和口令要用r010的。
- # makemap hask virtusertable.db < virtusertable
【編輯推薦】
- Sendmail 配置具體命令詳解
- Sendmail 配置的使用說明
- Sendmail防御DOS攻擊手冊
- sendmail的安裝
- sendmail下設(shè)定郵箱大小
- Sendmail 配置下載及安裝
- Sendmail 配置E-Mail服務(wù)器