因為sendmail自身的安全性不足,配置又復雜,因而不用好久了,既然這次需求,就記錄一下安裝過程吧
1 下載Berkeley DB -- 新的Berkeley DB包, Sendmail通過利用該數據庫的功能, 才能有效的抵擋郵件攻擊(于http://www.oracle.com/technetwork/database/berkeleydb/downloads/index.html?ssSourceSiteId=ocomen 可以下載各種版本)
下載db-4.8.30
2 下載sendmail-8.14.5
3 先安裝db-4.8.30
# tar db-4.8.30.tar
#cd dist
# setenv CC gcc
#cd build_unix 然后運行 ../dist/configure (這個要注意)
# make
# make install
缺省安裝在/usr/local/BerkeleyDB/ 下,這個目錄要記得,安裝sendmail的時候要配置
4.安裝openssl
# ./config --prefix=/usr/local --openssldir=/usr/local/openssl
5 安裝sendmail ,tar開包后
#cd ./sendmail-8.14.5/devtools/Site
# vi site.config.m4
dnl ### Changes for PH_MAP support.
APPENDDEF(`confMAPDEF',`-DNEWDB')
APPENDDEF(`confLIBS', `-ldb')
APPENDDEF(`confINCDIRS', `-I/usr/local/BerkeleyDB.4.8/include')
APPENDDEF(`confLIBDIRS', `-L/usr/local/BerkeleyDB.4.8/lib')
這個配置是要sendmail編譯的時候找最新你安裝DB的頭文件和庫
# Build 編譯通過,編譯完成后會自動生成目錄obj.SunOS.5.9.sun4(這個名字和你系統有關)
# mkdir /usr/share/man/cat1,cat5,cat8三個目錄
# Build install
至此安裝完sendmail
5 另外
1)vi /.cshrc 添加 /usr/local/BerkeleyDB.4.8/lib和 /usr/local/BerkeleyDB.4.8/bin
2)如出來找不到libdb-*.*.so的報錯,可到/usr/local/BerkeleyDB.*.*/lib找到所對應的文件,把對應的文件拷至/usr/lib就可以解決
3)如果報錯找不到libgcc,而你明明已經安裝了libgcc
cp /usr/local/lib/libgcc_s.so.1 到/usr/lib 下就OK了
4)配置文件缺省在/etc/mail下,運行/usr/lib/sendmail -bd -q1h 啟動進程
5)修改access后,需要makemap hash access.db<access;修改sendmail.mc后
m4 /etc/mail/sendmail.mc >/etc/mail/sendmail.cf