Poradniki > Jak skonfigurować serwer pocztowy POP3 / IMAP za pomocą Dovecot na Ubuntu 18.04

Jak skonfigurować serwer pocztowy POP3 / IMAP za pomocą Dovecot na Ubuntu 18.04

Opublikowany: 18 stycznia 2020

Dovecot Mail Server Ubuntu

Dovecot jest aplikacją open source, która pozwala na otrzymywanie i wysyłanie wiadomości e-mail, zabezpieczonych przez protokoły IMAP oraz POP3, na serwerze Linux.

W niniejszym poradniku wyjaśnimy krok po kroku jak skonfigurować Dovecot na Ubuntu 18.04.

Ustawianie rekordów DNS

Przed zainstalowaniem Dovecot upewnij się, czy rekordy dla domeny są prawidłowo ustawione.

Dla przykładu przyjmijmy, że posiadasz domenę o nazwie domena.com. Pierwszym krokiem jest ustawienie rekordu A trzeciego poziomu o nazwie „mail” i skierowanie go na adres IP serwera. Następnie, w celu umożliwienia otrzymywania maili na serwer, stwórz rekord MX kierujący na wcześniej stworzony rekord trzeciego poziomu.

NAZWA TYP WARTOŚĆ
mail A [SERWER_IP]
  MX mail.domain.com

Na tym etapie możesz połączyć się ze swoim serwerem przez SSH. Jeśli jeszcze tego nie zrobiłeś, zapoznaj się z naszym poradnikiem na temat bezpiecznego połączenia przez SSH. W przypadku serwera lokalnego, przejdź do następnego kroku i otwórz terminal na swoim serwerze.

Instalacja Dovecot

Po połączeniu się z serwerem za pomocą SSH wykonaj update apt, a następnie zainstaluj Dovecot za pomocą poniższych komend:

$ sudo apt update

$ sudo apt install dovecot-core dovecot-pop3d dovecot-imapd

Wszystkie pliki konfiguracyjne Dovecot znajdują się w lokalizacji /etc/dovecot/. W tym katalogu znajduje się kilka plików: każdy odnosi się do określonego zestawu parametrów, które są włączane przez główny plik po uruchomieniu usługi. Na przykład usługa dovecot.conf powinna być skonfigurowana w następujący sposób:

# Uruchamianie protokołów IMAP oraz POP3

protocols = imap pop3

# Zezwala Dovecot na nasłuchiwanie wszelkich połączeń przychodzących (ipv4 / ipv6)

listen = *, ::

Kolejnym ważnym parametrem w plikach konfiguracyjnych jest /etc/dovecot/conf.d/10-mail.conf:

mail_location = maildir:~/Maildir

Pozwala on na ustalenie ścieżki do zapisywania wiadomości przychodzących. W przykładzie powyżej został ustawiony katalog Maildir, znajdujący się w domyślnym katalogu głównym.

Kolejnym przydatnym parametrem jest /etc/dovecot/conf.d/20-pop3.conf, który pozwala na zachowanie kompatybilności ze starymi wersjami klientów Outlook:

pop3_uidl_format = %08Xu%08Xv

pop3_client_workarounds = outlook-no-nuls oe-ns-eoh

Tworzenie użytkownika

Obecna konfiguracja Dovecot opiera się na dostępie do skrzynek za pomocą użytkowników utworzonych w systemie. Po zakończeniu instalacji podstawowej, przejdź do tworzenia pierwszego użytkownika:

# Tworzenie użytkownika john oraz hasła dla niego 

$ sudo useradd john -m

$ sudo passwd john

# ścieżka do zapisywania maili

$ sudo mkdir /home/john/Maildir

$ sudo chown john:john /home/john/Maildir

$ sudo chmod -R 700 /home/john/Maildir

Konfiguracja firewall

Jeśli posiadasz aktywny firewall systemowy, musisz skonfigurować go w celu odblokowania ruchu dla serwera pocztowego.n case of a firewall on your system, configure it to enable mail traffic.

Dla UFW firewall dostępne są pre-instalowane profile dla Dovecot. Poniżej znajduje się instrukcja ich aktywowania.

W celu sprawdzenia dostępnych i zainstalowanych profili dla UFT wykonaj poniższą komendę:

$ sudo ufw app list

Na ekranie pojawi się lista podobna do tej:

Available applications:

  Dovecot IMAP

  Dovecot POP3

  Dovecot Secure IMAP

  Dovecot Secure POP3

  OpenSSH

W celu odblokowania ruchu aktywuj profile Dovecot.

Sprawdź informacje o profilach:

$ sudo ufw app info "Dovecot IMAP"

Następnie możesz je aktywować:

$ sudo ufw allow "Dovecot POP3"

$ sudo ufw allow "Dovecot IMAP"

$ sudo ufw allow "Dovecot Secure IMAP"

$ sudo ufw allow "Dovecot Secure POP3"

Sprawdzenie działania serwera pocztowego

Sprawdź poprawność działania serwera POP3 za pomocą telnet. Jeśli nie jest on zainstalowany na Twoim systemie, wykonaj następującą komendę:

$ sudo apt install telnet

Uruchom telnet w celu przetestowania serwera pocztowego:

$ sudo telnet localhost 110

Jeśli wszystko działa poprawnie, otrzymasz następującą odpowiedź:

Connected to localhost.

Escape character is '^]'.

+OK Dovecot ready. 

Następnie wprowadź nazwę użytkownika i hasło za pomocą poniższych komend:

user john

pass nadane_hasło_podczas_tworzenia_użytkownika

Po zalogowaniu serwer wyśle następującą odpowiedź:

+OK Logged in. 

Aby spróbować odebrać / wysłać wiadomość, użyj pakietu Postfix opisanego w naszym przewodniku: Jak skonfigurować serwer pocztowy SMTP z Postfix na Ubuntu 18.04.

W tym przypadku pomiń ostatni krok weryfikacji postfix (nie instaluj s-nail) lecz zamiast tego zainstaluj moduł mailutils wpisując komendę:

$ sudo apt install mailutils
Wyślij wiadomość testową:
$ sudo mail john@localhost

Subject: Test

EOT

.

CTRL+D spowoduje wysłanie wiadomości i wyjście z edycji. Po wysłaniu wiadomości za pomocą powyższej komendy skorzystaj z telnet w celu uzyskania dostępu do skrzynki:

$ telnet localhost 110

Trying ::1...

Connected to localhost.

Escape character is '^]'.

+OK Dovecot ready.

user john

+OK

pass test

+OK Logged in. 

Po zalogowaniu wywołaj listę otrzymanych wiadomości:

list

+OK 1 messages:

1 533

.

Jak widzisz, masz jedną nieodczytaną wiadomość: skorzystaj z komendy RETR, aby wyświetlić jej zawartość:

retr 1

+OK 533 octets

Return-Path: <root@postflix.com>

To: john@localhost.postflix.com

Subject: Test

User-Agent: Heirloom mailx 12.5 7/5/10

MIME-Version: 1.0

Content-Type: text/plain; charset=us-ascii

Content-Transfer-Encoding: 7bit

Message-Id: <20190701140840.437C1852@mail.postflix.com>

From: root@postflix.com (root).