메일 링리스트를 실행하기 위해 Postfix와 함께 GNU Mailman을 사용하고 있으며, 발송 메일의 전달을 모니터하고 싶습니다. 즉,리스트에서 발송 된 각 메일에 대해 250 (OK) 메시지가 응답되었는지 여부를 확인하십시오. , 나에게 다시보고하십시오.
지금은 빠르고 더럽습니다.
# cat /var/log/syslog | grep "smtp.*to=.*" | grep -v 250
smtpd의 출력을 모니터링하는 확실한 방법이 있습니까?
답변
보낸 메일을 깔끔하게 모니터링 할 수있는 방법이 없습니다. postfix의 메일 로그에서만 세부 사항을 grep 할 수 있습니다.
예를 들면 다음과 같습니다.
log='logfile of postfix'
grep "status=sent" $log | \
egrep -ve 'postfix/(cleanup|pickup|master|qmgr|smtpd|local|pipe)'
또한 로그 dkim
등을 피하십시오 . 메일 수가 필요한 경우 wc -l
끝에 파이프 하십시오.
답변
어때요?
multitail -eX "smtp.*to=<(.*)>.*sent.*250" './bin/received' -f /var/log/maillog
./bin/received는 대상 이메일 주소를 매개 변수로 가져 와서 무언가를 수행하는 쉘 스크립트입니다.
답변
이 시도
cat /var/log/maillog |grep -v "relay=local" |grep "relay=" |grep "status=sent"
당신은 여기에 매우 유용한 정보를 찾을 수 있습니다 http://en.redinskala.com/postfix-maillog-interpretation/
답변
누가 내 서버를 통해 이메일을 보내는 사람을보고 있습니다.
tail -f /var/log/mail.log | grep 'sasl'
인증 된 사용자가 보내는 사람을 보여줍니다.