SendMail cz.2 - Linux w biznesie

Transkrypt

SendMail cz.2 - Linux w biznesie
Linuxwbiznesie - linux w biznesie, linux w firmie
SendMail cz.2
Autor: Administrator
21.11.2005.
SendMail - cz.2
W pierwszym artykule o SendMailu szczególna uwage poswiecilem przede wszystkim samej instalacji
programu oraz przedstawilem krótka charakterystyke parametrów oraz protokolów transportowych w nim
uzywanych. W tym artykule chcialbym skupić się na konfigurowaniu opcji SendMaila, zarządzaniu
aliasami pocztowymi i spamem oraz testowaniu przeprowadzonej konfiguracji.Konfigurowanie opcji
SendMaila.
SendMail posiada szereg opcji pozwalających dostosować sposób realizacji różnych zadań. Aby
skonfigurować jakąś z tych opcji należy zdefiniować ją w pliku konfiguracyjnym m4 lub wstawić ją
bezpośrednio do pliku sendmail.cf.
W ponizszej tabeli zamiescilem powszechnie stosowane opcje pliku wejsciowego dla makreogeneratora
m4.
confMIN_FREE_BLOCKS (MinFreeBlocks)Jest to opcja, która umożliwia określenie minimalnej liczby
wolnych bloków dysku twardego, przy jakiej wiadomość zostanie przyjęta. Znajduje to głównie
zastosowanie w sytuacji gdy mamy problem z doręczeniem wiadomości zakolejkowanych w buforze
poczty, gdyż zapewnia, że SendMail nigdy nie wypełni całego systemu plików na którym znajduje się
katalog bufora.( Domyślna wartość to 100) confME_TOO (MeToo) Ta opcja określa, czy autor wiadomości
otrzyma kopię, jeżeli pojawi się na rozwiniętej liście odbiorców. (Domyślna wartość to:
false)confMAX_DEAMON_CHILDREN (MaxDeamonChildren) Gdy SendMail odbiera połączenie SMTP z
hosta zdalnego, tworzy nową kopię programu do obsługi przychodzącej wiadomości. W ten sposób
możliwe jest przetwarzanie przez SendMaila wielu jednocześnie przychodzących połączeń. Choć jest to
przydatne, każda nowa kopia SendMaila zajmuje pamięć komputera. Jeżeli zostanie odebrana niezwykle
duża liczba połączeń ze względu na jakiś błąd lub atak złośliwca, możliwe, że SendMail zajmie całą
pamięć systemu. Ta opcja pozwala ograniczyć maksymalną liczbę demonów potomnych, które mogą
zostać utworzone. Gdy liczba ta zostanie osiągnięta, nowe połączenia będą odrzucane, aż któryś z
procesów potomnych zakończy pracę. (Domyślnie jest niezdefiniowana).
confSEPARATE_PROC (ForkEachJob) Opcja ta powoduje, że SendMail będzie tworzył nową kopię procesu
dla każdej dostarczanej wiadomości. Znajduje to zastosowanie, gdy istnieje kilka wiadomości, które stoją
w kolejce ze względu na problem z hostem docelowym. (Domyślnie jest to: false)
confESMTP_LOGIN_MSG (SmtpGreetingMessage) Gdy jest realizowane połączenie z SendMailem,
wysyłane są pozdrowienia. Domyślnie wiadomość ta zawiera nazwę hosta, nazwę agenta przesyłającego
pocztę, numer wersji SendMaila, lokalny numer wersji i aktualną datę. RFC-821 określa, że pierwsze
słowo pozdrowień powinno być pełną nazwą domenową, ale pozostała część może być skonfigurowana
wedle życzenia. Można tu określić makra SendMaila. Na skutek użycia - zostaną rozwinięte. Jedyną
osobą, która zobaczy tę wiadomość, jest administrator systemu diagnozujący problemy z dostarczaniem
poczty lub ciekawscy zainteresowani wykryciem konfiguracji maszyny.
Zarządzanie aliasami pocztowymi.
Aliasy pocztowe to nic innego jak funkcje umożliwiające przekierowywanie poczty do skrzyne pocztowych
o alternatywnych nazwach użytkowników lub procesów na hoście docelowym. Najbardziej znanym i
powszechnie używanym jest przekierowywanie komentarzy i uwag na temat serwera WWW na konto
"webmaster". Oczywiste jest, że taki użytkownik nie istnieje i jest to tylko alias innego użytkownika.
Dosyć często aliasy stosuje się również w programach serwerów list dyskusyjnych.
Wszystkie aliasy są zapisywane w pliku /etc/alias. Program SendMail przegląda ten plik, by stwierdzić, jak
obsłużyć przychodzące wiadomości. W momencie gdy znajdzie w nim wpis zgodny z adresem w
wiadomości, przekierowuje wiadomość we wskazane miejsce.
Aliasom można przypisać trzy podstawowe funkcje:
1) Zezwalają na wywołanie programu z wiadomością jako jego parametrem wejściowym.
2) Stanowią skrót lub dobrze znaną nazwę pozwalające na adresowanie poczty do jednej lub kilku osób.
3) Pozwalają na przesłanie wiadomości do pliku.
Aby została zachowana zgodność z RFC, należy zastosować aliasy dla użytkowników: Postmaster oraz
MAILER-DEAMON.
http://www.linuxwbiznesie.pl
Kreator PDF
Utworzono 8 March, 2017, 13:35
Linuxwbiznesie - linux w biznesie, linux w firmie
W celu zaktualizowania pliku /etc/alases nalezy uruchomic polecenie:
# /usr/bin/newaliases
Zarządzanie spamem czyli niechciana poczta.
Dosyć powszechnym zjawiskiem w ostatnich latach jest rozsyłanie wszelkiego rodzaju reklam do
użtkowników kont pocztowych. Wystarczy, że umieścimy swój adres e-mail w witrnie WWW, zapiszemy
się do pocztowej listy dyskusyjnej, czy też wyślemy artykuł do grupy Usnet a jesteśmy zasypywaniem
ogromną ilością reklam, które tak naprawde nie są nam do niczego potrzebne i tylko zajmują miejsce w
skrzynce pocztowej. Zjawisko masowego wysyłania poczty zostało określone nazwą: spamming.
Na szczęście SendMail posiada mechanizmy pomocne w walce z niechcianą pocztą.
Jednym z nich jest Czarna lista. (ang. Real-time Blackhole list - RBL). Jest to publicznie dostępna usługa,
ktorej zadaniem jest ograniecznie rozsyłania niechcianych reklam. Adresy nadawców spamu i hosty,
które udało się rozpoznać, są ujawniane w Internecie w postaci bazy danych, do której można zadawać
zapytania. Baza powstaje wysiłkiem ludzi, którzy dostali niechcianą pocztę spod jakiegoś adresu e-mail.
Na liście pojawiają się też główne domeny, ze względu na wpadki w zabezpieczaniu się przed
przyjmowaniem spamu. Choć niektórzy narzekają na sposób selekcji informacji przez osoby utrzymujące
listę, jest ona bardzo popularna, a niezgodności są zwykle szybko wyłapywane. Szczegóły na temat
działania usługi można znależć na stronie macierzystej jej twórców - projektu Mail Abuse Protection
System (MAPS) pod adresem http://maps.vix.com/rbl/.
Wlaczajac tę funkcję, automatycznie każemy SendMailowi sprawdzanie adresu nadawcy każdej
przychodzącej wiadomości i porównywania go z czarną listą, by stwierdzić, czy ma przyjąć wiadomość.
Aby skonfigurować czarną listę, należy do pliku sendmail.mc dodać makro FEATURE(rbl).
Rozwiązaniem alternatywnym dla "Czarnej listy" jest tzw. Baza dostępu. (ang. acces_db), którą
charakteryzuje dużo większa elastyczność i kontrola kosztem ręcznej konfiguracji. Kontrola nad
odpowiednim przekazywaniem poczty jest ważna, ponieważ wykorzystana jest tu inna technika
powszechnie używana przez hosty spammujące do obejścia opisanej powyżej "Czarnej listy". Poczta nie
jest wysyłałana bezpośrednio do hosta docelowego, lecz poprzez inny, niepodejrzany host, który na to
pozwala, więc przychodzące połączenie SMTP nie pochodzi od hosta spammującego, lecz od hosta, przez
który jest przekazywane. Aby zabezpieczyć swój własny host przed używaniem go do takich celów,
należy przekazywać pocztę tylko na rzecz znanych hostów. Zasada działania jest prosta. W momencie
odebrania nowego przychodzącego połączenia SMTP, SendMail odczytuje informację z nagłówka i
sprawdza bazę dostępu, aby sprawdzić czy może przyjąc wiadomość.
Sama baza dostępu to zbiór regół opisujących co należy zrobić, gdy wiadomość zostanie odebrana z
określonego hosta. Domyślny plik kontroli dostępu nosi nazwę /etc/mail/access. Tabela ma prosty
format. Każdy wiersz tabeli zawiera regułę dostępu. Lewa strona każdej reguły to wzorzec używany do
dopasowania adresu nadawcy przychodzącej poczty. Może to być pełny adres e-mail, nazwa hosta lub
adres IP. Po prawej stronie wymienione jest działanie, jakie należy podjąć. Istnieje pięć typów działań,
które możesz skonfigurować:
OKPrzyjęcie wiadomości. RELAYPrzyjęcie wiadomości z tego hosta lub od tego użytkownika, nawet jeżeli
nie jest przeznaczona dla naszego hosta. To oznacza przyjęcie wiadomości do przekazania do innych
hostów.REJECTOdmówienie przyjęcia z ogólną informacją.DISCARDOdrzucenie wiadomości za pomocą
programu wysyłającego $#discard ### dowolny tekst Zwrócenie błędu z wykorzystaniem ### jako
kodu błędu (który powinien być zgodny z RFC-821) i „dowolnego tekstu" jako treści wiadomości.
Funkcję bazy dostępu uaktywnia się w pliku sendmail.mc za pomocą delaracji: FEATURE(access_db).
Testowanie konfiguracji.
Ostatnią część artykułu chciałbym po krótce poświęcić przetestowaniu wykonanej konfiguracji programu
SendMail. Ze względu na wbudowany w program tryb "testowania adresu" samo testowanie nie jest
problemem skomplikowanym i z łatwością pozwala na zidentyfikowanie wszelkich błędów. W trybie tym
uruchamiamy SendMaila z wiersza poleceń i podajemy reguły i adres docelowy. SendMail przetwarza ten
adres używając zadanej reguły podstawienia i wyświetla wynik po przejściu każdej reguły. W SendMailu
tryb tep włączamy poprzez dopisanie argumentu -bt.
# /usr/sbin/sendmail -bt
ADDRESS TEST MODE
Enter [ruleset][address]
>
http://www.linuxwbiznesie.pl
Kreator PDF
Utworzono 8 March, 2017, 13:35
Linuxwbiznesie - linux w biznesie, linux w firmie
Domyślnie używa się pliku konfiguracyjnego /etc/mail/sendmail.cf, jednak istnieje możliwość zmiany go
używając argumentu -C.
Poniżej przedstawię zadania jakie są najczęsciej stosowane w etapie testowania.
1) Sprawdź czy SendMail dostarcza pocztę do użytkowników lokalnych.
2) Sprawdź pocztę adresowaną na adres SMTP do konkretnego użytkownika.
3) Sprawdź tę samą pocztę kierowaną na adres typu UUCP.
4) Sprawdź czy poczta adresowana do innych hostów w określonej domenie jest dostarczana
bezpośrednio do tego hosta przez program wysyłający SMTP.
W trzeciej - ostatniej części artykułu przedstawię:
1. Eksploatowanie SendMaila
2. Sztuczki i kruczki programu:)
http://www.linuxwbiznesie.pl
Kreator PDF
Utworzono 8 March, 2017, 13:35