Greylisting jest dość powszechnie znaną techniką antyspamową. Jego idea opiera się na tym, że spamujące komputery (często tzw. zombie) nie mają czasu na ponawianie połączenia i starają się wysłać maksymalną ilość spamu w jak najkrótszym czasie łącząc się z różnymi serwerami poczty i nadając przesyłki często nawet bez czekania na odpowiedź serwera lub zakończenie sesji. Porządne serwery poczty natomiast ładnie się przedstawiają i czekają na odpowiedź serwera docelowego, a następnie rozpoczynają nadawanie poczty i jeśli dostaną odpowiedź o błędzie tymczasowym (kod 4xx), to ponawiają przesyłkę za jakiś czas (np. po 5 minutach).
System pocztowy
Wdrażanie systemu pocztowego
Z mojego doświadczenia nabytego przy wdrażaniu różnych systemów wynika, że wdrożenia należy przeprowadzać etapami. Wtedy na każdym etapie można stwierdzić czy działa zgodnie z oczekiwaniami i poprawić działanie lub przejść do kolejnego etapu wdrożenia. Wdrażanie systemu pocztowego nie jest tu wyjątkiem, zakładając, że mamy do realizacji takie wdrożenie jakie opisałem we wpisie „Budowa systemu pocztowego”, można by je podzielić na następujące etapy:
Etap I
Podstawowa konfiguracja nadawania i odbioru poczty dla użytkowników systemowych
Budowa systemu pocztowego
Opis systemu pocztowego opieram na wiedzy, którą nabyłem przy wdrożeniu systemu pocztowego, które wykonałem na Uniwersytecie Śląskim w Katowicach. W pierwszym etapie było to okoł 3 tys. użytkowników, w chwili obecnej system może obsługiwać ok. 40 tys. użytkowników. Całość systemu (oprócz Sophos AV) oparta jest na oprogramowaniu Open Source. Jego głównymi składnikami są:
Postfix – kompilacja
Postfixa kompiluje się trochę inaczej niż większość oprogramowania Open Source, nie posiada on skryptu configure, a odpowiednie opcje i ścieżki do bibliotek dodaje się podczas tworzenia plików Makefile. Tak to autor wymyślił i trzeba przyznać, że wiedział co robi, bo jest to jeden z najmniej problematycznych kodów do kompilacji na różnych systemach operacyjnych.
Aby za każdym razem nie zastanawiać się nad flagami i opcjami kompilacji, zrobiłem sobie skrypt, w którym mam to wszystko ustawione i tylko zmieniam nr wersji.
Pigeonhole – kompilacja i instalacja
Pigeonhole – implementacja Sieve dla Dovecot
Pigeonhole jest nazwą projektu, który implementuje wsparcie dla języka Sieve (RFC 5228) oraz protokołu ManageSieve (RFC 5804) do Bezpiecznego serwera IMAP Dovecot. W literalnym znaczeniu pigeonhole jest dziurą lub wnęką wewnątrz gołębnika dla gniazd gołębi. Jest to również nazwa jednej z serii małych, otwartych przedziałów w szafie używanej do przechowywania lub sortowania poczty. Jako czasownik, opisuje czynność wkładania przedmiotu do jednej z tych szuflad. Nazwa 'Pigeonhole’ zatem dość dobrze opisuje ważną część funkcjonalności, którą ten projekt dodaje do Dovecota: sortowanie i umieszczanie wiadomości e-mail.
Postfix
Postfix jest serwerem poczty, autorem tego oprogramowania jest Wietse Venema. Projekt został rozpoczęty w IBM research jako alternatywa dla szeroko używanego programu Sendmail. Postfix jest szybki, łatwy w administracji i bezpieczny. Na zewnątrz wygląda podobnie do Sendmaila, ale wewnątrz jest kompletnie inny. Skompilowanego z kodów źródłowych Postfixa można uruchomić na wielu systemach UNIXowych, takich jak … Read more
Dovecot – kompilacja i instalacja
Dovecota w systemach linuxowych można zainstalować z pakietów. Odpowiednie pakiety zapewniają też wsparcie dla LDAP, mysql itd. Niestety instalując w ten sposób zwykle nie można liczyć na najnowszą wersję, np. na dzień dzisiejszy w pakietach Ubuntu jest wersja 2.0.19-0ubuntu1, podczas gdy na stronie projektu dostępna jest już wersja 2.1.7. Dlatego też czasem warto skompilować i zainstalować samodzielnie oprogramowanie, nawet jak dostępne jest w pakiecie.
ClamAV
Clam AntiVirus jest zestawem narzędzi antywirusowych dla systemów UNIX, dostępnym na licencji GPL oraz zaprojektowanym z myślą o skanowaniu wiadomości e-mail na poziomie serwerów pocztowych. Pakiet dostarcza wielu narzędzi, takich jak elastyczny i skalowalny wielowątkowy demon, skaner z linii poleceń, i zaawansowane narzędzie do automatycznych aktualizacji baz sygnatur wirusów. Głównym elementem pakietu jest silnik antywirusowy, dostępny w formie współdzielonej biblioteki.
Dovecot
Dovecot jest open sourceowym serwerem IMAP i POP3 działającym na systemach Unixowych i Linuxie, napisanym z naciskiem na bezpieczeństwo. Dovecot jest doskonałym wyborem zarówno dla małych jak i wielkich instalacji. Jest szybki, łatwy do ustawienia, nie wymaga specjalnej administracji i używa niewiele pamięci.