Jak zainstalować i skonfigurować Postfix na Ubuntu 20.04

Jak zainstalować i skonfigurować Postfix na Ubuntu 20.04

poprzednia wersja tego samouczka została napisana przez Justina Ellingwooda

wprowadzenie

Postfix jest popularnym open-source Mail Transfer Agent (MTA), który może być używany do trasy i dostarczania wiadomości e-mail w systemie Linux. Szacuje się, że około 25% publicznych serwerów pocztowych w Internecie uruchamia Postfixa.

w tym poradniku dowiesz się jak zainstalować i skonfigurować Postfixa na serwerze Ubuntu 20.04., Następnie przetestujesz, czy Postfix jest w stanie poprawnie kierować pocztę, instalując s-nail, agenta użytkownika poczty (Mua), znanego również jako klient poczty e-mail.

zauważ, że celem tego samouczka jest pomoc w szybkim uruchomieniu Postfixa przy użyciu tylko niektórych funkcji poczty e-mail. Do końca tego przewodnika nie będziesz mieć w pełni funkcjonalnego serwera poczty e-mail, ale będziesz mieć niektóre z podstawowych komponentów takiej konfiguracji, które pomogą Ci zacząć.

wymagania wstępne

aby postępować zgodnie z tym przewodnikiem, musisz:

  • serwer z systemem Ubuntu 20.,04, aby działać jako serwer poczty Postfix. Ten serwer powinien mieć użytkownika non-root z uprawnieniamisudo oraz firewall skonfigurowany z UFW. Możesz postępować zgodnie z naszym Ubuntu 20.04 initial server setup guide, aby to skonfigurować.
  • w pełni kwalifikowana nazwa domeny wskazywana na Twoim serwerze Ubuntu 20.04. Pomoc w konfigurowaniu nazwy domeny za pomocą DigitalOcean można znaleźć w naszej dokumentacji dotyczącej domen i sieci DNS. Pamiętaj, że jeśli planujesz uzyskać dostęp do poczty z lokalizacji zewnętrznej, musisz upewnić się, że masz rekord MX wskazujący również na twój serwer pocztowy.,

zauważ, że ten samouczek zakłada, że konfigurujesz host, który ma FQDN mail.example.com. W razie potrzeby należy zmienić example.comlubmail.example.com, aby odzwierciedlić własne FQDN.

Krok 1-Instalacja Postfixa

Postfix jest zawarty w domyślnych repozytoriach Ubuntu, więc można go zainstalować za pomocą APT.

aby rozpocząć, zaktualizuj lokalnyaptpamięć podręczna pakietu:

  • sudo apt update

następnie zainstaluj pakietpostfix za pomocą następującego polecenia., Zauważ, że tutaj przekazujemy zmienną środowiskową DEBIAN_PRIORITY=low do tego polecenia Instalacji. Spowoduje to, że proces instalacji poprosi Cię o skonfigurowanie dodatkowych opcji:

  • sudo DEBIAN_PRIORITY=low apt install postfix

ten proces instalacji otworzy serię interaktywnych monitów. Dla celów tego samouczka, użyj następujących informacji, aby wypełnić swoje monity:

  • ogólny typ konfiguracji poczty?: W tym celu wybierz stronę internetową, ponieważ odpowiada ona naszym potrzebom infrastrukturalnym.,
  • systemowa nazwa poczty: jest to podstawowa domena używana do konstruowania poprawnego adresu e-mail, gdy podana jest tylko część konta adresu. Na przykład, załóżmy, że nazwa hosta twojego serwera to mail.example.com. Prawdopodobnie będziesz chciał ustawić systemową nazwę poczty na example.com tak, że biorąc pod uwagę nazwę użytkownika user1, Postfix użyje adresu .
  • odbiorca poczty Root i postmaster: jest to konto linuksowe, które zostanie przekierowane na adres root@I postmaster@., Użyj swojego konta głównego w tym celu. W tym przykładzie, sammy.
  • Other destinations to accept mail for: określa miejsca docelowe poczty, które ta instancja Postfix będzie akceptować. Jeśli chcesz dodać inne domeny, za które ten serwer będzie odpowiedzialny, dodaj je tutaj. W przeciwnym razie domyślna wartość będzie wystarczająca.
  • wymusić synchroniczne aktualizacje w kolejce poczty?: Ponieważ prawdopodobnie używasz systemu plików, Zaakceptuj No tutaj.
  • sieci lokalne: jest to lista sieci, dla których serwer pocztowy jest skonfigurowany do przekazywania wiadomości., Wartość domyślna będzie działać w większości scenariuszy. Jeśli jednak zdecydujesz się go zmodyfikować, upewnij się, że jest bardzo restrykcyjny w odniesieniu do zakresu sieci.
  • limit rozmiaru skrzynki pocztowej: może być użyty do ograniczenia rozmiaru wiadomości. Ustawienie go na 0 wyłącza dowolne ograniczenie rozmiaru.
  • Local address extension character: jest to znak, który może być użyty do oddzielenia regularnej części adresu od rozszerzenia (używanego do tworzenia dynamicznych aliasów). Domyślnie, + będzie działać dla tego samouczka.,
  • używane protokoły internetowe: Wybierz, czy ograniczyć wersję IP obsługiwaną przez Postfix. Na potrzeby tego samouczka Wybierz wszystko.

aby być wyraźnym, są to ustawienia używane w tym przewodniku:

Uwaga: Jeśli kiedykolwiek będziesz musiał wrócić, aby zmienić te ustawienia, możesz to zrobić, wpisując:

  • sudo dpkg-reconfigure postfix

Monity zostaną wstępnie wypełnione wcześniejszymi odpowiedziami.

Po zakończeniu procesu instalacji możesz wprowadzić kilka aktualizacji do konfiguracji Postfixa.,

Krok 2 — zmiana konfiguracji Postfixa

teraz możesz dostosować niektóre ustawienia, o które nie pytał cię proces instalacji pakietu. Wiele ustawień konfiguracyjnych Postfixa jest zdefiniowanych w pliku /etc/postfix/main.cf. Zamiast edytować ten plik bezpośrednio, możesz użyć polecenia postconf do zapytania lub ustawienia konfiguracji.

aby rozpocząć, Ustaw lokalizację skrzynki pocztowej użytkownika Ubuntu spoza katalogu root., W tym przewodniku użyjemy formatu Maildir, który dzieli wiadomości na pojedyncze pliki, które są następnie przenoszone między katalogami na podstawie akcji użytkownika. Alternatywną opcją, która nie jest omówiona w tym przewodniku, jest format mbox, który przechowuje wszystkie wiadomości w jednym pliku.

Ustaw zmiennąhome_mailbox naMaildir/. Później utworzysz strukturę katalogów pod tą nazwą w katalogu domowym użytkownika., Skonfigurujhome_mailbox wpisując:

  • sudo postconf -e 'home_mailbox= Maildir/'

następnie Ustaw lokalizację tabelivirtual_alias_maps, która mapuje dowolne konta e-mail na konta systemu Linux. Uruchom następujące polecenie, które mapuje lokalizację tabeli do pliku bazy danych o nazwie /etc/postfix/virtual:

  • sudo postconf -e 'virtual_alias_maps= hash:/etc/postfix/virtual'

teraz, gdy zdefiniowałeś lokalizację pliku MAP wirtualnych w pliku main.cf, możesz utworzyć sam plik i rozpocząć mapowanie kont e-mail do kont użytkowników na twoim komputerze.system Linux., Utwórz plik za pomocą preferowanego edytora tekstu; w tym przykładzie użyjemy nano:

  • sudo nano /etc/postfix/virtual

wyświetli listę adresów, dla których chcesz zaakceptować e-mail, a następnie spację i użytkownika Linuksa, do którego chcesz dostarczyć tę wiadomość.,

na przykład, jeśli chcesz zaakceptować e-mail pod adresem I I chcesz, aby te e-maile zostały dostarczone użytkownikowi sammy Linux, możesz skonfigurować swój plik w następujący sposób:

/etc/postfix/virtual

iv id=”976f0c6b3c”

Po zmapowaniu wszystkich adresów na odpowiednie konta serwera Zapisz i zamknij plik. Jeśli użyłeś nano, zrób to naciskając CTRL + X, Y, następnie ENTER.,

zastosuj mapowanie, wpisując:

  • sudo postmap /etc/postfix/virtual

Uruchom ponownie Proces Postfix, aby upewnić się, że wszystkie zmiany zostały zastosowane:

  • sudo systemctl restart postfix

zakładając, że postępowałeś zgodnie z instrukcją wstępnej konfiguracji serwera, skonfigurujesz zaporę z UFW. Zapora ta domyślnie blokuje połączenia zewnętrzne z usługami na serwerze, chyba że połączenia te są wyraźnie dozwolone, więc musisz dodać regułę zapory, aby zezwolić na wyjątek dla Postfixa.,

możesz zezwolić na połączenia z usługą, wpisując:

  • sudo ufw allow Postfix

dzięki temu Postfix jest skonfigurowany i gotowy do przyjmowania połączeń zewnętrznych. Jednak nie jesteś jeszcze gotowy, aby przetestować go za pomocą klienta pocztowego. Zanim będziesz mógł zainstalować klienta i użyć go do interakcji z pocztą dostarczaną na twój serwer, musisz wprowadzić kilka zmian w konfiguracji serwera Ubuntu.,

Krok 3-Instalacja klienta pocztowego i inicjalizacja struktury Maildir

w celu interakcji z dostarczaną pocztą, ten krok przeprowadzi Cię przez proces instalacji pakietu s-nail. Jest to bogaty w funkcje wariant klienta BSDxmail, który może poprawnie obsługiwać format Maildir.

przed zainstalowaniem Klienta Należy jednak upewnić się, że zmienna środowiskowa MAIL jest ustawiona poprawnie., s-nail będzie szukał tej zmiennej, aby dowiedzieć się, gdzie znaleźć pocztę dla użytkownika.

aby upewnić się, że zmienna MAIL jest ustawiona niezależnie od sposobu dostępu do konta — czy to przez ssh, su, su -, czy sudo, na przykład — musisz ustawić zmienną w pliku /etc/bash.bashrc I dodać ją do pliku w /etc/profile.d, aby upewnić się, że jest domyślnie ustawiona dla wszystkich użytkowników.,

aby dodać zmienną do tych plików, wpisz:

  • echo 'export MAIL=~/Maildir' | sudo tee -a /etc/bash.bashrc | sudo tee -a /etc/profile.d/mail.sh

aby odczytać zmienną w bieżącej sesji, Pobierz /etc/profile.d/mail.sh plik:

  • source /etc/profile.d/mail.sh

z tym zakończeniem zainstaluj s-nail klient poczty e-mail z apt:

  • sudo apt install s-nail

przed uruchomieniem klienta należy dostosować kilka ustawień. Otwórz plik /etc/s-nail.rc w edytorze:

  • sudo nano /etc/s-nail.rc

u dołu pliku dodaj następujące opcje:

/etc/s-nail.,rc
. . .set emptystartset folder=Maildirset record=+sent

oto co robią te linie:

  • set emptystart: pozwala klientowi otworzyć nawet z pustą skrzynką odbiorczą
  • set folder=Maildir: ustawia Maildir katalog wewnętrzny folder zmienna
  • set record=+sent tworzy plik MBOX sent do przechowywania wysłanych wiadomości w dowolnym katalogu ustawionym jako folder zmienna, w tym przypadku Maildir

Zapisz i zamknij plik po zakończeniu., Jesteś teraz gotowy do zainicjowania struktury Maildir Twojego systemu.

szybkim sposobem utworzenia struktury Maildir w katalogu domowym jest wysłanie wiadomości e-mail za pomocą polecenias-nail. Ponieważ pliksent będzie dostępny tylko po utworzeniu Maildir, powinieneś wyłączyć zapisywanie do niego dla tej początkowej wiadomości e-mail. Zrób to, przechodząc do opcji -Snorecord.

wyślij e-mail wysyłając ciąg znaków na polecenie s-nail., Dostosuj polecenie, aby oznaczyć użytkownika Linuksa jako odbiorcę:

  • echo 'init' | s-nail -s 'init' -Snorecord sammy

Uwaga: możesz otrzymać następującą odpowiedź:

Output
Can't canonicalize "/home/sammy/Maildir"

jest to normalne i może pojawić się tylko podczas wysyłania tej pierwszej wiadomości.,

Możesz sprawdzić, czy katalog został utworzony, szukając twojego ~/Maildir katalogu:

  • ls -R ~/Maildir

zobaczysz, że struktura katalogów została utworzona i że nowy plik wiadomości znajduje się w ~/Maildir/new katalogu:

teraz, gdy struktura katalogów została utworzona, możesz przetestować klienta s-nail, przeglądając wiadomość init I wysyłając wiadomość na zewnętrzny adres e-mail.,

Krok 4 — testowanie klienta

aby otworzyć klienta, Uruchom s-nail polecenie:

  • s-nail

w konsoli zobaczysz podstawową skrzynkę odbiorczą z init wiadomość oczekująca:p

naciśnij ENTER, aby wyświetlić wiadomość:

możesz wrócić do listy wiadomości, wpisując h, a następnie ENTER:

  • h
Output
>R 1 [email protected] 2020-05-19 15:40 14/392 init

zauważ, że wiadomość ma teraz stan R, wskazujący, że została odczytana.,

ponieważ ta wiadomość nie jest zbyt przydatna, możesz ją usunąć, naciskając d, a następnie ENTER:

  • d

aby wrócić do terminala, wpisz q a następnie ENTER:

  • q

w końcowym teście sprawdź, czy s-nail jest w stanie poprawnie wysyłać wiadomości e-mail. Aby to zrobić, możesz przesłać zawartość pliku tekstowego do procesu s-nail, tak jak w przypadku wiadomości init wysłanej w poprzednim kroku.,

zacznij od napisania wiadomości testowej w edytorze tekstu:

  • nano ~/test_message

w środku wpisz tekst, który chcesz wysłać:

~/test_message
Hello,This is a test. Please confirm receipt!

Zapisz i zamknij plik po napisaniu wiadomości.

następnie użyj poleceniacat, aby przesłać wiadomość do procesus-nail., Możesz to zrobić za pomocą następującego przykładu, który używa następujących opcji:

  • -s: definiuje temat wiadomości e-mail
  • -r: opcjonalna zmiana pola „From:” wiadomości e-mail. Domyślnie, użytkownik Linuksa, którego jesteś zalogowany, zostanie użyty do wypełnienia tego pola. Opcja -r umożliwia nadpisanie tego poprawnego adresu, takiego jak jeden z tych zdefiniowanych w pliku /etc/postfix/virtual., Aby zilustrować, następujące polecenie używa

należy również zmienić na prawidłowy adres e-mail, do którego masz dostęp:

następnie przejdź do skrzynki odbiorczej dla adresu e-mail, na który wysłałeś wiadomość. Zobaczysz wiadomość czekającą tam niemal natychmiast.

Uwaga: Jeśli wiadomość nie znajduje się w Twojej skrzynce odbiorczej, mogła zostać dostarczona do folderu Spam.

Możesz przeglądać wysyłane wiadomości w swoims-nail kliencie., Uruchom ponownie interaktywnego klienta:

  • s-nail

w kliencie poczty e-mail wyświetl wysłane wiadomości, wpisując:

  • file +sent

zobaczysz wynik w następujący sposób:

Output
+sent: 1 message 1 new▸N 1 [email protected] 2020-05-19 15:47 12/297 Test email subject line

możesz zarządzać wysłaną pocztą za pomocą tych samych poleceń, których używasz dla poczty przychodzącej.

podsumowanie

masz teraz skonfigurowany Postfix na serwerze Ubuntu 20.04. Zarządzanie serwerami e-mail może być trudnym zadaniem dla nowych administratorów systemu, ale dzięki tej konfiguracji powinieneś mieć wystarczająco dużo funkcji poczty MTA, aby zacząć.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *