Exim

Podstawowym programem przewidzianym w NND do uruchomienia poczty jest exim w wersji 4.X. Jest to prosta w konfiguracji aplikacja MTA, o wysokim stopniu bezpieczeństwa i niezawodności. Exim został specjalnie przygotowany dla dystrybucji NND. Instalacja pakietu odbywa się standardowym poleceniem:
pacman -S exim.

W chwili pisania tego artykułu (27.11.04) dostępny jest exim 4.42. Zapewne w przyszłości, część opisanych tu czynności zmieni się. Zmierzamy bowiem do większej automatyzacji zadań instalacyjnych. Na pewno jednak pozostanie konieczność dokonania zmian w pliku konfiguracyjnym.
Najpierw powinniśmy wygenerować klucz i certyfikat dla swojego serwera. Najpierw wpisujemy:
openssl genrsa -out /etc/mail/exim.key 1024
i czekamy na wygenerowanie klucza.
Kolejne polecenie:
openssl req -new -x509 -days 365 -key /etc/mail/exim.key -out /etc/mail/exim.crt
wymaga odpowiedzi na kilka pytań. Najważniejsze aby w polu Common Name wpisać prawidłową nazwę serwera (np. u mnie szkola.tuchomie.pl).
W katalogu /etc/mail znajduje się plik exim.conf, który należy wyedytować. Najlepiej użyć wbudowanego edytora w mc (F4). Nie trzeba zmieniać wielu domyślnych ustawień, dla ułatwienia do pakietu został dodany przykładowy plik zawierający większość wymaganych ustawień. Podstawowym zadaniem osoby instalującej pakiet jest zmiana przykładowego serwera na swój własny adres (linie 49, 62, 147, 469, 470). Należy również zmienić wpisy, dostosowując wewnętrzną nazwę swojej sieci, serwera i numery IP w LAN (linie 62 – 64). Można też zmienić sobie linię 54 zawierający tzw. baner smtp (w domyślnej konfiguracji jestMicrosoft Exchange SMTP server ;->).
Kolejnym krokiem jest sprawdzenie w linii 234 i 235 jest sprawdzenie poprawności ścieżki do wygenerowanych zabezpieczeń SSL. Pozostaje jeszcze otworzyć do edycji plik /etc/mail/aliases i na końcu tego pliku dopisać sobie użytkownika, który będzie dostawał pocztę roota. Jest to o tyle ważne, że domyślnie żadna poczta od i do roota przychodzić nie może i system w takim przypadku będzie nam generował niepotrzebne błędy w logach.
Teraz jeszcze pozostaje dopisanie exima do rc.conf w sekcji DAEMONS. W przypadku uruchomienia wraz z serwerem pop3 i skanerem antywirusowym kolejność powinna być następująca: exim clamav tpop3d.
W zasadzie exim jest już gotowy do eksploatacji. Jednak najważniejszą właściwością tej kompilacji jest możliwość uruchamiania w bezpiecznym trybie SSL. W tym celu należy po linii 14 w /etc/rc.d/exim dopisać:
/usr/sbin/exim -bd -q15m -oX 465 -tls-on-connect
Pozwoli to na skonfigurowanie klientów pocztowych aby łączyły się z serwerem na porcie 465 z użyciem połączenia SSL (ważne szczególnie w sieciach wifi).
Poniższy fragment jest ważny dla posiadaczy wersji alfa NND.
Aby exim pracował poprawnie musi mieć możliwość identyfikacji hasła użytkownika. Plik shadow nie jest dostępny dla nikogo poza rootem. Exim dla bezpieczeństwa nie paracuje z prawami roota. W tym celu musimy mieć program pwcheck, który wywoływany jest do wyłącznie do sprawdzenia hasła. Należy w tym celu zainstalować pakiet cyrus-sasl (nie został wpisany do zależności, ponieważ i tak wymaga poniżej opisanych czynności) lub bezpośrednio sam program pwcheck (http://szkola.tuchomie.pl/nnd/pwcheck). Jeśli już mamy ten program obojętnie z jakiego źródła, trzeba utworzyć katalog /var/pwcheck a samo uruchamianie pwcheck dopisać do rc.local. Jest to rozwiazanie tymczasowe, ponieważ w przyszłości pakiet cyrus-sasl zostanie dopracowany i będzie zapewne potrafił sam uruchamiać pwcheck. Teraz już możemy uruchomić exima poleceniem: /etc/rc.d/exim start i sprawdzić wyniki jego działania w logach.
Więcej czynności konfiguracyjnych będą musieli wykonać ci, którzy zechcą ustawić relay na inne domeny, ustawić rekordy MX, czy dodatkowo uruchomić procmaila. Warto w tym celu zajrzeć na:
http://www.baseciq.org/linux/eximconf – to świetna witryna opisująca większość zagadnień związanych z eximem.
W pliku konfiguracyjnym exima można również w bardzo prosty spsoób dodać wpis:
#dodane – korzystanie z listy antyspamowej
deny message = Access denied – $sender_host_address listed by $dnslist_domain $dnslist_text
dnslists = dnsbl.sorbs.net
W ten sposób dodamy obsługę tzw. list RBL. Oczywiście adres serwera RBL może być dowolny. Jest to najprostsza forma ochrony antyspamowej. Jendak trzeba pamiętać, że w ten sposób odetniemy ogromną część użytkowników neostrady, bowiem exim korzysta z list RBL bardzo restrykcyjnie. Powyższy wpis należy dodać po istniejących zahaszowanych przykładach w konfiguracji.
PS. Uwaga, numery linii pliku konfiguracyjnego zapewne będą inne w kolejnych wersjach pakietu, edytując plik użyj klawisza F7 w celu wyszukania odpowiednich wpisów.

W. Trąmpczyński (Maciek)


Dodaj komentarz