Opublikowany serwer pocztowy Postfix 3.9.0

Po prawie roku prac programistycznych zrealizowano wydanie nowej stabilnej wersji serwera pocztowego Postfix — 3.9.0. Jednocześnie ogłoszono zakończenie wsparcia dla wersji Postfix 3.5, wydanej na początku 2020 roku. Postfix jest jednym z nielicznych projektów, które jednocześnie zapewniają wysokie bezpieczeństwo, niezawodność i wydajność, co udało się osiągnąć dzięki przemyślanej architekturze oraz dość rygorystycznej polityce kodowania i audytu poprawek. Kod projektu jest napisany w języku C i jest udostępniany na licencjach EPL 2.0 (Eclipse Public License) i IPL 1.0 (IBM Public License).

Według styczniowego zautomatyzowanego badania około 400 tysięcy pocztowych serwerów, Postfix jest wykorzystywany na 36,81% (rok temu 33,18%) serwerów pocztowych, udział Exim wynosi 56,61% (rok temu 60,27%), Sendmail — 3,60% (3,62%), MailEnable — 1,82% (1,86%), MDaemon — 0,40% (0,39%), Microsoft Exchange — 0,19% (0,19%), OpenSMTPD — 0,09% (0,06%).

Opublikowany serwer pocztowy Postfix 3.9.0

Główne nowości:

  • Dodano klienta dla MongoDB, umożliwiającego przechowywanie w tej bazie danych bazy wirtualnych użytkowników, aliasów, list mapowania adresów oraz różnych tabel kontrolnych. Do konfiguracji połączeń z MongoDB dodano typ tabeli „mongodb”. Na przykład, „alias_maps = proxy:mongodb:/etc/postfix/mongo.cf”, gdzie mongo.cf to plik z ustawieniami połączenia z MongoDB i filtrem zapytań.
  • Do agenta lokalnej dostawy dodano eksport identyfikatora przekazywania, przekazywanego podczas sesji SMTP przez parametr ENVID (Envelope ID) w komendzie ESMTP MAIL (RFC 3461). Identyfikator jest zapisywany w zmiennej środowiskowej ENVID i przekazywany do agenta dostawy pipem przez parametr wiersza poleceń „${envid}.
  • W klientach do przechowywania danych w MySQL („mysql:”) i PostgreSQL („pgsql:”) dodano parametry: „idle_interval” do określania czasu nieaktywności przed zamknięciem połączenia oraz „retry_interval” do ustalania timera powtarzania zapytań. Domyślnie parametry te ustawione są na 60 sekund. Wartość „retry_interval” można zmniejszyć, na przykład, aby skrócić czas odzyskiwania po błędach, w przypadku używania tylko jednego serwera w atrybucie „hosts”.
  • W kliencie dla MySQL dodano ustawienie „charset” do określenia domyślnej kodowania znaków. Domyślnie używana jest wartość „utf8mb4”, odpowiadająca domyślnym ustawieniom w MySQL 8.0 (w wcześniejszych wydaniach używana była wartość „latin1”). Zakończono wsparcie dla wersji starszych niż MySQL 4.0 (to znaczy wersji wydanych przed 2003 rokiem).
  • Wprowadzono opcjonalną możliwość żądania samopodpisanego (raw) klucza publicznego do TLS, niezwiązanego z urzędami certyfikacji, zamiast certyfikatu X.509. Użycie kluczy raw do uwierzytelniania klientów i serwerów włącza się za pomocą parametrów „smtpd_tls_enable_rpk = yes” i „smtp_tls_enable_rpk = yes”, ale zachowanie przy weryfikacji w dużym stopniu zależy od ustawionego poziomu bezpieczeństwa i wsparcia kluczy raw w lokalnej implementacji TLS (patrz dokumentacja).
  • Dodano wstępną obsługę plików konfiguracyjnych OpenSSL. Aby wskazać ścieżkę do pliku z ustawieniami TLS, zaproponowano parametr tls_config_file, a do wskazania nazwy sekcji z ustawieniami z pliku konfiguracyjnego — parametr „tls_config_name”. Powiązanie z plikami konfiguracyjnymi OpenSSL można wykorzystać do zmniejszenia zależności od ustawień dystrybucji, których zmiana poziomu bezpieczeństwa może prowadzić do wzrostu liczby wiadomości wysyłanych bez szyfrowania.
  • W nagłówkach wiadomości zmieniono formatowanie numerów dni w datach — dni od 1 do 9 są teraz uzupełniane zerem, a nie spacją (tj. „01”, „02” itd.). Zmiana została dokonana, ponieważ RFC 5322 zaleca używanie pojedynczych spacji jako separatorów w datach.
  • Dodano ochronę przed niektórymi rodzajami ataków „Blind” (atakami SSRF na klientów webowych, celującymi w dostęp do serwera poprzez SMTP), które są stosowane przy ustawieniu „smtpd_forbid_unauth_pipelining = yes” (domyślnie).
  • Domyślnie włączono ustawienie „smtpd_forbid_bare_newline = normalize”, zapewniające ochronę serwera przed atakami typu „SMTP smuggling”, które umożliwiają rozdzielenie jednej wiadomości na kilka różnych wiadomości poprzez użycie niestandardowej sekwencji do oddzielania e-maili. Dodano również ochronę przed przeprowadzaniem wychodzących ataków SMTP smuggling, w których atakujący wykorzystuje serwer oparty na Postfix do atakowania innego serwera SMTP. Domyślnie włączono ustawienie „cleanup_replace_stray_cr_lf = yes”, które zamienia zbędne znaki <CR> i <LF> na spacje.
  • W implementacji klienta DNS rozmiar zwracanych wyników zapytań DNS jest teraz ograniczony do 100 rekordów, co jest 20 razy większe niż maksymalna liczba wspierana w kliencie SMTP. adresów IP dla jednego serwera.
  • Parametry „disable_dns_lookup” i „permit_mx_backup” oraz niektóre parametry konfiguracyjne TLS zostały uznane za przestarzałe.
  • Wsparcie dla ustawień, które ogłoszono jako przestarzałe prawie 20 lat temu, zostało zakończone: «permit_naked_ip_address», «check_relay_domains» i «reject_maps_rbl».

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster