2007 04 Qmail – nowoczesny serwer pocztowy [Bezpieczenstwo]


bezpieczeństwo
Bezpieczeny serwer pocztowy
Qmail  nowoczesny
serwer pocztowy
Agnieszka Kądziołka
Qmail to program typu MTA (ang. Mail Transfer Agent) jego autorem jest Daniel J. Bernstein. Jest to
system transportu poczty elektronicznej powstały jako alternatywa dla sendmaila  programu, który
swego czasu  zasłynął z dużej ilości błędów zagrażających bezpieczeństwu.
mail został napisany z myślą o bezproble- Instalacja potrzebnego
mowym działaniu, posiada duże możliwo- oprogramowania
ści konfiguracji, jest też zadziwiająco szybki. Instalację SPF-a dla qmaila rozpoczynamy od ściągnięcia
Q
W poprzednim artykule pisałam o samym patcha ze strony http://www.saout.de/misc/spf/
qmailu, jego podstawowej instalacji, instalacji patcha Kolejnym krokiem jest nałożenie ściągniętej łatki
SMTP-AUTH, autorespondera oraz programu rblsmtpd (w katalogu ze zródłami qmaila):
do blokowania adresów wpisanych na listach RBL.
cd katalog/qmail-1.03/
Instalacja rozszerzenia SPF patch -p0 < qmail-spf-rc5.patch
SPF (ang. Sender Policy Framework) jest rozszerzeniem po-
zwalającym serwerowi sprawdzić, czy nagłówki maila, Teraz kolej na kompilację i podmianę pliku qmail-smtpd.
który właśnie odbiera, nie zostały sfałszowane. Najprostszy sposób to zatrzymanie qmaila, a następnie
Przykładowo: jeśli osoba posiadająca domenę mojado- wydanie komendy:
mena.pl przy wysyłaniu poczty korzysta z serwera pocz-
towego poczta.mojadomena.pl, to za pomocą SPF-a mo- make setup check
że zdefiniować, że tylko listy wychodzące z tego serwera
pochodzą faktycznie od niej. Wówczas maile które w na- Po pomyślnej kompilacji należy utworzyć plik konfigura-
główku w polu From mają adres @mojadomena.pl, ale zo- cyjny dla SPF. Nazywa się on /var/qmail/control/spfbehavior
stały wysłane z innego serwera pocztowego, mogą zostać i zawiera liczbę oznaczającą sposób zachowania się roz-
odrzucone. szerzenia SPF.
Takie działanie ma na celu ograniczenie ilości spamu Statusy zwracane przez SPF oznaczają, w jakim stop-
oraz zmniejszenie ilości rozsyłających się wirusów. niu przesyłany mail łamie reguły ustalone przez właści-
32 maj 2007
linux@software.com.pl
bezpieczeństwo
Bezpieczeny serwer pocztowy
ciela domeny. Wartości wyższe niż 3 nie po-
Liczba Znaczenie
winny być stosowane, ponieważ istnieje ry-
0 Wyłączenie SPF
zyko odrzucania całkiem poprawnych ma-
ili (na przykład na skutek chwilowej awarii
1 Dodawaj jedynie nagłówki "Received-SPF", nigdy nie blokuj
DNS-a nie będzie możliwe sprawdzenie re-
2 Zwracaj błędy typu "spróbuj pózniej", jeśli masz problemy ze sprawdzeniem rekordu SPF
kordu SPF)
w DNS-ie
3 Odrzucaj maile, jeśli SPF zwróci status fail
Jak przetestować SPF?
4 Odrzucaj maile, jeśli SPF zwróci status softfail
W celach testowych w pliku spfbehavior wpisz
wartość "1", żeby SPF dodawał jedynie na- 5 Odrzucaj maile, jeśli SPF zwróci status neutral
główki w sprawdzanych mailach.
6 Odrzucaj maile, jeśli SPF zwróci status inny niż  przepuszczaj
Po wysłaniu do siebie wiadomości przez
poprawny serwer pocztowy w nagłówku ma- Instalacja systemu ClamAV jako demon
ila powinien pojawić się taki wpis: antywirusowego ClamAV Aby ClamAV działał wydajnie, lepszym
dla qmaila pomysłem jest uruchomienie go jako demo-
Received-SPF: pass Clam AntiVirus (ClamAV) jest systemem na clamd i odwoływanie się do niego po-
(0: SPF record antywirusowym dostępnym na licencji GPL przez program clamdscan. W takiej konfi-
at twojadomena.pl designates przeznaczonym do integracji z serwerami guracji program nie musi za każdym razem
111.222.11.12 as permitted sender) pocztowymi (np. z qmailem), a jego głów- wczytywać z dysku całej bazy wirusów, ale
ne zadanie to skanowanie załączników ma- raz uruchomiony trzyma ją cały czas w pa-
Jeśli natomiast serwer nie jest uprawniony ili. Pomysłodawcą programu jest Tomasz mięci.
do przesyłania poczty z danej domeny, wpis Kojm. ClamAV, aktualnie dostępny w wer- W celu uruchomienia demona należy go
w nagłówku powinien wyglądać tak: sji 0.90, zawiera w swojej bazie ponad 90 000 najpierw skonfigurować. Domyślnie konfi-
sygnatur wirusów. guracja trzymana jest w pliku /usr/local/etc/
Received-SPF: softfail Aby zainstalować system antywiruso- clamd.conf.
(0: transitioning SPF record wy ClamAV, należy pobrać jego najnowszą Pierwszym krokiem powinno być usu-
at jakasdomena.pl wersję ze strony http://www.clamav.net/stable. nięcie linii  Example , żeby w ogóle urucho-
does not designate php#pagestart mić demona. Warto przejrzeć wszystkie opcje
111.222.33.44 ClamAV powinien mieć własnego użyt- konfiguracyjne, aby wiedzieć, jakie oferuje on
as permitted sender) kownika i grupę, z prawami których będzie możliwości. Jednak demon powinien dobrze
działał. Przykładowo  aby stworzyć użyt- działać przy domyślnych ustawieniach.
Jeśli pojawiają się takie nagłówki, oznacza to, kownika oraz grupę o nazwie clamav, nale- Wystarczy więc go uruchomić:
że SPF jest poprawnie zainstalowany. ży wydać polecenia:
W przeciwnym wypadku sprawdz, czy /usr/local/sbin/clamd
na pewno masz plik /var/qmail/control/spfbe- groupadd clamav
havior oraz czy ma on odpowiednie prawa useradd -g clamav i sprawdzić, czy poprawnie skanuje pliki:
(qmail musi móc go odczytać). -s /bin/false
-c "Clam Antivirus" clamdscan /tmp/
Jak sprawdzić czy dana domena clamav
obsługuje SPF? W przypadku problemów warto włączyć wy-
Najprostszym sposobem jest sprawdzenie Następnie należy rozpakować, skompilować soki poziom logowania demona (LogVerbose)
w DNS rekordu typu TXT dla tej domeny. i zainstalować ściągnięty pakiet: i zobaczyć w logach, jaka jest przyczyna błęd-
Można to zrobić np. takim poleceniem: nego działania.
tar -zxvf clamav-0.90.tar.gz
host -t txt onet.pl cd clamav-0.90 Skanowanie poczty  qmail-scanner
./configure Aby zintegrować qmaila z systemem antywi-
Jeśli wśród odpowiedzi będzie linijka zaczy- make rusowym ClamAV, należy skorzystać z pro-
nająca się od v=spf1, tzn. że ta domena ob- make install gramu qmail-scanner.
sługuje SPF. Do poprawnego działania qmail-scanner
Przykładowo  dla domeny onet.pl linij- Aby sprawdzić czy ClamAV działa popraw- potrzebuje qmaila z zainstalowanym patchem
ka ta wygląda następująco: nie, można zrobić prosty test: qmailqueue-patch. Patcha można pobrać z ad-
resu http://www.qmail.org/qmailqueue-patch.
onet.pl descriptive text clamscan -r -l scan.txt clamav-0.90 Nałożenie patcha wygląda następująco:
"v=spf1 ip4:213.180.128.0/19 -all w katalogu nadrzędnym do qmail-1.03 nale-
Po wykonaniu tego polecenia w pliku scan. ży uruchomić:
Jeśli twoja domena nie ma odpowiedniego txt powinna się pojawić informacja o kil-
wpisu w DNS-ie, należy go dodać. Najprościej kukrotnym wykryciu wirusa ClamAV-Test- patch -p0 < qmailqueue-patch
jest skorzystać z kreatora na stronie http:// File. Oznacza to, że ClamAV działa popraw- cd qmail-1.03
old.openspf.org/wizard.html nie. make
www.lpmagazine.org 33
bezpieczeństwo
Bezpieczeny serwer pocztowy
Następnie należy podmienić qmail-smtpd (za- Po instalacji sprawdz, czy użytkownik qma- Od tej chwili qmail powinien już skanować
chowując kopię bezpieczeństwa): ild będzie miał prawa do uruchamiania ska- przechodzące przesyłki. Możesz to przetesto-
nera: wać przesyłając pocztę do siebie i obserwując
cp /var/qmail/bin/qmail-smtpd nagłówki. Powinny tam się pojawić wpisy in-
/var/qmail/bin/ setuidgid qmaild formujące o skanowaniu przesyłki:
qmail-smtpd.old /var/qmail/bin/
cp qmail-smtpd qmail-scanner-queue.pl Received: from 111.222.33.44
/var/qmail/bin/ -g by grendel ... with
qmail-scanner-1.25
i zrestartować qmaila. Jeśli otrzymasz komunikat Can't do setu- (clamdscan: 0.86.2/1290.
Aby zainstalować qmail-scannera, nale- id lub Permission denied, to najprawdopo- spamassassin: 3.1.7.
ży pobrać najnowszą wersję oprogramowa- dobniej nie masz zainstalowanego pakietu Clear:RC:0(111.222.33.44):
nia ze strony http://qmail-scanner.sourceforge. suid-perl (w RedHacie jest to perl-suidperl, SA:0(0.2/5.0):.
net/. w Debianie  perl-suid). Processed in 0.116137 secs);
Kolejnym krokiem jest stworzenie gru- Ostatnią rzeczą, którą należy zrobić jest
py i użytkownika, z poziomu którego będzie ustawienie zmiennej QMAILQUEUE. Zmien- Po dodaniu skanera antywirusowego zna-
działał qmail-scanner: na ta przechowuje wartość używaną przez cząco zwiększa się apetyt qmaila na pa-
qmaila do odnalezienia programu do kolej- mięć. Jeśli masz qmaila wywoływanego
groupadd qscand kowania poczty. Należy w niej podać ścież- z ograniczeniem pamięci do wykorzystania,
useradd -c "Qmail-Scanner kę do programu qmail-scanner. Najwygod- limit ten może okazać się niewystarcza-
Account" -g qscand niejszym sposobem jest dopisanie jej do pli- jący.
-s /bin/false qscand ku /etc/tcp.smtp. Objawia się to najczęściej przy próbie wy-
Jeśli przed modyfikacją plik ten wyglą- słania poczty takim komunikatem:
Po rozpakowaniu ściągniętego archiwum dał np. tak:
trzeba uruchomić konfigurację pakietu: 451 qq temporary problem (#4.3.0)
127.:allow,RELAYCLIENT=""
./configure :allow Trzeba wtedy zwiększyć ilość pamięci do-
--admin konto_mailowe stępnej dla qmaila. W przypadku ClamAV
--domain twoja.domena.pl to po dodaniu obsługi antywirusowej będzie wartością wystarczającą jest 25MB.
--debug no wyglądał tak:
Konta wirtualne
Powyższa konfiguracja oznacza, że wszelkie 127.:allow,  vpopmail dla qmaila
powiadomienia administracyjne qmail-scan- RELAYCLIENT="":allow, Vpopmail jest pakietem na licencji GPL, któ-
ner będzie wysyłał na adres konto_mailowe- QMAILQUEUE= ry umożliwia łatwe zarządzanie wirtualny-
@twoja.domena.pl. "/var/qmail/bin/ mi kontami pocztowymi na serwerze pocz-
Zachowanie podczas wysyłania powia- qmail-scanner-queue.pl" towym.
domień można skonfigurować, używając Aby zainstalować vpopmaila, należy po-
opcji -notify, np. -notify "none"  ozna- Zasadniczo do poczty przesyłanej bezpo- brać najnowszą wersję pakietu ze strony
cza to, że powiadomienia nie będą wysyła- średnio z serwera nie trzeba uruchamiać http://www.inter7.com/index.php?page=vpop-
ne wcale. antywirusa (dlatego w pierwszej linijce mail.
Po skonfigurowaniu pakietu należy nie wpisujemy zmiennej QMAILQUEUE). Jeśli Po rozpakowaniu archiwum dodajemy
zwrócić uwagę na podsumowanie (czy nie jednak serwer obsługuje np. pocztę przez odpowiednie grupy w systemie:
ma błędów), a w szczególności na linijkę: WWW i mogą się pojawić listy z wirusami
przesyłane przez localhosta, to oczywiście tar -zxvf vpopmail-5.*
scanners= przy 127. też warto dopisać odpowiednie cd vpopmail-5.*
"clamdscan_scanner" QMAILQUEUE. groupadd
Po zmianie czegokolwiek w tcp.smtp trze- -g 89 vchkpw
Oznacza ona, że qmail-scanner znalazł zain- ba przebudować jego wersję binarną  tcp. useradd
stalowanego ClamAV i będzie go obsługiwał smtp.cdb: -g vchkpw
w trybie demona. -u 89 vpopmail
Jeśli wszystko jest OK, możesz zainstalo- qmailctl cdb
wać program (uruchom ./configure z opcją Kolejnym krokiem jest kompilacja pakietu.
--install): lub  jeśli nie masz qmailctl: Można użyć opcji domyślnych, ale warto się
zapoznać z możliwościami konfiguracyjny-
./configure tcprules mi tego pakietu. Listę dostępnych opcji zoba-
--admin konto_mailowe /etc/tcp.smtp.cdb czysz wydając polecenie:
--domain twoja.domena.pl /etc/tcp.smtp.tmp <
--notify "none" \ /etc/tcp.smtp chmod 644 ./configure
--debug no --install /etc/tcp.smtp.cdb --help
34 maj 2007
bezpieczeństwo
Bezpieczeny serwer pocztowy
Na uwagę zasługuje np. blokowanie zapi- maila zostanie przesłany mail z odpowied- Następnie wystarczy ponownie wystartować
sywania haseł w postaci niezaszyfrowanej nim komunikatem informacyjnym. Spame- serwer:
(--disable-clear-passwd), wybieranie spo- rzy zauważyli, że bardzo łatwo sfałszować
sobu logowania zdarzeń (--enable-log- nadawcę listu i zaczęli wstawiać adres ofia- qmailctl start
ging) czy współpraca z bazą danych My- ry właśnie w polu zródłowym. Wówczas
SQL (kilka różnych opcji). odbity mail trafia do ofiary z zupełnie nie- Po restarcie qmaila dobrze jest sprawdzić,
Po wybraniu opcji konfiguracji winnego serwera. List w formie zwrotu po- czy nowe oprogramowanie zachowuje się
zwala też w większości przypadków omi- poprawnie. Najprościej będzie wysłać ma-
./configure [opcje konfiguracji] nąć filtry antyspamowe analizujące treści ila na nieistniejący adres w twojej dome-
listów. nie:
czas na kompilację oraz instalację pakietu: Istnieje możliwość takiej konfiguracji
qmaila, aby już na początku transmisji telnet localhost 25
make sprawdzał on, czy konto odbiorcy znajduje ehlo test.com
make install-strip się na serwerze. Jeśli nie  połączenie zosta- mail from: test@test.com
nie przerwane. Do tego właśnie służy patch 250 ok
Po zainstalowaniu pakietu powinniśmy do- realrcptto. rcpt to:
dać komputery, które będą uprawnione do nieistnieje@lokalna.domena
przesyłania poczty przez serwer (można to Instalacja patcha 552 sorry, no mailbox here
również zrobić korzystając z autoryzacji Aby go zainstalować, należy pobrać jego naj- by that name. (#5.1.1)
SMTP-AUTH). nowszą wersję ze strony http://code.dogmap.
org./qmail/. Jeśli otrzymasz komunikat jak powyżej, zna-
echo "192.168.1.:allow, Następny krokiem jest przejście do ka- czy to, że wszystko działa zgodnie z oczeki-
RELAYCLIENT=\"\"" >> talogu ze zródłami qmaila i nałożenie ścią- waniami.
~vpopmail/etc/tcp.smtp gniętej łatki:
Dodatkowe uwagi
Ostatnim krokiem jest dodanie domen, które cd katalog/ Realrcptto w trakcie trwania sesji SMTP
mają być obsługiwane przez serwer: qmail-1.03/ sprawdza, czy możliwe jest dostarczenie
patch -p1 maila do podanego odbiorcy. W tym celu
cd /home/vpopmail/bin < qmail-1.03-realrcptto- sprawdza konta fizyczne, konta wirtualne
./vadddomain test.com.pl 2006.12.10.patch oraz aliasy. Jeśli na serwerze mamy alias
.qmail-default, to używanie qmail-realrcptto
oraz użytkowników w tych domenach: Niestety część poprawek może zostać od- mija się z celem, gdyż alias ten pasuje do
rzucona, jeśli wcześniej były zakładane in- wszystkich odbiorców, którzy nie zostali
./vadduser jakisuser@test.com.pl ne patche. wcześniej znalezieni przy dostarczaniu pocz-
Należy wtedy wejść do plików z rozsze- ty.
Po wykonaniu powyższych komend powi- rzeniem .rej i sprawdzić, jaki fragment ko- W przypadku vpopmaila plik ten jest
nien zostać utworzony katalog /home/vpop- du nie został zaaplikowany, a następnie rę- automatycznie zakładany i wykorzysty-
mail/domains/test.com.pl/ i w nim katalogi cznie dokonać odpowiednich poprawek wany do odbijania maili lub do przekie-
użytkowników. w zródłach. rowywania błędnie zaadresowanej pocz-
Jeśli serwer jest uprawniony do odbioru Na pewno konflikt tego typu występuje ty na konto jednego z użytkowników
poczty dla domen, które mu zostały przypi- przy bardzo popularnym patchu qmail-smt- (tzw. catch-all account). Plik .qmail-default
sane (rekord MX w DNS-ie wskazuje na nie- pauth. jest również wykorzystywany do podpi-
go), to w tym momencie przesłanie poczty Jeśli masz już poprawnie zmodyfikowa- nania wszelkich filtrów, np. antyspamo-
na adres jakisuser@test.com.pl powinno spo- ne zródła, kompilacja sprowadza się do po- wych. Dlatego też, jeśli zdecydujemy się na
wodować pojawienie się listu w katalogu lecenia jego usunięcie, musimy przenieść obsługę
/home/vpopmail/domains/test.com.pl/jakisuser/ filtrów w inne miejsce, np. do qmail-scan-
Maildir/new/. make nera.
Jeśli tak się stało, można uznać, że pakiet
vpopmail działa prawidłowo. Po pomyślnej kompilacji musisz zatrzymać Podsumowanie
qmaila: Dzięki wpółpracy serwera qmail z roz-
Patch realrcptto szerzeniem SPF, programem antywiruso-
do qmaila qmailctl stop wym, systemem antyspamowym, syste-
Zwykle serwer pocztowy działa tak, że po mem vpopmail oraz patch realrcptto blo-
otrzymaniu maila do dostarczenia przyj- po czym podmienić dwa pliki: kujący wysyłanie niepotrzebnych zwro-
muje go do kolejki. Dopiero gdy nadej- tów maili otrzymujemy stabilny, bezpiecz-
dzie jego pora, mail jest pobierany z kolej- cp qmail-smtpd ny, funkcjonalny a zarazem nowoczesny
ki i następuje próba jego dostarczenia  wy- /var/qmail/bin/ serwer pocztowy.
szukiwany jest odbiorca listu. Gdy odbior- cp qmail-qmtpd
ca nie zostanie odnaleziony, do nadawcy /var/qmail/bin/
www.lpmagazine.org 35


Wyszukiwarka

Podobne podstrony:
2007 04 Analiza ryzyka – Zarządza nie Bezpieczeństwem Informacji
2007 04 Nowoczesna metoda oceny rehabilitacji u pacjentów po endoprototezoplastyce st biodrowego
2007 08 Podstawy zabezpieczenia serwerów [Bezpieczenstwo]
2007 03 Stawiamy bezpieczny serwer plików [Bezpieczenstwo]
2007 04 Tworzenie kopii bezpieczeństwa danych [Administracja]
qmail Szybki i wydajny serwer pocztowy
2007 04 Rehabilitacja po europejsku
2007 04 Drawing Set Graph Visualization with Graphviz
2007 04?7 – menedżer okien dla wymagających [Poczatkujacy]
2007 04 Go with the Flow
2007 04 Choosing a Router for Home Broadband Connection [Consumer test]
2007 04 01
Exchange Server zmiana właściwości bazy danych serwera pocztowego
Życie wet 2007 04 Zespół wrzodów żołądka u koni
2007 04 Pozycje ułożeniowe w masażu leczniczym cz 2
2007 04 Od Annasza Do Kajfasza

więcej podobnych podstron