Pelayan mel Postfix 3.9.0 diterbitkan

Selepas hampir setahun pembangunan, cawangan stabil baru pelayan mel Postfix - 3.9.0 - telah dikeluarkan. Pada masa yang sama, ia mengumumkan penamatan sokongan untuk cawangan Postfix 3.5, dikeluarkan pada awal tahun 2020. Postfix adalah salah satu projek jarang yang menggabungkan keselamatan tinggi, kebolehpercayaan dan prestasi pada masa yang sama, yang dicapai berkat seni bina yang difikirkan dengan baik dan dasar yang agak ketat untuk reka bentuk kod dan pengauditan tampalan. Kod projek ditulis dalam bahasa C dan diedarkan di bawah EPL 2.0 (Eclipse Public License) dan IPL 1.0 (IBM Public License).

Menurut tinjauan automatik Januari kira-kira 400 ribu pelayan mel, Postfix digunakan pada 36.81% (setahun lalu 33.18%) pelayan mel, bahagian Exim ialah 56.61% (setahun lalu 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%).

Pelayan mel Postfix 3.9.0 diterbitkan

Inovasi utama:

  • Pelanggan untuk MongoDB telah ditambah, membolehkan anda menyimpan pangkalan data pengguna maya, alias, senarai padanan alamat dan pelbagai jadual semak dalam DBMS ini. Untuk mengkonfigurasi akses kepada MongoDB, jenis jadual "mongodb" telah ditambahkan. Contohnya, “alias_maps = proxy:mongodb:/etc/postfix/mongo.cf”, dengan mongo.cf ialah fail dengan tetapan untuk menyambung ke MongoDB dan penapis pertanyaan.
  • Ditambahkan eksport ke Ejen Penghantaran Tempatan ID pemajuan yang diluluskan semasa sesi SMTP melalui parameter ENVID (ID Sampul Surat) dalam arahan ESMTP MAIL (RFC 3461). Pengecam ditulis kepada pembolehubah persekitaran ENVID dan dihantar kepada ejen penghantaran paip melalui parameter baris arahan "${envid}".
  • Parameter berikut telah ditambahkan kepada pelanggan untuk menyimpan data dalam MySQL (“mysql:”) dan PostgreSQL (“pgsql:”): “idle_interval” untuk menentukan masa tidak aktif sebelum menutup sambungan dan “retry_interval” untuk menetapkan pemasa untuk menghantar semula permintaan. Secara lalai, parameter ditetapkan kepada 60 saat. Nilai "retry_interval" boleh dikurangkan, sebagai contoh, untuk mengurangkan masa pemulihan ralat, dalam hal menggunakan hanya satu pelayan dalam atribut "hosts".
  • Tetapan "charset" telah ditambahkan pada klien MySQL untuk menentukan pengekodan aksara lalai. Nilai lalai ialah "utf8mb4", sepadan dengan tetapan lalai dalam MySQL 8.0 (dalam keluaran terdahulu nilainya ialah "latin1"). Sokongan untuk versi yang lebih lama daripada MySQL 4.0 (iaitu versi yang dikeluarkan sebelum 2003) telah dihentikan.
  • Pilihan pilihan telah disediakan untuk meminta kunci awam (mentah) yang ditandatangani sendiri untuk TLS yang tidak terikat dengan pihak berkuasa pensijilan, bukannya sijil X.509. Penggunaan kunci mentah untuk mengesahkan pelanggan dan pelayan didayakan melalui parameter "smtpd_tls_enable_rpk = yes" dan "smtp_tls_enable_rpk = yes", tetapi tingkah laku semasa pengesahan sangat bergantung pada tahap keselamatan yang ditetapkan dan sokongan kunci mentah dalam pelaksanaan TLS tempatan (lihat dokumentasi).
  • Menambah sokongan awal untuk fail konfigurasi OpenSSL. Untuk menentukan pautan ke fail dengan tetapan TLS, parameter tls_config_file dicadangkan dan untuk menentukan nama bahagian dengan tetapan daripada fail konfigurasi, parameter "tls_config_name" dicadangkan. Memautkan kepada fail konfigurasi OpenSSL boleh digunakan untuk mengurangkan pergantungan pada tetapan pengedaran, yang menukar tahap keselamatan boleh membawa kepada peningkatan dalam perkadaran mesej yang dihantar tanpa penyulitan.
  • Dalam pengepala mesej, pemformatan nombor hari dalam tarikh telah diubah - hari 1 hingga 9 kini berlapik dengan sifar dan bukannya ruang (iaitu “01”, “02”, dsb.). Perubahan dibuat kerana RFC 5322 mengesyorkan menggunakan ruang tunggal sebagai pembatas dalam tarikh.
  • Perlindungan tambahan terhadap jenis serangan "Buta" tertentu (serangan SSRF pada klien web yang bertujuan untuk mengakses pelayan melalui SMTP), yang digunakan apabila tetapan "smtpd_forbid_unauth_pipelining = ya" ditetapkan (lalai).
  • Secara lalai, tetapan “smtpd_forbid_bare_newline = normalize” didayakan, yang melindungi pelayan daripada serangan “penyeludupan SMTP”, yang membenarkan satu mesej dibahagikan kepada beberapa mesej berbeza melalui penggunaan urutan bukan standard untuk mengasingkan huruf. Perlindungan juga telah ditambah terhadap serangan penyeludupan SMTP keluar, di mana penyerang menggunakan pelayan berasaskan Postfix untuk menyerang pelayan SMTP yang lain. Secara lalai, tetapan "cleanup_replace_stray_cr_lf = yes" didayakan, menggantikan aksara tambahan Dan ke angkasa lepas.
  • Dalam pelaksanaan klien DNS, saiz hasil pertanyaan DNS yang dikembalikan kini terhad kepada 100 rekod, iaitu 20 kali ganda bilangan maksimum alamat IP setiap pelayan yang disokong klien SMTP.
  • Parameter "disable_dns_lookup" dan "permit_mx_backup", serta beberapa parameter konfigurasi TLS, telah ditamatkan.
  • Sokongan untuk tetapan yang telah ditamatkan kira-kira 20 tahun yang lalu telah dihentikan: "permit_naked_ip_address", "check_relay_domains" dan "reject_maps_rbl".

Sumber: opennet.ru

Tambah komen