exim
Postado em 26/06/2008 por Rogerio - Categoria: Dicas Linux - Tags: comandos exim mailqueue
Exim é um mail transport agent (MTA) para uso em sistemas Unix conectados à Internet. Ele é disponibilizado livremente sob os termos da GNU General Public Licence. Há uma grande flexibilidade na forma que um email pode ser encaminhado, e há muitos utilitários para verificar os e-mails recebidos. Exim pode ser instalado no lugar do Sendmail, embora a configuração do Exim seja bastante diferente.
Exim é facilmente gerenciado via linha de comando. Podemos facilmente remover emails da fila se algum usuário em particular fizer o envio de um grande número de e-mails. Veja abaixo os exemplos de alguns comandos:
01. Para retornar a quantidade de emails na fila:
exim -bpc
02. Para retornar a lista de mensagens da fila (tempo na fila, tamanho, ID, remetente, destinatário)
exim -bp
03. Retornar um sumário das mensagens na fila (quantidade, volume, mais antiga, mais nova, domínio e totais)
exim -bp | exiqsumm
04. Ver o que o Exim está fazendo neste momento:
exiwhat
05. Fingir e executar uma transação SMTP a partir da linha de comando, como se fosse proveniente do endereço IP fornecido. Isto irá exibir como o Exim aplica as checagens, ACLs e filtros. A mensagem não vai realmente ser entregue.
exim -bh 192.168.11.22
06. Retornar todas as configurações do Exim:
exim -bP
07. Use -f para pesquisar as mensagens de um remetente específico:
exiqgrep -f [luser]@domain
08. Use -r para pesquisar as mensagens para um destinatário específico:
exiqgrep -r [luser]@domain
09. Use -o para retornar as mensagens mais velhas que o número de segundos especificado. Por exemplo, mensagens mais velhas que 1 dia:
exiqgrep -o 86400 [...]
10. Use -y para retornar as mensagens que são mais novas que o número de segundos especificado. Por exemplo, mensagens mais novas que 1 hora:
exiqgrep -y 3600 [...]
11. Use -s para retornar as mensagens por tamanho utilizando expressão regular. Por exemplo, 700-799 bytes:
exiqgrep -s '^7..$' [...]
Use -z para retornar somente as mensagens frozen, ou -x para retornar somente as não frozen. Existem também algumas opções que alteram a forma do retorno.
12. Use -i para retornar apenas o ID da mensagem como resultado de uma das duas opções de pesquisa anteriores:
exiqgrep -i [ -r | -f ] ...
13. Use -c para retornar a quantidade de mensagens que casam com as opções de pesquisa acima:
exiqgrep -c ...
14. Retornar apenas o ID das mensagens de toda a fila:
exiqgrep -i
15. Iniciar o envio da fila:
exim -q -v
16. Iniciar o envio da fila apenas para as mensagens locais:
exim -ql -v
17. Remover uma mensagem da fila:
exim -Mrm message-id [ message-id ... ]
18. Congelar uma mensagem:
exim -Mf message-id [ message-id ... ]
19. Enviar uma mensagem da fila:
exim -Mt message-id [ message-id ... ]
20. Enviar uma mensagem da fila, mesmo que o tempo de timeout foi alcançado ou não e independente se está congelada ou não:
exim -M message-id [ message-id ... ]
21. Enviar uma mensagem da fila, mas somente se o retry time foi alcançado:
exim -Mc message-id [ message-id ... ]
22. Forçar uma mensagem a falhar e retornar como "cancelado pelo administrator":
exim -Mg message-id [ message-id ... ]
23. Remover todas as mensagens da fila
exiqgrep -i | xargs exim -Mrm
24. Remover todas as mensagens congeladas (frozen):
exiqgrep -z -i | xargs exim -Mrm
25. Remover todas as mensagens mais velhas que 5 dias (86400 * 5 = 432000 segundos):
exiqgrep -o 432000 -i | xargs exim -Mrm
26. Congelar todas as mensagens da fila de um remetente especifico:
exiqgrep -i -f luser@example.tld | xargs exim -Mf
27. Ver o cabeçalho de uma mensagem:
exim -Mvh message-id
28. Ver o corpo de uma mensagem:
exim -Mvb message-id
29. Ver os logs de uma mensagem:
exim -Mvl message-id
30. Adicionar um destinatário à uma mensagem:
exim -Mar message-id address [ address ... ]
31. Alterar o remetente de uma mensagem:
exim -Mes message-id address
32. Testar se um email é válido:
exim -bt user@domain.com
Para remover manualmente toda a fila de email siga os passos: