Pergunta

Estou executando um servidor FreeBSD e eu ter sido enviado um aviso de que o spam foi enviado do meu servidor. Eu não tenho isso definido como uma retransmissão aberta e eu ter personalizado a configuração do sendmail. Eu gostaria de saber quem está enviando o e-mail, juntamente com o seu nome de usuário, a linha de assunto do email, bem como um resumo de quanto e-mail que eles têm enviado. Eu gostaria de executar um relatório em um log semelhante à forma como é feito durante o processamento de logs do servidor Apache.

Quais são as minhas opções?

Foi útil?

Solução

Uma idéia é apelido sendmail para ser um script personalizado, que simplesmente gatos os argumentos sendmail para a extremidade de um registro antes de chamar sendmail da maneira usual.

Outras dicas

Você também pode monitorar todas as chamadas de sistema para funções write e read executando:

ps auxw | grep sendmail | awk '{print"-p " $2}' | xargs strace -s 256 -f 2>&1 | grep -E $'@|(([0-9]+\.){3}[0-9]+)' | tee -a "/var/log/sendmail-logs.log"

Isto lhe dará acesso directo à informação, você não pode ir mais fundo eu acho.

Você pode dar alguns logs de amostra? Eu acho que você está melhor aposta seria a de olhar através deles tanto com grep ou cut para obter os de origem / destinos que estão sendo enviados também. Além disso, você pode escrever um script Perl para automatizar uma vez que você tem a regex correto. Esta seria a melhor opção.

Se o FreeBSD tem configuração padrão, você tem apenas uma maneira de correio de saída alça, verifique o que o envio através de você sendmail sistema em /etc/mail.

Todo o correio de saída deve ser registrado pelo /var/log/maillog

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top