Podstawowe ustawienia zabezpieczeń
Zanim przyjrzymy się zaawansowanym środkom bezpieczeństwa, powinniśmy upewnić się, że podstawowe ustawienia są prawidłowe. Obejmuje to ograniczenie dostępu do serwera Postfix. W pliku /etc/postfix/main.cf
należy dodać lub dostosować następujące wiersze:
inet_interfaces = loopback-only mynetworks = 127.0.0.0/8 [::1]/128
Ustawienia te ograniczają dostęp do lokalnego hosta i zapobiegają nadużywaniu serwera jako otwartego przekaźnika. Otwarty przekaźnik może być wykorzystywany przez spamerów do wysyłania niechcianych wiadomości e-mail, co może poważnie zaszkodzić reputacji serwera. Dlatego tak ważne jest wykonanie tej podstawowej ochrony.
Aktywacja szyfrowania TLS
Użycie TLS (Transport Layer Security) jest niezbędne do zapewnienia poufności komunikacji e-mail. Dodaj następujące linie do pliku main.cf
-plik:
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key smtpd_tls_security_level = may smtp_tls_security_level = may
Te ustawienia aktywują TLS dla połączeń przychodzących i wychodzących. Upewnij się, że używasz ważnych certyfikatów SSL, najlepiej z zaufanego urzędu certyfikacji (CA). Prawidłowo zaimplementowany TLS chroni wiadomości e-mail przed przechwyceniem i manipulacją podczas transmisji. Więcej informacji na temat konfiguracji TLS można znaleźć w oficjalnej [dokumentacji Postfix](https://www.postfix.org/TLS_README.html).
Konfiguracja uwierzytelniania SASL
Simple Authentication and Security Layer (SASL) zapewnia dodatkową warstwę zabezpieczeń. Dodaj te linie do pliku main.cf
dodano:
smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous smtpd_sasl_local_domain = $myhostname
Ta konfiguracja zakłada, że używasz Dovecot jako dostawcy SASL. Jeśli korzystasz z innego dostawcy, dostosuj odpowiednio ustawienia. Uwierzytelnianie SASL uniemożliwia nieautoryzowanym użytkownikom wysyłanie wiadomości e-mail za pośrednictwem serwera, co znacznie zwiększa bezpieczeństwo.
Ochrona przed atakami typu "odmowa usługi
Aby chronić serwer przed przeciążeniem, można ustawić limity połączeń. Dodaj te linie do pliku main.cf
dodano:
smtpd_client_connection_rate_limit = 50 smtpd_client_message_rate_limit = 100 anvil_rate_time_unit = 60s
Ustawienia te ograniczają liczbę połączeń i wiadomości, które klient może wysłać w ciągu minuty. Ograniczając to, można zapobiec przeciążeniu serwera przez masowe żądania lub wiadomości spamowe. Jest to ważny krok w celu zapewnienia dostępności serwera pocztowego.
Wdrożenie ograniczeń HELO/EHLO
Wielu nadawców spamu używa nieprawidłowych lub sfałszowanych nazw hostów HELO/EHLO. Takie połączenia można zablokować za pomocą następujących ustawień:
smtpd_helo_required = yes smtpd_helo_restrictions = permit_mynetworks, reject_invalid_helo_hostname, reject_non_fqdn_helo_hostname
Reguły te wymagają prawidłowej nazwy hosta HELO/EHLO i odrzucają połączenia z nieprawidłowymi lub niekompletnie kwalifikowanymi nazwami domen. Utrudnia to spamerom wysyłanie fałszywych wiadomości e-mail, ponieważ muszą oni podać prawidłowe informacje HELO/EHLO.
Wprowadzenie ograniczeń dotyczących nadajników
Aby zapobiec niewłaściwemu wykorzystaniu serwera, można ustawić ograniczenia dla nadawców:
smtpd_sender_restrictions = permit_mynetworks, reject_non_fqdn_sender, reject_unknown_sender_domain, reject_unauth_pipelining
Reguły te odrzucają wiadomości e-mail od niekompletnych adresów nadawców lub nieznanych domen nadawców. Zmniejsza to prawdopodobieństwo wykorzystania serwera do spamu lub phishingu, a jednocześnie poprawia ogólną jakość otrzymywanych wiadomości e-mail.
Konfiguracja ograniczeń dla odbiorców
Podobnie jak w przypadku ograniczeń dla nadawców, można również definiować reguły dla odbiorców:
smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination, reject_non_fqdn_recipient, reject_unknown_recipient_domain
Ustawienia te zapobiegają nadużywaniu serwera jako przekaźnika dla nieautoryzowanych miejsc docelowych i odrzucają wiadomości e-mail wysyłane na nieprawidłowe adresy odbiorców. Zwiększa to bezpieczeństwo serwera i jednocześnie gwarantuje integralność komunikacji e-mail.
Wdrożenie greylistingu
Greylisting jest skuteczną metodą redukcji spamu. Najpierw zainstaluj pakiet Postgrey:
sudo apt install postgrey
Następnie dodaj następującą linię do main.cf
dodano:
smtpd_recipient_restrictions = ... (istniejące ustawienia) check_policy_service unix:private/postgrey
Ta konfiguracja najpierw przekazuje przychodzące wiadomości e-mail do usługi Postgrey, która generuje tymczasowe odrzucenia dla nieznanych nadawców. Serwery poczty e-mail, które wysyłają legalne wiadomości e-mail, ponawiają próbę dostarczenia po opóźnieniu, skutecznie eliminując nadawców spamu, którzy często próbują wysłać tylko raz.
Aktywuj sprawdzanie SPF
Sender Policy Framework (SPF) pomaga zapobiegać spoofingowi wiadomości e-mail. Najpierw zainstaluj wymagany pakiet:
sudo apt install postfix-policyd-spf-python
Następnie dodaj te linie do main.cf
dodano:
policyd-spf_time_limit = 3600s smtpd_recipient_restrictions = ... (istniejące ustawienia) check_policy_service unix:private/policyd-spf
Ta konfiguracja aktywuje sprawdzanie SPF dla przychodzących wiadomości e-mail. SPF sprawdza, czy wiadomość e-mail została wysłana z autoryzowanego serwera dla określonej domeny, co pomaga zapobiegać spoofingowi i zwiększa wiarygodność komunikacji e-mail.
Wdrożenie podpisywania DKIM
DomainKeys Identified Mail (DKIM) dodaje podpis cyfrowy do wychodzących wiadomości e-mail. Najpierw zainstaluj OpenDKIM:
sudo apt install opendkim opendkim-tools
Następnie skonfiguruj OpenDKIM i dodaj te linie do main.cf
dodano:
milter_protocol = 2 milter_default_action = accept smtpd_milters = unix:/var/run/opendkim/opendkim.sock non_smtpd_milters = unix:/var/run/opendkim/opendkim.sock
Te ustawienia aktywują podpisywanie DKIM dla wychodzących wiadomości e-mail. DKIM zwiększa bezpieczeństwo, zapewniając, że wiadomości e-mail nie zostały zmienione niezauważone i wzmacnia zaufanie do autentyczności wiadomości.
Konfiguracja wytycznych DMARC
Domain-based Message Authentication, Reporting and Conformance (DMARC) opiera się na SPF i DKIM. Dodaj wpis DNS DMARC dla swojej domeny i zainstaluj OpenDMARC:
sudo apt install opendmarc
Skonfiguruj OpenDMARC i dodaj ten wiersz do pliku main.cf
dodano:
smtpd_milters = ... (istniejące ustawienia), inet:localhost:8893
Ta konfiguracja włącza sprawdzanie DMARC dla przychodzących wiadomości e-mail. DMARC pozwala właścicielom domen ustawić zasady dotyczące sposobu, w jaki serwery odbierające powinny obsługiwać nieudane kontrole SPF lub DKIM i zapewnia szczegółowe raporty dotyczące uwierzytelniania wiadomości e-mail.
Regularne aktualizacje i monitorowanie
Bezpieczeństwo jest procesem ciągłym. Upewnij się, że regularnie aktualizujesz swój system Postfix:
sudo apt update sudo apt upgrade
Monitoruj również dzienniki Postfix pod kątem podejrzanej aktywności:
tail -f /var/log/mail.log
Regularne aktualizacje usuwają znane luki w zabezpieczeniach i poprawiają stabilność serwera pocztowego. Ciągłe monitorowanie dzienników umożliwia wczesne rozpoznawanie nietypowych działań i szybkie reagowanie na nie.
Dodatkowe środki bezpieczeństwa
Oprócz podstawowych i zaawansowanych środków bezpieczeństwa istnieją dodatkowe kroki, które można podjąć w celu dalszego zwiększenia bezpieczeństwa serwera Postfix:
Konfiguracja zapory sieciowej
Upewnij się, że zapora sieciowa otworzyła tylko niezbędne porty dla serwera poczty. Zazwyczaj są to port 25 (SMTP), port 587 (przesyłanie) i port 993 (IMAP przez SSL). Użyj narzędzi takich jak ufw
lub iptables
aby kontrolować dostęp do tych portów i blokować niechciane połączenia.
Systemy wykrywania włamań (IDS)
Wdrożenie systemu wykrywania włamań, takiego jak Fail2Ban
aby wykrywać powtarzające się nieudane próby logowania i automatycznie blokować adresy IP, które wykazują podejrzane zachowanie. Zmniejsza to ryzyko ataków siłowych na serwer pocztowy.
Kopie zapasowe i przywracanie
Regularnie twórz kopie zapasowe plików konfiguracyjnych i ważnych danych. W przypadku incydentu związanego z bezpieczeństwem można je szybko przywrócić i zminimalizować przerwy w świadczeniu usług. Kopie zapasowe należy przechowywać w bezpiecznym miejscu i regularnie sprawdzać ich integralność.
Zarządzanie użytkownikami i uprawnieniami
Należy ostrożnie zarządzać kontami użytkowników i przypisywać im tylko niezbędne uprawnienia. Używaj silnych haseł i rozważ wdrożenie uwierzytelniania wieloskładnikowego (MFA), aby dodatkowo zabezpieczyć dostęp do serwera pocztowego.
Najlepsze praktyki dotyczące konserwacji Postfix
Bieżąca konserwacja serwera Postfix ma kluczowe znaczenie dla utrzymania bezpieczeństwa i wydajności. Oto kilka najlepszych praktyk:
- Regularnie sprawdzaj konfigurację: Regularnie sprawdzaj swoje
main.cf
i inne pliki konfiguracyjne, aby zapewnić prawidłowe wdrożenie wszystkich środków bezpieczeństwa. - Analiza dziennika: Użyj narzędzi do automatycznej analizy dzienników poczty, aby szybko zidentyfikować anomalie i potencjalne incydenty bezpieczeństwa.
- Aktualizacje oprogramowania: Regularnie aktualizuj nie tylko Postfix, ale także wszystkie zależne komponenty, takie jak Dovecot, OpenDKIM i OpenDMARC.
- Monitorowanie i alerty: Wdrożenie systemu monitorowania, który powiadamia o nietypowych działaniach lub komunikatach o błędach.
Unikanie typowych błędów w konfiguracji Postfix
Podczas konfigurowania Postfixa w celu maksymalizacji bezpieczeństwa, istnieją typowe błędy, których należy unikać:
- Przekaźnik otwarty: Upewnij się, że serwer nie jest skonfigurowany jako otwarty przekaźnik, ustawiając opcję
inet_interfaces
orazmynetworks
-ustawienia poprawnie. - Nieprawidłowe certyfikaty TLS: Aby skutecznie korzystać z szyfrowania TLS, należy zawsze używać ważnych i aktualnych certyfikatów SSL.
- Brak uwierzytelnienia: Aktywuj uwierzytelnianie SASL, aby zapobiec niewłaściwemu użyciu serwera.
- Niewystarczające limity stawek: Ustaw odpowiednie limity połączeń, aby zapobiec atakom typu denial-of-service.
- Brakujący SPF/DKIM/DMARC: Wdrażaj kompleksowe metody uwierzytelniania wiadomości e-mail, aby zapewnić ich integralność i autentyczność.
Podsumowanie
Konfiguracja Postfix dla maksymalnego bezpieczeństwa wymaga starannego planowania i regularnej konserwacji. Wdrażając środki opisane w tym artykule, można znacznie poprawić bezpieczeństwo serwera poczty e-mail. Pamiętaj, że bezpieczeństwo to proces ciągły. Bądź na bieżąco z nowymi zagrożeniami i najlepszymi praktykami, aby chronić swój serwer Postfix. Skorzystaj z dostępnych zasobów i społeczności, aby się kształcić i być na bieżąco z najnowszymi technologiami.
Aby uzyskać więcej informacji i szczegółowe instrukcje, odwiedź oficjalną [dokumentację Postfix](https://www.postfix.org/documentation.html) i inne zaufane źródła w dziedzinie bezpieczeństwa poczty e-mail.