Sorunuzu yeniden yazacağım:
Smtpd (bağlantı noktası 25) ve gönderme (bağlantı noktası 587) için farklı _header_checks'i nasıl kullanabilirim?
Bu kanonik problem birkaç koşulla ayrılabilir
- Ben smtpd veya gönderme biri için header_checks kapatmak istiyorum.
- Smtpd ve gönderme için farklı header_checks çalıştırmak istiyorum.
1. smtpd veya gönderme biri için header_checks kapatmak istiyorum.
Örnek için gönderimi (giden e-posta) için header_check kapatmak istediğinizi varsayalım .
Çözüm 1: Receive_override_options Yöntemi
Take_override_options adlı postfix parametresini kullanabilirsiniz . Parametre ile global header_check anahtarını geçersiz kılabilirsiniz, böylece filtre çalışmaz. # main.cf header_checks = pcre: / yol / / / header_checks
#master.cf
submission inet n - n - - smtpd
-o receive_override_options=no_header_body_checks
Uyarılar: bu, adam 5 header_checks içinde tanımlanan ALL _header_checks ve body_checks komutlarını kapatır . Tamamlanacak kontrol hangi parametrenin kapatılacağını görmek için bkz. Çözüm 2.
Çözüm 2: Birden çok temizleme hizmeti yöntemi
Biz can çoklu temizleme hizmeti tekniği olarak sorun için *_header_checks
tarafından gerçekleştirildi temizleme hizmeti. Bu kurulumun örneğini amavisd-new tutorial'da görebilirsiniz .
Bu yapılandırma için sihirli parametre cleanup_service_name şeklindedir . Bu parametre ile, her smtpd işlemi için farklı temizleme hizmeti kullanabiliriz. İlk olarak master.cf dosyasında ek bir temizleme hizmeti (başlıksız denetim adı verilir) tanımlarız
no-headerchecks unix n - n - 0 cleanup
-o mime_header_checks=
Bu temizlemede, filtrelemeyi devre dışı bırakmak için boş mime_header_checks tanımlarız. Son adım, gönderim hizmetine başlıksız denetimlerimizi kullanmasını bildirmektir
submission inet n - n - - smtpd
-o cleanup_service_name=no-headerchecks
2. smtpd ve gönderim için farklı header_checks çalıştırmak istiyorum.
Bu sorun için yukarıda açıklandığı gibi birden çok temizleme hizmeti yöntemi kullanabilirsiniz.
İlk olarak master.cf dosyasında bir ek temizleme hizmeti (ikinci başlık denetimi denir) tanımlarız
second-headerchecks unix n - n - 0 cleanup
-o mime_header_checks=pcre:/path/to/2ndheaderchecks
Bu temizleme işleminde, diğer PCRE tablosuna ikinci mime_header_checks tanımlarız. Son adım, gönderim hizmetine ikinci başlık kontrollerimizi kullanmasını söylemektir
submission inet n - n - - smtpd
-o cleanup_service_name=second-headerchecks
Not:
Vakanız bu soruya benzer . Ne yazık ki Laurentiu Roescu'nun yanıtı yalnızca , taşıma olarak smtp kullanan giden postalar için header_checks özelliğini etkinleştirmek istiyorsanız çalışır . İyi haber şu ki, cleanup
daemon hakkındaki ilk cümlesi bize ikinci çözüm için biraz fikir veriyor.
Farklı header_checks, body_checks ve içinde tanımlanan diğer parametreleri istiyorsanız çoklu temizleme servisi yöntemi uygulanabilir man 5 header_checks
.