Narzędzia użytkownika

Narzędzia witryny


materialy:podstawy-administracji:poczta

Poczta elektroniczna

Wstęp

Poczta elektroniczna, obok stron WWW, jest najbardziej popularną usługą wykorzystywaną aktualnie w Internecie. Dzięki niej komunikacja jest tania, szybka i efektywna, co przedkłada się na jej zastosowanie w biznesie i wszędzie tam, gdzie skuteczność przekazywania informacji ma duże znaczenie. Większość firm korzysta z tego medium nie tylko do komunikacji z klientami, ale przede wszystkim aby usprawnić komunikację wewnątrz firmy, między swoimi pracownikami. Dlatego też administratorzy przykładają wielką wagę do poprawnego działania serwera pocztowego.

Usługa poczty jest w tej chwili narażona na niechciane przesyłki – spam i wirusy. Również w obowiązku administratora leży poprawne skonfigurowanie serwera poczty, aby uniemożliwić jak największej liczbie niechcianych listów dotarcie do adresata.

Twórca oprogramowania Postfix, Wietse Venema, kierował się chęcią utworzenia prostszego w konfiguracji i bezpieczniejszego zamiennika popularnego serwera Sendmail szeroko stosowanego w systemach rodziny UNIX. Dodatkowym założeniem była pełna kompatybilność z sendmailem tak, aby programy które z niego korzystały nie musiałby być modyfikowane. Wszystkie założenia zostały spełnione dzięki czemu produkt ten jest na tyle popularny, iż wiele dystrybucji używa go jako domyślnego serwera pocztowego. Będzie on również omówiony na niniejszej stronie.

Teoria

Podstawowe pojęcia

Działanie poczty zależy od wielu programów, z których każdy ma swoją rolę. Istnieje co najmniej kilkanaście implementacji oprogramowania do przesyłania poczty, istnieje wiele klientów poczty. Aby usystematyzować opis różnych aplikacji i serwisów w kontekście ich zadań, wprowadzono odpowiednią terminologię, która definiuje aktorów procesu wysyłki i odbioru poczty elektronicznej.

Mail User Agent (MUA)

Działanie poczty elektronicznej związane jest z wysyłaniem i odbieraniem maili przez użytkownika, który korzysta z MUA (ang. Mail User Agent), czyli klienta poczty elektronicznej. Za pomocą niego może utworzyć wiadomość elektroniczną, wysłać ją do odbiorcy jak i pobrać maile ze skrzynek pocztowych znajdujących się na innych serwerach. Przykładowi agenci poczty to: MS Outlook, Mozilla Thunderbird, The Bat, Kmail, mutt, pine, SquirrelMail, Horde IMP. MUA korzysta do odbierania poczty łącząc się najczęściej z serwerami POP3 (ang. Post Office Protocol ver. 3) lub serwerami IMAP (ang. Internet Message Access Protocol) natomiast wysyła pocztę komunikując się z serwerami SMTP (ang. Simple Mail Transfer Protocol).

Mail Transfer Agent (MTA)

Program typu MTA (ang. Mail Transfer Agent) służy głównie do przesyłania poczty między serwerami, z tym że inicjatorem wysyłki maila jest zawsze klient pocztowy, który łączy się z MTA. MTA otrzymuje pocztę od klienta pocztowego, czyli od MUA lub od innego programu typu MTA. MTA mogą zatem współpracować ze sobą. Tak jak routery służą do trasowania pakietów, czyli wybierania najlepszej ścieżki dla pakietów, tak MTA trasują przesyłanie e-maili decydując jaką drogą mają one wędrować, aby dotrzeć do miejsca przeznaczenia. Decyzja trasowania jest podejmowana na podstawie konfiguracji własnej MTA oraz wpisów do serwerów DNS, z których korzysta MTA. Agent ten przede wszystkim korzysta z rekordów MX, choć może również z rekordów A. Serwery pocztowe SMTP służące do wysyłania poczty są sztandarowym przykładem programów typu MTA. Przykładowe oprogramowanie MTA:

Porównanie różnych MTA podczas wyboru domyślnego MTA dla Debiana.

Mail Delivery Agent (MDA)

MDA (ang. Mail Delivery Agent) działa na komputerze (serwerze) na którym przechowywana jest poczta użytkownika. Jest interfejsem dla programów MTA, pozwalającym na przekazanie maili do skrzynki pocztowej użytkowników. Za jego pomocą serwer SMTP może zapisywać pocztę na dysku twardym serwera. Przykładem MDA jest procmail.

Mail Access Agent (MAA)

Programy typu MAA (ang. Mail Access Agent) odpowiedzialne są za dostęp do bazy maili, potrafią pobrać ze skrzynki pocztowej maile i przesłać je do klienta, czyli do programu typu MUA. Przykładami takich programów są serwery POP3 i IMAP.

Podział funkcji związanych z obsługą poczty na odrębnych agentów nie oznacza, iż do każdego z nich potrzebne jest osobne oprogramowanie. Niektóre programy pocztowe mają zaimplementowaną funkcjonalność różnych agentów jednocześnie. Przykładowo, omawiany w tym rozdziale Postfix, będący MTA ma możliwość pracy jako MDA. Jego konfiguracja pozwala także na wykorzystanie innego, zewnętrznego oprogramowania typu MDA, jeśli zachodzi taka potrzeba.

Etapy komunikacji mailowej

Etap wysyłki

Do napisania wiadomości e-mail użytkownik korzysta bezpośrednio z klienta poczty, np. MS Outllok (MUA). Za pomocą klienta przesyła również tą wiadomość do serwera SMTP (MTA). Serwer ten, na podstawie konfiguracji, wysyła tą wiadomość do innego serwera SMTP (MTA), ten natomiast do końcowego SMTP (MTA), który jest zainstalowany w systemie ze skrzynką pocztową adresata. Końcowy serwer SMTP (MTA) wykorzystując, przykładowo, program procmail (MDA) zapisuje pocztę w skrzynce pocztowej w zdefiniowanym formacie.

Sam mail może więc wędrować przez wiele serwerów SMTP (MTA). Może być też tak, że trafi tylko do jednego serwera SMTP, jeśli na przykład odbiorca maila ma skrzynkę pocztową na tym samym serwerze co nadawca i nadawca wskazał ten właśnie serwer SMTP w konfiguracji programu pocztowego.

Etap pobierania poczty

Użytkownik, który chce odebrać pocztę uruchamia program pocztowy (MUA) i łączy się z serwerem IMAP lub POP3 (MAA). Serwer dostarczania poczty do klienta pobiera ze skrzynki pocztowej (z bazy danych zawierającej maile) pocztę i przesyła ją do klienta pocztowego (MUA).

Praktyka

Analiza przypadku - założenia

Aby zobrazować działanie serwera pocztowego od praktycznej strony dalsze opisy będą prowadziły czytelnika do skonfigurowania dwóch serwerów MTA, które będą między sobą się komunikowały i przekazywały maile. Jeden MTA będzie zainstalowany na dystrybucji CentOS w wersji 6.4, drugi MTA będzie zainstalowany na dystrybucji Debian w wersji 7.4. Jeśli chcesz przetestować praktycznie serwery pocztowe, możesz wykonać na tych dystrybucjach komendy krok po kroku wg poniższych opisów.

Założenia:

  • serwer pierwszy o nazwie centos6.test.itmz.pl będzie obsługiwał pocztę użytkowników w domenie lodz.test.itmz.pl
  • serwer drugi o nazwie debian7.test.itmz.pl będzie obsługiwał pocztę użytkowników w domenie krakow.test.itmz.pl:
  • na każdym z serwerów pocztowych będą utworzone 2 konta pocztowe o nazwie szymon i tymon
  • podsumowując w sieci będą działały 4 konta pocztowe:
    • szymon@lodz.test.itmz.pl
    • tymon@lodz.test.itmz.pl
    • szymon@krakow.test.itmz.pl
    • tymon@krakow.test.itmz.pl

Konta pocztowe

Każde konto użytkownika systemu może być kontem do obsługi poczty. Ponieważ w dalszych przykładach prezentujemy obsługę poczty z linii komend logując się na konta użytkowników, należy najpierw te konta utworzyć (na obu serwerach):

useradd -m szymon -s /bin/bash
useradd -m tymon -s /bin/bash

Test konfiguracji domyślnej

Obecnie praktycznie każda dystrybucja ma już zainstalowany i prekonfigurowany MTA choćby po to, aby dostarczać obsługiwać pocztę wewnątrz systemu i aby wysyłać pocztę również poza system. W dystrybucji Debian 7.4 jest to exim4, w dystrybucji CentOS 6.4 jest to Postfix. Zanim zademonstrujemy konfigurację MTA proponujemy przetestować działanie MTA w konfiguracji domyślnej.

MTA jest ściśle związany z protokołem SMTP, którego serwis powinien nasłuchiwać na porcie 25 TCP, dlatego można sprawdzić czy ten port jest otwarty:

netstat -ltpn | grep :25

Otwarty port oznacza, że MTA działa już w naszym systemie.

Aby przetestować działanie poczty wewnątrz systemu utwórz dwa konta testowe i wyślij maila pomiędzy nimi zgodnie z poniższymi sugestiami.

Szybka wysyłka maila w konsoli - mailx

Do szybkiego wysłania maila - jeden wpis w linii komend w konsoli - można użyć oprogramowania mailx.

Poniższe komendy sprawdzą, czy komenda istnieje, jeśli nie - uruchomią instalator.

Debian:

which mailx || apt-get install bsd-mailx

CentOS:

which mailx || yum install mailx

Wysyłka maila wewnątrz systemu (nazwa użytkownika bez @domena):

echo "Tresc maila" | mailx -s "Temat maila" szymon

Wysyłka maila na zewnątrz:

echo "Tresc maila" | mailx -s "Temat maila" tymon@warszawa.test.itmz.pl

Wysyłka i odbiór maila z pomocą mutt

Do odbioru i wysyłki poczty z poziomu konsoli systemu można użyć wygodnego w użyciu mutt. Aby go zainstalować w Debianie:

apt-get install mutt

CentOS:

yum install mutt

Po uruchomieniu programu pojawia się lista tematów maili, które są aktualnie w skrzynce użytkownika, wybierając strzałkami interesujący mail i naciskając Enter można zobaczyć jego treść.

Aby w mutt przygotować nowego maila nalezy nacisnąć klawisz m po jego uruchomieniu i dalej wypełniać pola zgodnie z sugestiami programu.

Aby wyjść z programu mutt należy nacisąć klawisz q.

Przygotowanie systemu do instalacji - właściwa nazwa hosta

Jednym z kluczowych elementów konfiguracji serwisów, a w szczególności serwisów pocztowych jest właściwa konfiguracja nazwy systemu, która potem będzie wykorzystywana do obsługi poczty. Obsługa domeny pocztowej lodz.test.itmz.pl przez serwer pocztowy nie wymaga, aby serwer ten miał taką samą nazwę (jeden serwer może obsługiwać wiele domen jednocześnie, podobnie jak jeden serwer www obsługuje strony o różnych nazwach domenowych).

To studium przypadku zakłada wymianę maili między systemami o nazwach centos6.test.itmz.pl oraz debian7.test.itmz.pl. HOWTO krok po kroku jak zmienić nazwę hosta.

Instalacja Postfix

Centos w wersji 6.4 powinien używać Postfixa domyślnie. Jeśli w Twojej wersji tak nie jest, postfix zainstalujesz przez:

yum install postfix

W systemie Debian po wykonaniu poniższej komendy, domyślny serwer exim4 będzie odinstalowany:

apt-get install postfix

Instalator w Debianie automatycznie uruchomi konfigurator pakietu dla którego na potrzeby testowe należy wybrać:

  • typ konfiguracji: strona internetowa
  • systemowa nazwa pocztowa: krakow.test.itmz.pl

Konfiguracja Postfix

Główny plik konfiguracyjny i jego składnia

Konfiguracja programu znajduje się w kilku plikach w katalogu /etc/postfix/. Najważniejszym plikiem jest /etc/postfix/main.cf, zawierający listę parametrów i ich wartości, każdy w osobnej linii, w formie:

nazwa-parametru = wartość

a jeśli parametr przyjmuje kilka wartości:

nazwa-parametru = wartość1, wartość2, wartość3

Tak jak w usłudze Samba, Postfix korzysta z zestawu domyślnych ustawień, na wypadek gdyby nie były ustawione w pliku konfiguracyjnym. Niektóre parametry mogą przyjmować kilka wartości oddzielonych przecinkiem (kolejność ma czasami znaczenie). W przypadku, gdyby parametr był powtórzony w pliku konfiguracyjnym kilka razy (z różnymi wartościami), znaczenie będzie miało ostatnie jego wystąpienie w pliku.

Postfix dostarcza przydatne narzędzie postconf, dzięki któremu można z linii komend zmieniać parametry, nie edytując bezpośrednio pliku /etc/postfix/main.cf:

postconf -e nazwa-parametru=wartosc1,wartosc2

Za pomocą tego samego narzędzia można przejrzeć aktualne ustawienia konfiguracyjne:

postconf | less
postconf nazwa-parametru

Niezależnie od sposobu zmiany konfiguracji warto zajrzeć do pliku /etc/postfix/main.cf, gdyż w komentarzach znajduje się tam szczegółowy opis najważniejszych parametrów i wiele pożytecznych informacji konfiguracyjnych. Komentarz jest poprzedzony znakiem # na początku linii. Opis wszystkich parametrów pliku main.cf znajduje się w dokumentacji programu postconf. $ man 5 postconf

Nazwy domen obsługiwanych przez Postfix

Parametr myhostname konfiguracji przechowuje informacje o tym, jaka jest pełna nazwa domenowa komputera na którym jest uruchomiony serwer. Można zmienić ten parametr, jeśli potrzeba, przy pomocy komendy postconf. Sprawdź jaką wartość ma ten parametr i jeśli potrzeba zmień jego wartość.

[root@centos6 ~]# postconf myhostname
[root@centos6 ~]# postconf -e myhostname=centos6.test.itmz.pl

Parametr mydomain przechowuje informację o nazwie samej domeny dla serwera na którym jest zainstalowany serwer pocztowy

[root@centos6 ~]# postconf mydomain
[root@centos6 ~]# postconf -e mydomain=test.itmz.pl

Te dwa parametry są wykorzystywane jako argumenty w kilku innych parametrach konfiguracyjnych, dzięki czemu nie trzeba dokonywać w przyszłości wielu poprawek konfiguracyjnych przy ewentualnej zmianie domenowej hosta. Nie definiują bezpośrednio, jakie domeny ma obsługiwać Postfix, odpowiedzialny za to jest inny parametr.

Serwer SMTP, oczekując połączeń na porcie 25 TCP, otrzymuje przesyłkę pocztową od klienta SMTP a następnie, po analizie adresów docelowego (zamieszczonego w polu „To:” nagłówka maila) i źródłowego (w polu „From:”), odrzuca e-mail lub dostarcza pocztę w odpowiednie miejsce.

Parametr mydestination określa, dla jakich domen serwer Postfix jest serwerem pocztowym (potrafi zapisać maile w skrzynkach pocztowych użytkowników tych domen). Jeśli serwer widziany jest w Internecie jako centos6.test.itmz.pl i ma obsługiwać pocztę dla dwóch domen – centos6.test.itmz.pl i lodz.test.itmz.pl to parametr ten należy skonfigurować następująco:

# postconf -e mydestination=centos6.test.itmz.pl,lodz.test.itmz.pl

Klienci firmy będą mogli adresować maile na adresy szymon@centos6.test.itmz.pl jak i szymon@lodz.test.itmz.pl (zakładając, że konto szymon istnieje w systemie). Należy pamiętać, iż do prawidłowej obsługi poczty w Internecie konieczne jest dokonanie odpowiednich wpisów w serwerze DNS dla domeny. Powinien on wskazywać, iż poczta przeznaczona dla domen centos6.test.itmz.pl i lodz.test.itmz.pl ma wędrować do serwera SMTP (Postfix) zainstalowanego na serwerze o adresie centos6.test.itmz.pl. Rekordy MX, jakie powinny się znaleźć na serwerze DNS:

centos6.test.itmz.pl.     IN MX 10     centos6.test.itmz.pl.
lodz.test.itmz.pl.     	  IN MX 10     centos6.test.itmz.pl.
debian7.test.itmz.pl.     IN MX 10     debian7.test.itmz.pl.
krakow.test.itmz.pl.      IN MX 10     debian7.test.itmz.pl.

Jeśli dopiero uczysz się obsługi Postfix i wykonujesz testową instalację oraz konfigurację na dwóch serwerwerach możesz ominąć kwestie konfiguracyjne DNS i oprzeć się na plikach /etc/hosts (opisane poniżej w rozdziale „Pominięcie zapytań do serwera DNS”).

Domyślna wartość parametru mydestination to

mydestination = $myhostname, localhost.$mydomain, localhost

Jeśli w systemie istnieje konto systemowe o nazwie „szymon”, a wspomnianemu parametrowi mydestination przypisana zostanie wartość „lodz.test.itmz.pl” to wszystkie maile zaadresowane na szymon@lodz.test.itmz.pl i przesłane na serwer pocztowy Postfix będą zapisane w skrzynce pocztowej Szymona. Sprawdź jaką ma wartość ten parametr i jeśli potrzeba, skoryguj jego wartość.

[root@centos6 ~]# postconf mydestination
mydestination = $myhostname, localhost.$mydomain, localhost

[root@centos6 ~]# postconf -e mydestination=lodz.test.itmz.pl,\$myhostname,localhost.\$mydomain,localhost

Jeśli serwer otrzyma maila (przesłanego za pomocą protokołu SMTP na port 25) i w adresie odbiorcy lub nadawcy, po znaku „@” nie będzie widniała domena zamieszczona w wartościach parametru mydestination mail zostanie odrzucony.

Serwer SMTP, który dostał zadanie przesłania poczty musi dowiedzieć się, na jaki adres IP przesłać przesyłkę, musi znaleźć adres serwera, który jest odpowiedzialny za domenę odbiorcy. Pobiera z nagłówka maila część domenową adresu odbiorcy (za znakiem „at” - @) i szuka adresu odpowiedzialnego serwera za tą domenę w rekordach MX wpisów DNS. Przykładowo, jeśli wiadomość e-mail ma być dostarczona na adres mariusz@itmz.pl to najpierw serwer SMTP sprawdza, czy sam nie jest odpowiedzialny za domenę itmz.pl (parametr mydestination). Jeśli nie, łączy się z serwerem DNS pytając, gdzie ma wysłać maila przeznaczonego na dla domeny itmz.pl. Po uzyskaniu informacji, wysyła maila na ten serwer.

Pominięcie zapytań do serwera DNS

Aby Postfix korzystał z pliku /etc/hosts zamiast odpytywał serwery DNS o rekordy MX należy zmienić wartość kilku parametrów:

postconf -e disable_dns_lookups=yes
postconf -e smtp_host_lookup=native
postconf -e lmtp_host_lookup=native
postconf -e ignore_mx_lookup_error=yes

W pliku /etc/hosts musi znaleźć się odwzorowanie adresu IP na adres domenowy dla wszystkich serwerów, które będą brały udział w komunikacji mailowej:

#W systemie centos6
192.168.122.193 centos6.test.itmz.pl centos6
192.168.122.193 lodz.test.itmz.pl
192.168.122.128 krakow.test.itmz.pl
#W systemie debian7
192.168.122.128 debian7.test.itmz.pl debian7
192.168.122.128 krakow.test.itmz.pl
192.168.122.193 lodz.test.itmz.pl

Parametry disable_dns_lookups=yes ignore_mx_lookup_error są przydatne praktycznie tylko przy konfiguracji testowej, gdy nie mamy dostępu do serwera DNS i nie możemy dokonać na nim wpisów MX.

Serwer lokalny czy internetowy?

Użytkownicy pracujący lokalnie na serwerze, również potrzebują dostępu do serwera SMTP, aby przesyłać między sobą maile. Serwer pocztowy nie musi obsługiwać poczty przychodzącej z zewnątrz. Może obsługiwać tylko pocztę lokalną. Parametr inet_interfaces określa listę adresów, na których ma nasłuchiwać serwer Postfix:

# netstat -ltp | grep smtp
tcp  0  0 *:smtp    	*:*          LISTEN      1562/master
# postconf -e inet_interfaces = localhost
# /etc/rc.d/rc.postfix reload

Parametr inet_interafaces określa na jakich interfejsach ma działać serwer. Jeśli jest on jedynie lokalny, dla użytkowników danego serwera (port 25 będzie otwarty tylko na interfejsie localhost) to należy przypisać mu wartość localhost

postconf -e inet_interfaces=localhost

Jeśli serwer ma nasłuchiwać na wszystkich interfejsach należy przypisać wartość all temu parametrowi. Taką właśnie wartość powinny mieć serwery centos6 i debian7:

postconf -e inet_interfaces=all

W systemie CentOS należy zweryfikować, czy firewall nie blokuje portu 25:

[root@centos6 ~]# iptables -L -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
 3986 3337K ACCEPT     all  --  any    any     anywhere             anywhere            state RELATED,ESTABLISHED
    0     0 ACCEPT     udp  --  any    any     anywhere             anywhere            udp dpt:syslog
    1    84 ACCEPT     icmp --  any    any     anywhere             anywhere
    0     0 ACCEPT     all  --  lo     any     anywhere             anywhere
    2   120 ACCEPT     tcp  --  any    any     anywhere             anywhere            state NEW tcp dpt:ssh
  414 76910 REJECT     all  --  any    any     anywhere             anywhere            reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
    0     0 REJECT     all  --  any    any     anywhere             anywhere            reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT 2399 packets, 227K bytes)
 pkts bytes target     prot opt in     out     source               destination

Jeśli firewall blokuje ruch przychodzący na port 25 należy dodać regułę, która na to pozwoli:

[root@centos6 ~]# iptables -I INPUT -p tcp --dport 25 -j ACCEPT
[root@centos6 ~]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[  OK  ]
[root@centos6 ~]# iptables -L -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:smtp 
 4045 3342K ACCEPT     all  --  any    any     anywhere             anywhere            state RELATED,ESTABLISHED 
    0     0 ACCEPT     udp  --  any    any     anywhere             anywhere            udp dpt:syslog 
    1    84 ACCEPT     icmp --  any    any     anywhere             anywhere            
    0     0 ACCEPT     all  --  lo     any     anywhere             anywhere            
    2   120 ACCEPT     tcp  --  any    any     anywhere             anywhere            state NEW tcp dpt:ssh 
  418 77606 REJECT     all  --  any    any     anywhere             anywhere            reject-with icmp-host-prohibited 

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 REJECT     all  --  any    any     anywhere             anywhere            reject-with icmp-host-prohibited 

Chain OUTPUT (policy ACCEPT 8 packets, 960 bytes)
 pkts bytes target     prot opt in     out     source               destination    

Restart serwisu po zmianach konfiguracyjnych

Po wprowadzeniu zmian konfiguracyjnych serwis postfix należy zrestartować.

service postfix restart

Przetestowania konfiguracji

Aby przetestować powyżej zdefiniowaną konfiguracji należy wysłać maile pomiędzy serwerami, na przykład z konta tymon na centos6 wysłać maila do szymon@krakow.test.itmz.pl i odwrotnie:

[tymon@centos6 ~]$ echo "Mail do Szymona z Krakowa" | mail -s "Testowa wiadomosc" szymon@krakow.test.itmz.pl
tymon@debian7:~$ echo "Mail do Szymona z Lodzi" | mail -s "Testowy mail zwrotny" szymon@lodz.test.itmz.pl

Za pomocą narzędzia mutt należy sprawdzić, czy poczta dotarła.

Aliasy

Aliasy, czyli inna nazwa dla konta jest wygodnym narzędziem do konfigurowania wielu nazw dla tego samego konta. Obsługa aliasów jest realizowana przez plik /etc/aliases. Poczta przeznaczona na adres webmaster@krakow.test.itmz.pl może być dostarczana na konto istniejącego użytkownika systemowego szymon dzięki aliasowi webnaster wskazującemu na konto szymon. Konto „webmaster” nie musi istnieć w systemie.

Postfix dostarcza przykładowy plik aliases, znajdujący się w katalogu /etc/postfix/. Jeśli plik /etc/aliases nie istnieje można przekopiować przykładowy plik do katalogu /etc/ i dokonać jego edycji.

cp /etc/postfix/aliases /etc/aliases

Składnia pliku ma format:

alias:		istniejace_konto
Na przykład:
webmaster:	szymon

Zawsze po zmianie zawartości pliku /etc/aliases konieczne jest wykonanie komendy newaliases, aby serwer pocztowy korzystał ze zmodyfikowanej bazy aliasów.

newaliases

Logi pocztowe

Najczęściej logi pocztowe zapisywane są w pliku /var/log/mail. Można to zmienić modyfikując konfigurację serwer syslog.

Inne narzędzia pocztowe

  • mailq - komenda przydatna przy analizowaniu problemów z dostarczaniem poczty. Wyświetla listę maili w kolejce, które z jakichś powodów czekają na wysyłkę;
  • .forward - plik zamieszczony w katalogu domowym użytkownika może zawierać listę nazw użytkowników lokalnych lub listę adresów mailowych zewnętrznych na skrzynki których będzie forwardowana poczta.

Komendy SMTP

RFC 821 definiuje dokładnie protokół SMTP. Protokół ten jest czysto tekstowy. Można więc wysłać maila nie mając żadnego klienta pod ręką a jedynie klienta telnet. Załącznik F wspomnianego RFC przedstawia przykładową komunikację.

tymon@debian7:~$ telnet lodz.test.itmz.pl 25
Trying 192.168.122.193...
Connected to lodz.test.itmz.pl.
Escape character is '^]'.
220 centos6.test.itmz.pl ESMTP Postfix

HELO krakow.test.itmz.pl
250 centos6.test.itmz.pl

MAIL FROM:<tymon@krakow.test.itmz.pl>
250 2.1.0 Ok

RCPT TO: <szymon@lodz.test.itmz.pl>
250 2.1.5 Ok

DATA
354 End data with <CR><LF>.<CR><LF>
Subject: To jest temat

A to jest tresc maila
Witam Szymonie

.
250 2.0.0 Ok: queued as 573F71AD8

RSET
250 2.0.0 Ok

QUIT
221 2.0.0 Bye
Connection closed by foreign host.

Zadania

Zadania dla powyższego materiału znajdują się na osobnej stronie.


Masz potrzebę, aby powyższa strona była rozbudowana? - Napisz do nas!.

materialy/podstawy-administracji/poczta.txt · ostatnio zmienione: 2015/03/09 00:19 przez mzalewski

(C) 2017 ITMZ Mariusz Zalewski