Jak skonfigurować Postfix i Dovecot z użytkownikami wirtualnej domeny w Linux - część 2

Jak skonfigurować Postfix i Dovecot z użytkownikami wirtualnej domeny w Linux - część 2

W poprzednim artykule tej serii wyjaśniliśmy, jak bezpiecznie skonfigurować i zarządzać bazą danych serwera pocztowego za pomocą phpMyAdmin.

Wymóg:

  1. Zainstaluj serwer poczty postfix i dovecot z mariadb - część 1
Skonfiguruj Postfix i Dovecot z użytkownikami wirtualnej domeny - część 2

Teraz nadszedł czas, aby skonfigurować programy wewnętrzne, które sprawi, że wysyłanie i odbieranie wiadomości e -mail będzie rzeczywistością: Przyrostek I GOVECOT (odpowiednio obsługa e -maili wychodzących i przychodzących).

Konfigurowanie serwera poczty postfix

Przed rozpoczęciem konfiguracji Przyrostek, Warto i dobrze spojrzeć tutaj na swoje strony, kładąc szczególny nacisk na sekcję zatytułowaną „Informacje dla nowych użytkowników postfix". Jeśli to zrobisz, łatwiej będzie ci śledzić ten samouczek.

W kilku słowach powinieneś wiedzieć, że istnieją dwa pliki konfiguracyjne dla Przyrostek:

  1. /etc/postfix/main.por (Parametry konfiguracji postfix, patrz Man 5 Postconf po więcej szczegółów).
  2. /etc/postfix/master.por (Postfix Master Daemon Configuraton, patrz Man 5 Master dla dalszych szczegółów).

W /etc/postfix/main.por, Znajdź (lub dodaj, w razie potrzeby) następujące wiersze i upewnij się, że pasują do wartości wskazanych poniżej:

główny.por
append_dot_mydomain = no biff = no config_directory = /etc/postfix dovecot_destination_recipient_limit = 1 message_size_limit = 4194304 readme_directory = no smtp_tls_session_cache_database = btree:$data_directory/smtp_scache smtpd_banner = $myhostname ESMTP $mail_name (CentOS) smtpd_tls_cert_file = /etc/pki/dovecot/ Certs/Dovecot.PEM smtpd_tls_key_file =/etc/pki/dovecot/private/dovecot.pem smtpd_tls_session_cache_database = btree: $ data_directory/smtpd_scache smtpd_use_tls = Tak virtual_transport = dovecot smtpd_sasl_type = dovecot smtpd_sasl_path = private/autoryzacja 

Kolejne trzy ustawienia mają szczególne znaczenie. W plikach wskazanych na żółto skonfigurujemy dostęp Postfix do Domeny_tbl, Users_tbl, I Alias_tbl Tabele:

virtual_mailbox_domains = mysql:/etc/postfix/mariadb-vdomeny.por virtual_mailbox_maps = mysql:/etc/postfix/mariadb-vusers.por virtual_alias_maps = mysql:/etc/postfix/mariadb-valias.por 

Zauważ, że możesz wybrać różne nazwy plików powyżej, o ile upewnij się, że je utworzyć i wstawić w nich następującą zawartość. W każdym przypadku wymień Twoje hasło z hasłem, które wybrałeś dla dba użytkownik Część 1, lub możesz również użyć Mariadb Korzenie poświadczenia dla użytkownika i hasła poniżej.

Upewnij się również, że używasz dokładnie tych samych nazw bazy danych serwera e -mail i tabel utworzonych w Część 1.

W /etc/postfix/mariadb-vdomeny.por:

Mariadb-vdomeny.por
User = DBA hasło = Twoje hosty SWOSPORD = 127.0.0.Oku 

W /etc/postfix/mariadb-vusers.por:

MARIADB-VUSERS.por
User = DBA hasło = Twoje hosty SWOSPORD = 127.0.0.Oku 

W /etc/postfix/mariadb-valias.por:

MARIADB-Valias.por
User = DBA hasło = Twoje hosty SWOSPORD = 127.0.0.Oku 

Wreszcie, nie zapomnij zmienić uprawnień do tych plików na 640:

# CHMOD 640/etc/postfix/mariadb-vdomeny.CF # CHMOD 640/ETC/Postfix/Mariadb-Vusers.CF # CHMOD 640/ETC/Postfix/mariaDB-Valias.por 

I własność użytkownika źródło i grupa przyrostek:

# chown root: postfix/etc/postfix/mariadb-vdomeny.CF # chown root: postfix/etc/postfix/mariaDB-vusers.CF # chown root: postfix/etc/postfix/mariaDB-valias.por 

Następnie, aby umożliwić bezpieczne połączenia, musimy upewnić się, że następujące ustawienia są niezmienione (lub w razie potrzeby dodane) w /etc/postfix/master.por:

gospodarz.por
Zgłoszenie inet n -n - -smtpd -o syslog_name = postfix/przesyłanie -o smtpd_tls_security_level = encrypt -o smtpd_sasl_auth_eneble = Tak -o smtpd_reject_unlisted_recipient = no -ecUpoPOps inentations inentations ericipUts_Recipient = no. CleanUp Unix N - N - 0 Cleanup QMGR Unix N - N 300 1 QMGR TLSMGR UNIX - - N 1000? Oku? 0 Proxymap Proxymap UNIX - - N - - Proxymap ProxyWrite UNIX - - N - 1 Proxymap SMTP UNIX - - N - - SMTP przekaźnik UNIX - - N - - SMTP showq Unix N - N - - Showq Błąd UNIX - - N - - Błąd Retry UNIX - - N - - Błąd UNIX - - N - - Odrzuć lokalny UNIX - N - - Lokalny #Virtual Unix - N - - Virtual LMTP UNIX - - N - - LMTP Anvil UNIX - - N - 1 Anvil Scache UNIX - - n - 1 scache 

Notatka: Wcięcie w liniach zaczynających się od -o Opcja jest krytyczna; W przeciwnym razie kontrola postfix zwróci błąd:

Sprawdź konfigurację postfix

Przed zapisaniem zmian dodaj następujące wiersze u dołu pliku:

gospodarz.por
dovecot Unix - n n - - flagi rur = DRHU User = vmail: vmail argv =/usr/libexec/dovecot/dostarczenie -f $ sender -d $ odbiorca 

W tym momencie konieczne jest sprawdzenie, czy Postfix ma dostęp do tabel bazy danych i domen, konta i aliasów, które utworzyliśmy Część 1.

Aby to zrobić, użyjemy Postmap Command, narzędzie do testowania komunikacji z tabelami postfix będzie szukać podczas operacji, ale przede wszystkim będziemy musieli ponownie uruchomić postfix:

# SystemCtl Postfix restart # postmap -q LinuxNewz.com mysql:/etc/postfix/mariadb-vdomeny.cf # postmap -q jakaś.com mysql:/etc/postfix/mariadb-vdomeny.CF # postmap -q [chroniony e -mail] mysql:/etc/postfix/mariadb -vusers.CF # postmap -q [chroniony e -mail] mysql:/etc/postfix/mariadb -vusers.CF # postmap -q [chroniony e -mail] mysql:/etc/postfix/mariadb -vusers.CF # postmap -q [chroniony e -mail] mysql:/etc/postfix/mariadb -valias.por 

Na poniższym obrazku możemy zobaczyć, jak istniejące rekordy w bazie danych a 1 jest zwrócony. W przeciwnym razie nic nie jest wyświetlane z powrotem na ekran. W przypadku kontroli pseudonimu pamiętaj, że faktyczne konto e -mail alias jest odwzorowany, jest zwracany:

Sprawdź komunikację tabeli postfix

Zauważ, że jesteśmy NIE Uwierzytelniając się w stosunku do zestawu poświadczeń dla każdego konta e -mail, testujemy tylko zdolność postfix do wykrywania tych rekordów w bazie danych.

Tak więc, jeśli otrzymasz inne dane wyjściowe niż powyżej, upewnij się, że używasz prawidłowej pary użytkownika / hasła Mariadb-vdomeny.por, MARIADB-VUSERS.por, I MARIADB-Valias.por (lub cokolwiek, co zdecydowałeś się wywołać te pliki).

Konfigurowanie Dovecot

Jako Imap / Pop3 serwer, Dovecot zapewnia użytkownikom sposób za pośrednictwem Agent użytkownika poczty (Mua, lub znane również jako klient), takie jak Thunderbird Lub Perspektywy, Aby wymienić kilka przykładów, aby uzyskać dostęp do ich poczty.

Na początek utwórzmy użytkownika i grupę do obsługi e -maili (potrzebujemy tego, ponieważ nasze konta e -mail nie są powiązane z użytkownikiem systemu). Możesz użyć innego UID I KOŁOWACIZNA (inny niż 5000 Jak robimy poniżej), o ile nie jest w użyciu i jest duża liczba:

# grupaadd -g 5000 vmail # useradd -g vmail -u 5000 vmail -d /home /vmail -m 

Ustawienia Dovecot są podzielone na kilka plików konfiguracyjnych (upewnij się, że następujące wiersze są odkształcone i / lub edytuj je w celu dopasowania ustawień wskazanych poniżej).

W /etc/dovecot/dovecot.conf:

GOVECOT.por
!Ableal_try/usr/share/dovecot/protokoły.D/*.Protocol Protocols = IMAP POP3 LMTP !obejmują conf.D/*.conf !obejmują lokalne.conf 

W /etc/dovecot/conf.D/10-autout.conf (Włącz tylko uwierzytelnianie za pośrednictwem SQL i zostaw inne skomentowane metody uwierzytelniania):

10-autout.conf
disable_plaintext_auth = tak auth_mechanizmów = zwykły logowanie !Uwzględnij Auth-SQL.conf.ext 

W /etc/dovecot/conf.D/Auth-SQL.conf.ext (Pamiętaj, że będziemy przechowywać e -maile w nazwie katalogu Twoja domena.com wewnątrz /dom/vmail, które musisz utworzyć, jeśli nie istnieje. W naszym przypadku to zrobiliśmy mkdir/home/vmail/linuxnewz.com Aby zarządzać e -mailami dla tej domeny):

Auth-SQL.conf.ext
PASSDB driver = sql args =/etc/dovecot/dovecot-sql.conf.ext użytkownik 

Poszczególne skrzynki odbiorcze dla kont użytkowników zostaną utworzone, gdy e -maile dla takich kont zostaną odebrane.

W /etc/dovecot/conf.D/10-mail.conf:

10-mail.conf
Mail_Location = Maildir:/home/vmail/%d/%N/MailaDir Pace Lampa Box Inbox = Tak Mail_privileged_group = Mail mbox_write_locks = fcntl 

W /etc/dovecot/conf.D/10-MASTER.conf:

10-mistrz.conf
Service Imap-Login inet_listener imap port = 143 inet_listener imaps  service pop3-login inet_listener Pop3 port = 110 inet_listener Pop3S  service LMTP UNEX_LISTEner/var/spol/petfix/private/private/private/private/dovecot-lmtp  tryb = 0600 user = postfix grupa = postFix Auther UNIX_LISTEner/var/suol/postfix/private/auth tryb = 0666 User = Postfix grupa = postFix Unix_Listener Auth-Userdb tryb = 0600 user = vmail użytkownik = dovecot usługi auth -worker user = vmail usługa DICT UNIX_LISTEner Dict  

W /etc/dovecot/conf.D/10-SSL.conf (Wymień certyfikat i kluczowe ścieżki, jeśli planujesz korzystać z certyfikatu podpisanego przez CA):

10-SSL.conf
SSL = wymagane SSL_CERT =  

W /etc/dovecot/dovecot-sql.conf.ext Wprowadź informacje o bazie danych i poświadczenia utworzonego użytkownika administracyjnego Część 1.

Ważny: Jeśli twoje hasło zawiera gwiazdkę (#), Będziesz musiał zawrzeć ciąg Connect, jak wskazano w poniższym przykładzie:

dovecot-sql.conf.ext
Driver = mysql connect = "host = 127.0.0.1 dbname = e-mailserver_db użytkownik = dba hasło = passwith#tutaj "default_pass_scheme = SHA512-CRYPT PROSED_QUERY = Wybierz e-mail jako użytkownik, hasło z Users_tbl gdzie e-mail ="%u "; 

Dodatkowo możesz skonfigurować rejestrowanie, aby Dovecot był oddzielony od Postfix w /etc/dovecot/conf.D/10-Logging.conf:

log_path =/var/log/dovecot.dziennik 

Na koniec upewnij się, że dziennik dovecot jest dostępny dla użytkownika GOVECOT:

# chown vmail: dovecot/var/log/dovecot.log # chmod 660/var/log/dovecot.dziennik 

Sprawdź i napraw konfigurację Postifix oraz włącz SMTP, POP3 i IMAP w zaporze ogniowej

Jeśli zdarzyło ci się napotkać jakiekolwiek problemy podczas konfigurowania postfix i / lub dovecot, zamiast przesyłać wszystkie pliki konfiguracyjne, aby poprosić o pomoc, możesz uzyskać podsumowanie konfiguracji (tylko linia niezmienione) z:

# postconf -n # Podsumowanie dla/etc/postfix/main.CF # postconf -m # Podsumowanie dla/etc/postfix/master.cf # doveconf -n # Podsumowanie wszystkich plików konfiguracyjnych dla DoVecot 

Ponadto upewnij się, że skrzynki odbiorcze e -mail są czytelne przez vmail tylko:

# chown -r vmail: vmail /home /vmail 

Pliki konfiguracyjne powinny być również czytelne przez vmail I GOVECOT Użytkownicy:

# chown -r vmail: dovecot /etc /dovecot # chmod -r o -rwx /etc /dovecot 

Na koniec upewnij się, że włączysz SMTP, Pop3, I Imap Przez zaporę ogniową:

# firewall-cmd --add-port = 143/tcp # firewall-cmd --add-port = 143/tcp --Permanent # firewall-cmd --add-port = 110/tcp # firewall-cmd --add- port = 110/tcp --Permanent # firewall-cmd --add-port = 587/tcp # firewall-cmd --add-port = 587/tcp --Permanent 

Skonfiguruj Thunderbird jako klient e -mail dla postfix

Po zabezpieczeniu dostępu za pośrednictwem zapory dla portów używanych w komunikacji e -mail, nadszedł czas, aby skonfigurować klienta e -mail. Za pomocą [chroniony e -mail] i jego odpowiednie hasło, wraz z Poczta.LinuxNewz.com Jako Serwer IMAP (lub POP3) i SMTP jesteśmy gotowi rozpocząć wysyłanie i odbieranie wiadomości e -mail na takie konto:

Postfix: skonfiguruj klienta Thunderbird

Możesz bezpiecznie zlekceważyć wiadomość ostrzegawczą, która jest pokazana, ponieważ używasz certyfikatu, który nie jest podpisany przez zaufany CA CA:

Thunderbird: Dodaj wyjątek bezpieczeństwa

Skonfigurujmy krótki e -mail testowy i kliknij Wyślij:

Skomponuj e -mail na Thunderbird

Po poproszeniu o zaakceptowanie samowystarczalnego certyfikatu dla serwera wychodzącego, potwierdź go wcześniej jak wcześniej:

Thunderbird: Zaakceptuj certyfikat SSL

Na koniec przejdź do e -maila docelowego, aby sprawdzić, czy otrzymałeś wiadomość e -mail, która została właśnie wysłana. Jeśli tak, odpowiedz na to i sprawdź, czy jest dostarczany z powrotem do źródłowej skrzynki odbiorczej e -mail (w przeciwnym razie patrz dziennik postfix na /var/log/maillog lub dziennik dovecot na /var/log/dovecot.dziennik W celu rozwiązywania problemów):

Sprawdź dostawę poczty pocztowej Postfix i Dovecot

Masz teraz działający serwer poczty pocztowej i dovecot i możesz zacząć wysyłać i odbierać e -maile.

Streszczenie

W tym artykule wyjaśniliśmy, jak skonfigurować Postfix i Dovecot do obsługi ruchu e -mail na serwerze Linux. Jeśli coś nie działa, jak wskazano w tym artykule, upewnij się, że poświęcisz czas na sprawdzenie dokumentacji postfix i Dovecot.

Należy pamiętać, że chociaż konfigurowanie serwera poczty postfix nie jest łatwym zadaniem, jest to satysfakcjonujące doświadczenie dla każdego administratora systemu.

Jeśli po przejściu przez dokumenty nadal się z tym zmagasz się Przyrostek i / lub GOVECOT, Zapraszam do upuszczenia nam notatki za pomocą poniższego formularza komentarza, a my z przyjemnością pomożemy (nie zapomnij przesłać do usługi przechowywania online Postfix i konfiguracja Dovecot, jak pobrano za pomocą za pomocą PostConf I Doveconf Jak opisano w tym artykule).