作者 主題: Fedora Core2 + sendmail + MailScanner + SpamAssassin + clamavmodule + Mailwatch  (閱讀 27885 次)

0 會員 與 1 訪客 正在閱讀本文。

fz150n

  • 憂鬱的高中生
  • ***
  • 文章數: 111
    • 檢視個人資料
不是灌水~ :D

實在是想說,或許版上的人不一定都會習慣上TANet的Linux版,
所以,小弟把先前在BBS貼的文章,轉了過來,希望能提供
給這方面有興趣的人參考。

-------------------------------------------------------------------
發信人: fz150@cis_nctu (帥帥達), 信區: 'Linux'
標  題: Re: MailScanner安裝心得---Part-I
發信站: 交大資科_BBS (Tue Sep  7 23:44:16 2004)
來  源: 220-141-34-239.dynamic.hinet.net

今天才發現根本沒說使用的是什麼系統,
所以除了補充我的硬體環境之外,並增加了一些下載連結,因為,
今天試著連結過去下載時,只要是sourceforge.org的,大部分都
不能直接抓,所以我把Project的網址也貼進來。

安裝系統:RedHat Fedora Core2

測試主機:
ASUS P4B
512 Mb SDRAM
P4 2.4GHz
15 Gb ATA-100 HDD(其他兩個ATA-133是Windows作業系統)

另外,我將我的perl modules列了出來,希望可以提供參考:

以RPM安裝的module :

perl-URI-1.30-1
perl-HTML-Tagset-3.03-29
perl-XML-Parser-2.34-2
perl-libxml-enno-1.02-30
perl-MailTools-1.50-1
perl-Archive-Zip-1.13-1
perl-Compress-Zlib-1.33-4
perl-5.8.3-18
perl-DBI-1.40-4
perl-DBD-MySQL-2.9003-4
perl-DateManip-5.42a-1
perl-HTML-Parser-3.35-5
perl-libwww-perl-5.79-1
perl-libxml-perl-0.07-29
perl-XML-Encoding-1.01-25
perl-Net-CIDR-0.09-3
perl-TimeDate-1.1301-3
perl-MIME-tools-5.411-pl4.3
perl-Convert-BinHex-1.119-2
perl-Parse-RecDescent-1.94-3
perl-suidperl-5.8.3-18.1
perl-Filter-1.30-5
perl-Parse-Yapp-1.05-31
perl-XML-Dumper-0.71-1
perl-DBD-Pg-1.31-5
perl-IO-stringy-2.108-1
perl-Convert-TNEF-0.17-1
perl-Text-Iconv-1.2-fc2

以CAPN安裝的模組:

Authen::SASL
DBD::mysql
Net::LDAP
CGI::SpeedyCGI
Convert::ASN1
Digest::BubbleBabble
Digest::HMAC
Digest::SHA1
Gaim
Inline
Mail::ClamAV
Mail::SpamAssassin
Net::DNS
Net::SSLeay
Pod::Escapes
Pod::Simple
Razor2::Client::Agent
Test::Builder::Tester
Test::Pod
XML::SAX::Base

-----------------------------------------------------------------------
1. 安裝MailScaner主程式:
http://www.sng.ecs.soton.ac.uk/mailscanner/files/4/tar/MailScanner-install-4.33.3-1.tar.gz
tar xzvf MailScanner-4.33.3-1.rpm.tar.gz
進入解壓縮後的目錄,執行:

./install.sh

接著,請執行下面指令,往後不需直接啟動Sendmail,
因為MailScanner會自行呼叫sendmail。
(請勿直接啟動sendmail)

service sendmail stop
chkconfig sendmail off
chkconfig --level 2345 MailScanner on
service MailScanner start

建議等相關軟體安裝完畢再啟動MailScanner,
先啟動也無所謂,等裝好要測試了,就輸入:
/etc/init.d/MailScanner restart

2. 安裝Spamassassin 3.0(或2.64)

Spamassassin 2.64是目前最穩定的版本,因為我想,既然要測試,
乾脆就拉新版的來裝,如果您急於上線測試,裝2.64就好。

先安裝Digest-SHA1-2.10.tar.gz

http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/Digest-SHA1-2.10.tar.gz

tar xzvf Digest-SHA1-2.10.tar.gz
cd Digest-SHA1-2.10
perl Makefile.PL
make
make install
(先別把目錄刪除,因為等會安裝razor-agents-2.61時,需要重新來一次)

接著安裝Spamassassin 3.0
tar xzvf Mail-SpamAssassin-3.0.0-rc2.tar.gz
perl Makefile.PL

如果出現任何錯誤,如某個module::name找不到,
試著上網先找到相關模組,安裝完,重新作一次perl Makefile.PL
一般都會在這兩個地方找得到:
www.cpan.org
www.sourceforge.org

make
make install

以下3-5相關套件不一定要裝,請視需要而定(首次安裝的話,建議跳過去)。

3. 安裝razor
(以下網路位置可能有更動,如果找不到,請到http://www.sourceforge.org/搜尋。)

先裝 razor-agents-sdk

http://voxel.dl.sourceforge.net/sourceforge/razor/razor-agents-sdk-2.03.tar.gz
http://sourceforge.net/projects/razor/

tar xzvf razor-agents-sdk-2.03.tar.gz
cd razor-agents-sdk-2.03
perl Makefile.PL
make
make install

再裝 razor-agents

http://aleron.dl.sourceforge.net/sourceforge/razor/razor-agents-2.61.tar.gz
http://sourceforge.net/projects/razor/

tar xzvf razor-agents-2.61.tar.gz
cd razor-agents-2.61

perl Makefile.PL
(如前說過,如果出現Digest::SHA1 not found,請重新安裝一次Digest::SHA1)

make
make install

接著執行razor-client

razor-client

出現以下訊息:
Creating symlink razor-client <== /usr/bin/razor-check
Creating symlink razor-client <== /usr/bin/razor-report
Creating symlink razor-client <== /usr/bin/razor-revoke
Creating symlink razor-client <== /usr/bin/razor-admin

接著輸入:
razor-admin --register -user=你的電子郵件或名稱 -pass=你的密碼
正常的話,會出現以下的訊息:
Register successful.  Identity stored in /root/.razor/identity-你的電子郵件或名稱

4. 安裝Pyzor

http://easynews.dl.sourceforge.net/sourceforge/pyzor/pyzor-0.4.0.tar.bz2
http://sourceforge.net/projects/razor/

如果不熟bzip2的解壓縮,可以到x-windows底下先解開來,再狠一點,
丟給windows底下的winrar幫你解...^_^

bzip2 -d pyzor-0.4.0.tar.bz2
tar xvf pyzor-0.4.0.tar
cd pyzor-0.4.0

python setup.py build
python setup.py install

更改權限:

chmod -R a+rX /usr/share/doc/pyzor
chmod -R a+rX /usr/lib/python2.3/site-packages/pyzor
(或chmod -R a+rX /usr/lib/python2.2/site-packages/pyzor)
chmod -R a+rX /usr/bin/pyzor /usr/bin/pyzord

5. 安裝DCC

http://www.rhyolite.com/anti-spam/dcc/source/dcc-dccd.tar.Z
http://www.rhyolite.com/anti-spam/dcc/

tar xzvf dcc-dccd.tar.Z
cd dcc-dccd-1.2.51
./configure
make
make install

6. MailScanner-mrtg

確定是否安裝mrtg:
rpm -qa | grep mrtg

如果沒有:
http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/os/Fedora/RPMS/mrtg-2.10.5-3.i386.rpm

rpm -ivh mrtg-2.10.5-3.i386.rpm

不用裝最新版的,你的Fedora光碟底下也有。

下載MailScanner-mrtg

http://unc.dl.sourceforge.net/sourceforge/mailscannermrtg/mailscanner-mrtg-0.08.01-1.noarch.rpm
http://sourceforge.net/projects/mailscannermrtg/

rpm -ivh mailscanner-mrtg-0.08.01-1.noarch.rpm

建立一個檔案夾:
mkdir /var/spool/mailscanner-mrtg

修改fstab

vi /etc/fstab
增加以下兩行(記憶體要夠多!)

none    /var/spool/MailScanner/incoming         tmpfs   defaults        0 0
none    /var/spool/mailscanner-mrtg             tmpfs   defaults        0 0

加入第一行,順便連MailScanner的處理速度都加快了!
(這是MailScanner官方文件建議的做法,不是我自己掰的喔~)

接著修改及確認/etc/MailScanner/mailscanner-mrtg.conf

MailScanner Work Directory = /var/spool/MailScanner/incoming
...
Spool Directory = /var/spool/mailscanner-mrtg
...
Quarantine Directory = /var/spool/MailScanner/quarantine
...
Use SNMP = no
snmp留給熟悉snmp的人去踹~

以後你就可以在網址列輸入:
http://your.host.ip/mailscanner-mrtg/
觀看你的郵件流量。

到Goole找找,有更詳細的設定!

目前為止,還沒將MailScaner啟動,好的,先裝防毒軟體:

7. ClamAV

http://prdownloads.sourceforge.net/clamav/clamav-0.75.1.tar.gz

tar xzvf clamav-0.75.1.tar.gz
cd clamav-0.75.1
./configure
make
make install

如果在/var/log/maillog發現update clamav失敗時,請將freshclam拷貝一份到/usr/bin
cp /usr/local/bin/freshclam /usr/bin/freshclam

如果在MailScanner裡面使用clamavmodule出現問題的話,也請將libcalmav摳一份到/usr/lib:
cp /usr/local/lib/libclam*.* /usr/lib

當然,如果你會cp link的指令,就用link就好了。

注意,在沒有指定額外的路徑時:
ClamAV的執行檔在:
/usr/local/bin:
cdcc
clamav-config
clamdscan
clamscan
dccproc
freshclam
sigtool

設定檔在:
/usr/local/etc:
clamav.conf
freshclam.conf

病毒碼在:
/usr/local/share/clamav:
daily.cvd
main.cvd

7-1 clamavmodule(加快MailScanner掃毒的效率)

安裝clamavmodule至少需要安裝這兩個套件:
http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/os/Fedora/RPMS/perl-Inline-0.44-13.i386.rpm
http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/os/Fedora/RPMS/perl-Parse-RecDescent-1.94-3.noarch.rpm

如果安裝過程出現錯誤,請先把安裝程式找不到的模組裝上,如果還是不行,
請務必很仔細的檢查發生錯誤的地方,大致上常見的問題有模組不正確(Inline比較有問題,
或ClamAV主程式安裝時就有問題),要很有耐心,因為後面還有MailWatch,如果這個裝不起來,
那MailWatch就更不用裝了,如果一次就裝起來,表示你真的真的很厲害也很幸運!

http://search.cpan.org/CPAN/authors/id/S/SA/SABECK/Mail-ClamAV-0.11.tar.gz
tar xzvf Mail-ClamAV-0.11.tar.gz
cd Mail-ClamAV-0.11
perl Makefile.PL
make
make install

小小收工一下,開始動手改/etc/MailScanner/MailScanner.conf

8. 修改/etc/MailScanner/MailScanner.conf

MailScanner的作者Julian Field是個天才,寫的東西卻很嚴謹又平易近人,
我想,設定檔內容雖然多,有時間一定要好好讀,這裡只是一些基本
的設定,幫助您的系統順利運作,不過,還是強調一點,有時間一定要好好
的將所有內容讀一遍喔!

%org-name% = 輸入你喜歡的名稱但不能有任何空白
File Command = /usr/bin/file
Virus Scanners = clamavmodule #可以先用clamav試試。
Monitors for ClamAV Updates = /usr/local/share/clamav/*.cvd
Detailed Spam Report = yes
Include Scores In SpamAssassin Report = yes
Always Include SpamAssassin Report = yes
Notify Senders = no
Notify Senders Of Viruses = no
Notify Senders Of Blocked Filenames Or Filetypes = no
Notify Senders Of Other Blocked Content = no
Scanned Modify Subject = end #每一封被掃描過的信,主旨都會加一段{Scanned}
Scanned Subject Text = {Scanned} #可以是中文
Spam Subject Text = {Spam?}#可以是中文
High Scoring Spam Subject Text = {Garbage?}#可以是中文
Spam Checks = yes
Use SpamAssassin = yes
Required SpamAssassin Score = 6
High SpamAssassin Score = 10
Spam Actions = deliver
High Scoring Spam Actions = store
SpamAssassin Site Rules Dir = /etc/mail/spamassassin
SpamAssassin Default Rules Dir = /usr/share/spamassassin
Debug SpamAssassin = yes

詳細內容請參考下列非常棒的網頁:
http://www.study-area.net/tips/v_scan1.htm
http://atm.ee.nsysu.edu.tw/~fgtseng/system/mailscanner.html
http://www.vbird.org/somepaper/20030905-mailscanner-conf.htm

ftp://ohaha.ks.edu.tw/pub/sample/MailScanner/tw.tar.gz
你可以下載ohaha所辛苦製作的中文回報檔,解壓後,將tw目錄放到:
/etc/MailScanner/reports,然後修改:

%report-dir% = /etc/MailScanner/reports/tw

好的,重新啟動MailScanner吧!隨時監控/var/log/maillog
幫助您調整系統。

MailWatch也是非常好用的工具,舉凡MailScanner下的一舉一動,
都可以藉由MailWatch結合MySQL資料庫監控。

如果需要MailWatch的安裝步驟,請寫信給我,因為我還沒寫呢~
不過,喜歡自己踹的人,可以自己拉tarball回來,邊看邊裝。

小弟技術還不純熟,說穿了就那幾招,高手看完如果覺得哪裡的指令
下得不好,請寫信告訴我,小弟感激不盡!

對了!MailScanner有Webmin的模組,有興趣的人可以裝來用:
http://lushsoft.dyndns.org/mailscanner-webmin/webmin-module-0.9.wbm
記得先備份你所有的設定檔。

fz150
fz150n67@hotmail.com
--
 * Post by fz150 from 220-141-34-239.dynamic.hinet.net
 * Origin: ★ 交通大學資訊科學系 BBS ★ <bbs.cis.nctu.edu.tw: 140.113.23.3>

fishball23

  • 可愛的小學生
  • *
  • 文章數: 1
    • 檢視個人資料
請問redhat8.0適用嗎?

ahwa

  • 懷疑的國中生
  • **
  • 文章數: 79
    • 檢視個人資料
/etc/init.d/MailScanner restart 出現錯誤  我按照你的作法未啥出現那麼多錯的  幫我一下

 /etc/init.d/MailScanner restart
Shutting down MailScanner daemons:
         MailScanner:                                      [失敗]
         incoming sendmail:                                [  確定  ]
         outgoing sendmail:                                [  確定  ]


Starting MailScanner daemons:
         incoming sendmail:                                [  確定  ]
         outgoing sendmail:                                [  確定  ]
         MailScanner:       Can't locate Net/CIDR.pm in @INC (@INC contains: /usr/lib/MailScanner/5.8.3/i386-linux-thread-multi /usr/lib/MailScanner/5.8.3 /usr/lib/MailScanner/i386-linux-thread-multi /usr/lib/MailScanner/5.8.2 /usr/lib/MailScanner/5.8.1 /usr/lib/MailScanner/5.8.0 /usr/lib/MailScanner /usr/lib/perl5/5.8.3/i386-linux-thread-multi /usr/lib/perl5/5.8.3 /usr/lib/perl5/site_perl/5.8.3/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.2/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.1/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.3 /usr/lib/perl5/site_perl/5.8.2 /usr/lib/perl5/site_perl/5.8.1 /usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.3/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.2/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.3 /usr/lib/perl5/vendor_perl/5.8.2 /usr/lib/perl5/vendor_perl/5.8.1 /usr/lib/perl5/vendor_perl/5.8.0 /usr/lib/perl5/vendor_perl . /usr/lib/MailScanner/5.8.3/i386-linux-thread-multi /usr/lib/MailScanner/5.8.3 /usr/lib/MailScanner/i386-linux-thread-multi /usr/lib/MailScanner/5.8.2 /usr/lib/MailScanner/5.8.1 /usr/lib/MailScanner/5.8.0 /usr/lib/MailScanner) at /usr/lib/MailScanner/MailScanner/Config.pm line 34.
BEGIN failed--compilation aborted at /usr/lib/MailScanner/MailScanner/Config.pm line 34.
Compilation failed in require at /usr/sbin/MailScanner line 64.
BEGIN failed--compilation aborted at /usr/sbin/MailScanner line 64.
                                                           [  確定  ]

fz150n

  • 憂鬱的高中生
  • ***
  • 文章數: 111
    • 檢視個人資料
你可以先比照一下列出來的模組:

CGI::SpeedyCGI 0 SpeedyCGI - Speed up perl scripts by running them persistently.  2.22
Crypt::DES 0 Perl DES encryption module  2.03
Digest::HMAC 84 Keyed-Hashing for Message Authentication  1.01
Digest::SHA1 0 Perl interface to the SHA-1 algorithm  2.10
Inline 6 Write Perl subroutines in other programming languages.  1.23
Mail::SpamAssassin 41 Spam detector and markup engine  3.000001
Net::Cmd 13 Network Command class (as used by FTP, SMTP etc)  2.26
Net::SNMP 12 Object oriented interface to SNMP
Net::SSLeay 1 Perl extension for using OpenSSL  1.25
Parse::RecDescent 0 Generate Recursive-Descent Parsers  
Quota 0 Perl interface to file system quotas  1.5.0
Razor2::Client::Agent 18

我不知道你的安裝程序如何,通常會出現這樣的錯誤,
大概都是少了什麼模組,順便回想一下,是不是安裝過程裡面,
有哪些錯誤訊息沒有發現。

上面貼的那些模組,也是從我最近裝的一台機器抓出來的,
同樣是Fedora,只是機器差了些Celeron 550的機種,
我想,你應該可以重新來過一次,確認各個版本的正確性,
並確保安裝過程沒有其他錯誤~

加油~我第一安裝時,弄了一個月耶~

pin99

  • 可愛的小學生
  • *
  • 文章數: 12
    • 檢視個人資料
應該是這個吧!!
« 回覆 #4 於: 2005-01-12 20:09 »
apt-get install perl-suidperl perl-Compress-Zlib

kayin

  • 可愛的小學生
  • *
  • 文章數: 20
    • 檢視個人資料
    • http://www.kayin.idv.tw/xoops2
Re: Fedora Core2 + sendmail + MailScanner + SpamAssassin + c
« 回覆 #5 於: 2006-10-20 17:10 »
看了一下發文的日期實在有段日子了,
而我則是用 Fedora Core 3 來安裝,
不知問題有沒有人可以解答,
但最近實在被廣告信煩的不堪其擾,
遂來找尋相關文章,
進而找到這篇"精華",
但因小弟太嫩,
還是有很多不懂的地方,
想請教前輩們,
以下三個套件的用途是什麼?
為什麼首次安裝可以忽略?
引述: "fz150n"

恕刪...

以下3-5相關套件不一定要裝,請視需要而定(首次安裝的話,建議跳過去)。

3. 安裝razor
(以下網路位置可能有更動,如果找不到,請到http://www.sourceforge.org/搜尋。)

先裝 razor-agents-sdk

http://voxel.dl.sourceforge.net/sourceforge/razor/razor-agents-sdk-2.03.tar.gz
http://sourceforge.net/projects/razor/

tar xzvf razor-agents-sdk-2.03.tar.gz
cd razor-agents-sdk-2.03
perl Makefile.PL
make
make install

再裝 razor-agents

http://aleron.dl.sourceforge.net/sourceforge/razor/razor-agents-2.61.tar.gz
http://sourceforge.net/projects/razor/

tar xzvf razor-agents-2.61.tar.gz
cd razor-agents-2.61

perl Makefile.PL
(如前說過,如果出現Digest::SHA1 not found,請重新安裝一次Digest::SHA1)

make
make install

接著執行razor-client

razor-client

出現以下訊息:
Creating symlink razor-client <== /usr/bin/razor-check
Creating symlink razor-client <== /usr/bin/razor-report
Creating symlink razor-client <== /usr/bin/razor-revoke
Creating symlink razor-client <== /usr/bin/razor-admin

接著輸入:
razor-admin --register -user=你的電子郵件或名稱 -pass=你的密碼
正常的話,會出現以下的訊息:
Register successful.  Identity stored in /root/.razor/identity-你的電子郵件或名稱

4. 安裝Pyzor

http://easynews.dl.sourceforge.net/sourceforge/pyzor/pyzor-0.4.0.tar.bz2
http://sourceforge.net/projects/razor/

如果不熟bzip2的解壓縮,可以到x-windows底下先解開來,再狠一點,
丟給windows底下的winrar幫你解...^_^

bzip2 -d pyzor-0.4.0.tar.bz2
tar xvf pyzor-0.4.0.tar
cd pyzor-0.4.0

python setup.py build
python setup.py install

更改權限:

chmod -R a+rX /usr/share/doc/pyzor
chmod -R a+rX /usr/lib/python2.3/site-packages/pyzor
(或chmod -R a+rX /usr/lib/python2.2/site-packages/pyzor)
chmod -R a+rX /usr/bin/pyzor /usr/bin/pyzord

5. 安裝DCC

http://www.rhyolite.com/anti-spam/dcc/source/dcc-dccd.tar.Z
http://www.rhyolite.com/anti-spam/dcc/

tar xzvf dcc-dccd.tar.Z
cd dcc-dccd-1.2.51
./configure
make
make install

恕刪..................................................................................................................................................................................................

7-1 clamavmodule(加快MailScanner掃毒的效率)

安裝clamavmodule至少需要安裝這兩個套件:
http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/os/Fedora/RPMS/perl-Inline-0.44-13.i386.rpm
http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/os/Fedora/RPMS/perl-Parse-RecDescent-1.94-3.noarch.rpm

如果安裝過程出現錯誤,請先把安裝程式找不到的模組裝上,如果還是不行,
請務必很仔細的檢查發生錯誤的地方,大致上常見的問題有模組不正確(Inline比較有問題,
或ClamAV主程式安裝時就有問題),要很有耐心,因為後面還有MailWatch,如果這個裝不起來,
那MailWatch就更不用裝了,如果一次就裝起來,表示你真的真的很厲害也很幸運!

http://search.cpan.org/CPAN/authors/id/S/SA/SABECK/Mail-ClamAV-0.11.tar.gz
tar xzvf Mail-ClamAV-0.11.tar.gz
cd Mail-ClamAV-0.11
perl Makefile.PL
make
make install

恕刪...

果然遇到問題了,
在安裝到 clamavmodule 這支程式時無法安裝,
已經依照發文大的只是將兩個必備套件安裝,
但是在 make clamavmodule 的時候卻一直不過,
出現如下錯誤訊息
代碼: [選擇]
at /root/Mail-ClamAV-0.17/blib/lib/Mail/ClamAV.pm line 193
BEGIN failed--compilation aborted at /root/Mail-ClamAV-0.17/blib/lib/Mail/ClamAV.pm line 537.
Compilation failed in require.
BEGIN failed--compilation aborted.
make: *** [ClamAV.inl] Error 2

實在是看不懂要如何修正,
懇請前輩指點一下吧,
謝謝.