transparent a virus... Dodał: grzywka18 Dnia: 2008-05-13 11:19:58 hmm Dodał: dzibi Dnia: 2007-12-12 10:01:14 Bez tytułu Dodał: grzywka18 Dnia: 2007-12-11 17:46:06 Bez tytułu Dodał: termid Dnia: 2007-05-09 18:01:11 Bez tytułu Dodał: sarelo33 Dnia: 2006-12-30 23:50:14 Jest ok ale.. Dodał: theviant Dnia: 2006-11-16 08:10:05
Google
Newsletter
Zapisz się na nasz newsletter, jeżeli chcesz być na bieżąco informowany o aktualnościach..
Konfiguracja systemu pocztowego we FreeBSD na bazie qmaila - 1. Instalacja
wtorek, 25 listopada 2003 -
Napisał: Artur Kulda (22753 odsłon)
W celu większej funkcjonalności związanej z kontrolą spamu zainstalowałem moduł SPAMCONTROL, który udostępnia kontrolę wielu aspektów, o których już wcześniej wspominałem przy opisie konfiguracji. Co potrafi ten moduł? Oczywiście jest to dokładnie opisane na stronie domowej projektu SpamControl. Schematycznie jego działanie przedstawione jest na załączonym rysunku w formacie pdf.
Instalacja
Instalacja modułu polega na spaczowaniu źródeł qmaila, ponownej kompilacji i podmianie kilku oryginalnych plików qmaila na nowo utworzone. Najprościej można to wykonać poprzez zapaczowanie w "ports" już skompilowanego qmaila i jego rekompilację z reinstalacją. Koniecznie i na wszelki wypadek należy zabezpieczyć sobie aktualne pliki konfiguracyjne qmaila, skrypty startowe, bazę użytkowników i relayowania, tak aby instalacja nie "przykryła" nam naszych cennych oryginałów tymi dystrybucyjnymi. Po zabezpieczeniu tych plików ja zrobiłem to tak:
$> cd /usr/ports/mail/qmail
$/usr/ports/mail/qmail> make
Tutaj wykonuje się ściągnięcie źródeł qmaila (o ile ich nie ma w systemie) i jego kompilacja, usuwamy także znacznik zakończenia kompilacji i następnie paczujemy źródła modułem SpamControl, sprawdzamy czy wszystko przebiegło poprawnie, instalujemy qmaila:
$/usr/ports/mail/qmail> cd work
$/usr/ports/mail/qmail/work> ls -al .[bi]*_done.qmail-1.03_1
-rw-r--r-- 1 root wheel 0 Nov 11 11:22 .build_done.qmail-1.03_1
-rw-r--r-- 1 root wheel 0 Nov 11 11:37 .install_done.qmail-1.03_1
$/usr/ports/mail/qmail/work> rm .[bi]*_done.qmail-1.03_1
$/usr/ports/mail/qmail/work> cd qmail-1.03
$/usr/ports/mail/qmail/work/qmail-1.03> fetch http://www.fehcom.de/qmail/spamcontrol_180_tgz.bin
$/usr/ports/mail/qmail/work/qmail-1.03> tar -zxvf spamcontrol_180_tgz.bin
$/usr/ports/mail/qmail/work/qmail-1.03> ./spamcontrol.sh
$/usr/ports/mail/qmail/work/qmail-1.03> cat spamcontrol.log
Running spamcontrol.sh INSTALLATION at Mon Nov 11 11:20:04 CET 2002 for Revision 180 <<<
--> Makefile copied to Makefile.180
--> qmail-smtpd.c copied to qmail-smtpd.c.180
--> qmail-smtpd.8 copied to qmail-smtpd.8.180
--> qmail-showctl.c copied to qmail-showctl.c.180
--> qmail-control.9 copied to qmail-control.9.180
--> qmail-log.5 copied to qmail-log.5.180
--> ipme.c copied to ipme.c.180
$/usr/ports/mail/qmail/work/qmail-1.03> cd ../..
$/usr/ports/mail/qmail> make install clean
Na koniec przywracamy oryginały naszych plików konfiguracyjnych które zostały zastąpione dystrybucyjnymi z oryginałów w źródłach qmaila.
Całą operację wykonujemy po zatrzymaniu procesów wysyłki i odbioru poczty qmaila. Po poprawnej instalacji standardowo możemy uruchomić serwer pocztowy naszymi skryptami startowymi. Należy "zająć się" nowymi plikami konfiguracyjnymi qmaila i w zależności od potrzeb je utworzyć (z właściwymi prawami). Od tego momentu
dostępne są także zaktualizowane manuale do qmail-smtpd oraz qmail-control a także
qmail-log. Nową funkcjonalność qmaila wykorzystamy do lepszej ochrony antyspamowej poprzez wykorzystanie baz spamerów z serwisu PolSpam. Nie zapominajmy o możliwości filtrowania poczty przy pomocy pakietu
maildrop, który moim zdaniem jest dużo łatwiejszy w konfigurowaniu regułek.
MailDrop
Pakiet ten możemy standardowo zainstalować przy pomocy mechanizmu "ports". Znajdziemy go poprzez tradycyjne przeszukanie bazy ports:
$/usr/ports> make search key=maildrop
Port: maildrop-1.3.8
Path: /usr/ports/mail/maildrop
Info: Replacement local mail delivery agent, similar to procmail
Maint:
Index: mail
B-deps: gdbm-1.8.0
R-deps: gdbm-1.8.0
$/usr/ports> cd mail/maildrop ; make install clean
Każdy użytkownik może przy jego pomocy filtrować pocztę dostarczaną do skrzynki pocztowej. Oto prosty przykład odfiltrowania Koreańskiego spamu po kodowaniu zawartym w nagłówku poczty:
jkowalski@jakishost> cd
jkowalski@jakishost:~> cat .qmail
| preline /usr/local/bin/maildrop
jkowalski@jakishost:~> head -20 .mailfilter
# filtrowanie wedlug kodowania i won do folderu SPAM
if ( /^Content-Type: text/html; charset="ISO-8859-11"/ )
{
exit
}
if ( /^Content-Type: text/html; charset="ks_c_5601-1987"/ )
{
exit
}
if ( /^Content-Type: text/html; charset="euc-kr"/ )
{
exit
}
if ( /^Content-Type: text/html; charset="EUC-KR"/ )
{
exit
}
# a reszta dostarczana normalnie
to "$HOME/Maildir/"
PolSpam
Do funkcjonalności modułu SpamControl warto dodać synchronizację z bazami adresów spamerów. Jest to bardzo proste i błyskawiczne do wykonania. Najlepszym krajowym serwisem tego typu jest PolSpam i stamtąd właśnie będziemy pobierać bazę spamerów. Można to robić albo poprzez pocztę albo poprzez cykliczne pobieranie aktualizacji baz protokołem http i ja tak właśnie zrobiłem.
Skrypty
Cytując autorów:
"Na potrzeby cyklicznej synchronizacji autorzy udostępnili dwa skrypty w Perlu, które automatyzują to zadanie. Skrypt sync_web.pl dokonuje synchronizacji lokalnej bazy adresów poprzez połączenie się z serwerem WWW PolSpamu, natomiast skrypt sync_mail.pl umożliwia przetworzenie listy zmian wysyłanych przez PolSpam w formie wiadomości z listy mailingowej.
Obydwa skrypty aktualizują lokalną bazę adresów w pliku o formacie .db, która może być wykorzystana do blokowania spamu przez serwery obsługujące bazy w takim formacie (np. sendmail). Dla oprogramowania wymagającego baz w formacie tekstowym istnieje możliwość, aby skrypt po każdej aktualizacji wygenerował plik tekstowy zawierający adresy z bazy w jednym z formatów: plain, sendmail, qmail, exim czy też procmail.
Kod źródłowy skryptów oraz dokumentacja zawarta jest w pliku polspam.tgz. Skrypty udostępnione są na zasadach licencji BSD - można je używać jak i modyfikować bez żadnych ograniczeń."
Pobieramy skrypty synchronizujące i po drobnych modyfikacjach typu eksportu do pliku tekstowego oraz jego położenia które to należy poprawić w pierwszych kilkunastu liniach w skrypcie sync_web.pl, zaprzęgamy go do pracy:
$> cd /var/qmail/bin
$/var/qmail/bin> fetch http://www.polspam.info/scripts/polspam.tgz && tar -zxvf polspam.tgz
$/var/qmail/bin> chmod a+rx sync_web.pl
$/var/qmail/bin> grep ^my sync_web.pl | head -3
my $db = "/var/qmail/control/spammers"; # Path to .db file [required]
my $type = "qmail"; # Type out output file [optional]
my $file = "/var/qmail/control/blackholedsender"; # Path to output file [optional]
Synchronizacja
Ustawiłem typ eksportu jako plik dla qmaila (prosty plik tekstowy) na /var/qmail/control/blackholedsender co zabroni przyjmowania połączeń ze spamerskich hostów oraz przechowywanie bazy spamerów /var/qmail/control/spammers. Być może perl będzie wymagał modułu
LWP, który już tradycyjną metodą zainstalujemy z "/usr/ports/www/p5-libwww". Teraz nasz skrypt jest gotowy do użycia. Pierwszy raz kontrolnie uruchamiamy go "z ręki" i sprawdzamy czy wszystko poszło dobrze. Pierwsze ściągnięcie kompletnej bazy spamerów "trochę" trwa ale każda kolejna synchronizacja "dociąga" juz jedynie same zmiany:
$> cd /var/qmail/control
$/var/qmail/control> /var/qmail/bin/sync_web.pl