26.6. Zagadnienia zaawansowane

Poniższe akapity opisują bardziej skomplikowane zagadnienia, takie jak konfiguracja serwera poczty dla całej domeny.

26.6.1. Konfiguracja podstawowa

W konfiguracji domyślnej FreeBSD powinniśmy mieć możliwość wysyłania poczty do hostów zewnętrznych pod warunkiem, że mamy poprawnie skonfigurowany plik /etc/resolv.conf lub mamy uruchomiony własny serwer nazw DNS. Jeżeli chcemy mieć możliwość odbierania poczty wysyłanej do MTA (np. sendmaila) uruchomionego na naszym komputerze z FreeBSD możemy to osiągnąć dwoma sposobami:

Bez względu na to który z powyższych sposobów wybierzemy, aby odbierać pocztę bezpośrednio wysyłaną do naszego hosta musimy mieć przypisany do niego stały adres IP (nie może to być adres dynamiczny jaki otrzymujemy zazwyczaj przy połączeniach PPP). Jeżeli nasz host znajduje się za firewallem - firewall musi przekazywać ruch SMTP do naszego hosta. Jeżeli chcemy odbierać pocztę bezpośrednio na naszym hoście musimy się upewnić że spełniony jest jeden z warunków:

Spełnienie jednego w powyższych warunków umożliwi odbieranie poczty bezpośrednio na naszym serwerze.

Jeżeli polecenia wywołane poniżej dadzą wyniki podobne do przykładowych:

# hostname
example.FreeBSD.org
# host example.FreeBSD.org
example.FreeBSD.org has address 204.216.27.XX

wysłanie poczty bezpośrednio na adres powinno zadziałać bez problemu (zakładając, że sendmail jest poprawnie skonfigurowany i uruchomiony na example.FreeBSD.org).

Jeżeli zamiast powyższych otrzymamy zbliżone do następujących wyniki:

# host example.FreeBSD.org
example.FreeBSD.org has address 204.216.27.XX
example.FreeBSD.org mail is handled (pri=10) by hub.FreeBSD.org

Cała poczta wysłana do naszego hosta (example.FreeBSD.org) zostanie dostarczona do serwera hub i użytkownika o tej samej nazwie (yourlogin) na tej maszynie, zamiast dotrzeć bezpośrednio do naszego hosta.

Powyższa informacja jest przechowywana przez serwer DNS. Rekord DNS, który zawiera informacje o trasowaniu poczty nazywa się rekordem MX (Mail eX). Jeżeli dla danego hosta nie istnieje przynajmniej jeden rekord MX w systemie DNS, poczta będzie dostarczna bezpośrednio do tego hosta na podstawie informacji o jego numerze IP.

Wpisy MX dla hosta freefall.FreeBSD.org wyglądały następująco:

freefall       MX  30  mail.crl.net
freefall        MX  40  agora.rdrop.com
freefall        MX  10  freefall.FreeBSD.org
freefall        MX  20  who.cdrom.com

Jak widać freefall miał wiele rekordów MX. Host z najniższym numerem MX jest komputerem który, jeżeli jest dostępny, otrzymuje pocztę bezpośrednio. Jeżeli z jakiegoś względu nie jest on dostępny, pozostałe hosty (czasem zwane “zapasowymi serwerami poczty”) tymczasowo odbierają pocztę i jeżeli host z niższym numerem stanie się dostępny to poczta jest do niego przekazywana. W końcu poczta dociera do hosta z najniższym numerem MX.

Zapasowe serwery pocztowe powinny mieć osobne połączenia z siecią Internet, aby zapewnić maksymalną niezawodność. Nie powinniśmy mieć problemów z zapewnieniem sobie takiej usługi np. u naszego dostawcy Internetu.

26.6.2. Poczta dla naszej domeny

Przygotowanie serwera poczty (ang. “mailhost”) wymaga przekierowania do niego wszelkiej poczty wysłanej do stacji roboczych znajdujących się w naszej domenie. W zasadzie chcemy “zarządać” wszelkiej poczty przeznaczonej dla dowolnego komputera w naszej domenie (w tym przykładzie *.FreeBSD.org) i przesłać ją do naszego serwera poczty. W ten sposób użytkownicy mogą odbierać korespondencję z jednego komputera zarządzającego pocztą.

Aby ułatwić sobie życie należy stworzyć konta użytkowników o takich samych nazwach na obywu maszynach (serwerze poczty i kliencie). Możemy do tego celu wykorzystać polecenie adduser(8).

Serwer poczty którego chcemy użyć, musi być wyznaczony jako wymiennik poczty dla każdego komputera w sieci. Można to osiągnąć konfigurując DNS w sposób podobny do poniższego:

example.FreeBSD.org    A   204.216.27.XX       ; Stacja robocza
            MX  10 hub.FreeBSD.org  ; Serwer poczty

Taka konfiguracja spowoduje że cała poczta przeznaczona dla stacji roboczej zostanie przekierowana do serwera poczty, niezależnie od adresu na który wskazuje rekord A. Poczta jest wysyłana do hosta na który wskazuje rekord MX.

Nie możemy skonfigurować tego samodzielnie, chyba że sami obsługujemy własny DNS. Jeżeli tak nie jest lub nie możemy uruchomić własnego serwera DNS powinniśmy skontatkować się z naszym ISP lub kimkolwiek kto zapewnia nam obsługę DNS.

Jeżeli obsługujemy wirtualne domeny pocztowe poniższa informacja może okazać się przydatna. W tym przykładzie załóżmy, że mamy klienta z własną domeną np. customer1.org i chcemy, by poczta wysłana do domeny customer1.org docierała do naszego serwera poczty mail.myhost.com. Wpis w naszym serwerze DNS powinien wyglądać następująco:

customer1.org      MX  10  mail.myhost.com

Nie potrzebujemy rekordu A dla customer1.org jeżeli chcemy jedynie obsługiwać pocztę przeznaczoną dla tej domeny.

Notatka: Należy być świadomym że “ping-owanie” customer1.org nie będzie skuteczne dopóki nie będzie istniał rekord A dla tej domeny.

Ostatnią rzeczą do zrobienia jest “poinformowanie” sendmaila na naszym serwerze poczty dla jakich domen i/lub nazw hostów powinien akceptować pocztę. Jest kilka sposobów aby to osiągnąć. Każdy z poniższych zadziała poprawnie:

Ten i inne dokumenty można pobrać z ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

W przypadku pytań o FreeBSD prosimy przeczytać dostępną dokumentację przed kontaktem z <questions@FreeBSD.org>.
W sprawie zapytań o tę dokumentację prosimy o kontakt z <doc@FreeBSD.org>.