Tüm giden postaları / dev / null adresine gönder


12

Sendmail ile, giden tüm postaları / dev / null adresine nasıl gönderirsiniz veya e-postanın sıraya alınmasını veya gönderilmesini nasıl önlersiniz?

Bir geliştirme nagios kutusunda, bildirimlerin dışarı çıkmaması için posta gönderilmesini önlemek istiyorum. Giden postayı durdurmak, nagios yapılandırmasını olduğu gibi test etmeme ve sahte bildirimleri engellememe olanak tanır.


Soru olarak solaris etiketi kaldırıldı ve çözüm OS'ye özgü değil.
Steve Schnepp

Yanıtlar:


8

Sendmail'i tamamen devre dışı bırakarak ve daha sonra basit bir perl betiğini SMTP bağlantı noktasında dinleyip e-postaları bir dizine dökerek geliştirme kutumda yaptım. Sendmail yapılandırma ile yapmak mümkün eminim, ama perl betiği çok daha kolay oldu. İşte gerekli noktalara soyuldu:

#!/usr/bin/perl -w 
use Net::SMTP::Server; 
use Net::SMTP::Server::Client; 

$server = new Net::SMTP::Server || die("$!\n"); 

while($conn = $server->accept()) { 
  my $client = new Net::SMTP::Server::Client($conn) || 
    die("Unable to handle client connection: $!\n"); 
  $client->process || next; 

  # Here's where you can write it out or just dump it. Set $filename to 
  # where you want to write it
  open(MAIL,"> $filename") || die "$filename: $1"; 
  print(MAIL "$client->{MSG}\n"); 
  close(MAIL); 
} 

Bu düşündüğümden daha iyi bir çözüm. Teşekkürler.
cwebber

+1 Ne kadar zarif bir çözüm, aynı soruyu sormak üzereydim.
Kev

6

Aşağıdaki her şeyi / dev / null öğesine gönderir:

LOCAL_RULE_0
R$* < @ $* > $*       $#local $: bit-bucket

Bu, / etc / takma adlarınızda:

bit-bucket: /dev/null

Bunu yazmamaya dikkat edin - kuralın iki tarafı arasında bir SEKME vardır.
Erica Kane

Hangi e-posta sistemini kullanıyorsunuz ve bu kuralı nereye ekliyorsunuz?
teknopaul

Sendmail.org'dan standart sendmail. Kural sendmail.mc dosyasına eklenir ve sonra sendmail.cf işletim sisteminizin / dağıtımınızın özelliklerine göre üretilir.
adamo

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.