0514-86177077
9:00-17:00(工作日)
2.源碼安裝方式 首先取得最新版本的源代碼,可以從http://www.sendmail.org/或ftp://ftp.sendmail.org/pub/sendmail/兩個網站取得。 然后,將其存放在/usr/local目錄下。并執行以下命令,解壓縮: #cd /usr/local #tar -zxvf sendmail-8.13.4.tar.gz 這樣就會在/home目錄下建立一個sendmail-8.13.4目錄: /usr/local/sendmail-8.13.4/README
/usr/local/sendmail-8.13.4/src /usr/local/sendmail-8.13.4/cf /usr/local/sendmail-8.13.4/doc 接下來需要編譯源代碼。由于Sendmail自己帶了一個編譯程序Build,所以不用make命令: #cd /usr/local/sendmail-8.13.4/src #./Build install 安裝好了該軟件以后,可以使用以下命令來確認sendmail是否已經啟動: #pstree |grep sendmail 如果啟動了Sendmail,那么這個命令將顯示出其相關信息。否則將沒有任何提示地回到命令行。如果沒有啟動,用戶可以手動啟動。如下面命令所示: #service sendmail start 配置Sendmail抑制垃圾郵件 1.關閉Sendmail的Relay功能 所謂Relay功能就是指別人能用這臺SMTP郵件服務器給任何人發信,這樣別有用心的垃圾發送者就可以使用這臺郵件服務器大量發送垃圾郵件,而最后別人投訴的不是垃圾發送者,而是這臺服務器,因此必須關閉Relay。具體的方法就是,到Linux服務器的/etc/mail目錄編輯access文件,去掉“*relay”之類的設置,只留“localhost relay”和“127.0.0.1 relay”兩條即可。注意,修改access文件后還要使用命令使修改生效:makemap hash access.db access。 2.在Sendmail中添加RBL功能 RBL(Realtime Blackhole List)是實時黑名單。 只要在Sendmail中加入RBL認證功能,就會使郵件服務器在每次收信時都自動到RBL服務器上去查實,如果信件來源于黑名單,則Sendmail會拒收郵件,從而使單位的用戶少受垃圾郵件之苦。在Sendmail中添加RBL認證,需要對sendmail.mc添加以下內容:FEATURE(`dnsbl',`relays.ordb.org',`″Email blocked using ORDB.org - see ″')。 最后執行“m4 sendmail.mc>sendmail.cf”和“service sendmail restart”兩條命令,使有關Sendmail的修改生效。 3.使用access數據庫 訪問數據庫定義了什么主機或者IP地址可以訪問本地郵件服務器和它們是哪種類型的訪問。主機可能會列出OK、REJECT、RELAY或者簡單的通過Sendmail的出錯處理程序檢測一個給定的郵件錯誤。主機默認列出OK,允許傳送郵件到主機,只要郵件的最后目的地是本地主機。列出REJECT將拒絕所有的郵件連接。如果帶有RELAY選項的主機將被允許通過這個郵件服務器發送郵件到任何地方。 /etc/mail/access.db是一個散列表數據庫,是使用/etc/mail/access文件產生的,該文件為純文本文件,其格式是“地址 操作”。 下面給出使用上述地址和操作字段,修改/etc/mail/access文件,從而生成/etc/mail/access.db數據庫的操作步驟: 首先,使用vi編輯/etc/mail/access文件。 #vi /etc/mail/access 然后,添加如下內容。 samsung.com RELAY //允許samsung.com的域內所有主機使用服務器轉發郵件 10.0.6.134 RELAY //允許IP地址為10.0.6.134的主機使用服務器轉發郵件 192.168.10 RELAY //允許192.168.10網段內的主機使用服務器轉發郵件 info.com REJECT //拒絕info.com的域內所有主機使用服務器 最后,存盤退出,并且使用makmap命令生成/etc/mail/access.db數據庫即可。 #cd /etc/mail #makemap hash access.db 4.打開Sendmail的SMTP認證功能 雖然可以在Sendmail中使用上述的access數據庫來管理用戶,使其合法地使用SMTP服務器進行郵件的傳遞。但是,由于用戶的不斷增多,以及很多用戶都是在一個網段里面,如果單單依靠上述的access數據庫很難有效地管理SMTP服務器的使用,那樣會使得access數據庫規模增大,管理混亂,從而造成效率降低,甚至出錯。所以,非常有必要使用Red Hat Linux下自帶的身份認證程序庫,配合Sendmail服務器一起使用,對使用SMTP服務的用戶進行身份認證,從而保證該服務的合法使用。 使用前要下載sasl庫,該函數庫提供了安全認證所需函數,下載地址是“ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/”,目前網上最新版本為cyrus-sasl-2.1.21.tar.gz。下面介紹使用該身份認證程序庫配置帶認證的sendmail的步驟: 首先檢查系統是否已經安裝了sasl相關的RPM包。 #rpm -a |grep sasl 一般系統都會默認安裝,如果沒有,則需要使用如下命令安裝四個工具包: #rpm -ivh cyrus-sasl-md5-2.1.10-4 #rpm-ivh cyrus-sasl-2.1.10-4 #rpm-ivh cyrus-sasl-plain-2.1.10-4 #rpm -ivh cyrus-sasl-devel-2.1.10-4 或者通過使用下載下來的源代碼安裝包,進行如下安裝: #cp cyrus-sasl-2.1.21.tar.gz /usr/local #gzip cyrus-sasl-2.1.21.tar.gz #tar -xvf cyrus-sasl-2.1.21.tar #cd cyrus-sasl-2.1.21 #./configure -prefix=/usr --enable-login --with-pwcheck --with-digest #make #make install 然后,查看sendmail與認證相關的配置。 #cat /usr/lib/sasl/Sendmail.conf pwcheck_metod:pam 接著,需要編輯sendmail.mc,修改和認證相關的配置內容,刪除每行的dnl即可。 #cd /etc/mail #vi sendmail.mc 取消如下的幾行注釋: //TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl //define(`confAUTH_ MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl 再接著,使用m4命令生成cf文件。 #m4 sendmail.mc > sendmail.cf 然后,重新啟動sendmail服務器。 #service sendmail restart 最后,測試sasl。 #sendmail -d0.1 -bv root | grep SASL NETUNIX NEWDB NIS PIPELINING SASL SCANF STARTTLS TCPWRAPPERS 通過上述六個步驟的配置工作后,就成功地完成了對帶SMTP認證的Sendmail郵件服務器的配置。
標簽:玉林 紹興 茂名 遼陽 大連 陜西 汕頭 泰安
上一篇:配置Sendmail服務器以防治垃圾郵件
下一篇:第三章 在Debian上用Exim配置郵件服務器
Copyright ? 1999-2012 誠信 合法 規范的巨人網絡通訊始建于2005年
蘇ICP備15040257號-8