sendmail的安裝
在Linux或者UNIX平臺下,如何安裝sendmail郵箱呢?由于現在成為Linux系統的缺省郵件配置,以下是sendmail 郵件的安裝步驟。
1、 先安裝cyrus-sasl-2.1.18.tar.gz,sendmail安裝時要用到sasl(簡單認證和安全層協議)的
2、 庫文件的頭文件。
解壓縮:
- # tar -zxvf cyrus-sasl-2.1.18.tar.gz
編譯:
進入剛解壓的源碼目錄,運行以下命令完成安裝。
- #./configure --prefix=/usr/local/sasl2 --enable-login
一定要加--enable-login,因為SASL2默認不支持login這種驗證方式,而OUTLOOK是通過login來進行SMTP驗證的。
- #make # 編譯
- #make install # 安裝
完成以上linux程序安裝三步曲之后,就可以開始配置和測試了。
3、配置SASL
為了把SASL應用于sendmail認證,還需進行一些配置工作。sendmail會到/usr/lib目錄下去找SASL2庫,而我們是把程序安裝在/usr/local/sasl2中,為什么不把軟件安裝在/usr/lib目錄呢?這主要是為了好管理自已安裝的軟件啦。所以我們要在/usr/lib目錄下做一個鏈接:
- # cd /usr/lib
- # ln -s /usr/local/sasl2/lib/* .
ok,接著要在/var/目錄下建一個目錄給saslauthd進程存在臨時數據。
- # cd /var
- # mkdir state
- # cd state
- # mkdir saslauthd
注:如果沒有這些目錄,運行saslauthd時,會提示出錯。
ok,接著為確保CYRUS-SASL2函數庫知道怎樣驗證所收來的SASL認證請求,必須創建一個SASL的配置文件來把MTA程序定義成一個SASL應用。配置文件名為Sendmail.conf(注意是大寫的S),位于/usr/lib/sasl2目錄中,也就是/usr/local/sasl2/lib/sasl2這個目錄,記得上面新建的鏈接了嗎?在該文件中你定義你希望使用的認證數據庫方法,以下這個例子使用saslauthd來驗證認證請求。
- # cd /usr/lib/sasl2
- # echo 'pwcheck_method: saslauthd' > Sendmail.conf
4、測試
ok,現在可以運行saslauthd了,并進行測試。
- # cd /usr/local/sasl2/sbin
- # ./saslauthd -a shadow
用shadow的用戶和密碼進行驗證
- # ./testsaslauthd -u userid -p password
0: OK "Success."
如果出現以上信息,就說明saslauthd正常運行了。testsaslauthd程序默認是沒有編譯的,你需要在源碼目錄樹的saslauthd子目錄中運行 # make testsaslauthd命令生成。
5、sasl2安裝完成后,就要開始安裝sendmail了。
先解壓sendmail源碼。
# tar -zxvf sendmail.8.12.10.tar.gz
如果要sendmail支持SASL,需要修改源碼的位置配置文件site.config.m4。site.config.m4位于源碼目錄樹的devtools/Site。文件中應包含以下行:
- PREPENDDEF(`confMAPDEF', `-DMAP_REGEX')
- APPENDDEF(`confENVDEF', `-DTCPWRAPPERS -DSASL=2')
- APPENDDEF(`conf_sendmail_LIBS', `-lwrap -lsasl2')
- APPENDDEF(`confLIBDIRS', `-L/usr/local/sasl2/lib')
- APPENDDEF(`confINCDIRS', `-I/usr/local/sasl2/include')
第一行配置正則表達式相關內容
第二、三行配置表示在sendmail程序中支持sasl2和tcp_wrapper(可通過hosts.allow和hosts.deny控制訪問)
第四、五行配置指出sasl2的庫文件和頭文件的位置。
ok,接著在編譯前要建立一些用戶和目錄,并確保有正確的權限。
sendmail必須有一個set-group-id(默認是smmsp組)的程序來在一個組可寫的目錄中查詢排隊郵件。所以我們要建立一個smmsp用戶和組。并建立如下目錄并設置相應的權限,具體設置要求可查詢源碼目錄樹下sendmail/SECURITY文檔。
- # groupadd smmsp
- # useradd smmsp -d /var/spool/clientmqueue -s /dev/null
- # mkdir /var/spool/clientmqueue
- # chown -R smmsp:smmsp /var/spool/clientmqueue
- # chmod -R 770 /var/spool/clientmqueue
- # mkdir /etc/mail
- # mkdir /var/spool/mqueue
- # chmod go-w / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue
- # chown root / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue
ok,接下來就可以進入源碼目錄樹開始編譯了。
- # ./Build -c
-c選項能刪除上次編譯產生的文件。
- # ./Build install
編譯完成后就可以進行安裝。~~!
【編輯推薦】
- Sendmail郵件系統的安全解決全方案
- Sendmail郵件系統的安全解決全方案
- Coremail郵件系統入選廣東Linux產品推薦目錄
- Sendmail 配置下載及安裝
- 解決Sendmail 配置的兩種方案
- Sendmail 安裝升級實現方式
- 在php sendmail Windows下配置的具體實現
- Linux系統sendmail配置安裝