Pular para o conteúdo
Início » Gerenciando as Filas do Postfix

Gerenciando as Filas do Postfix

Postfix é um Mail Transfer Agent (MTA) extremamente flexível. Uma das suas características é o uso de várias filas para gerenciar os emails. Neste artigo, vamos mergulhar nas diferentes filas do Postfix e aprender como gerenciá-las.

Filas do Postfix

  1. Incoming: Os emails que chegam através da rede, entregues pelo maildrop, ficam nessa fila.
  2. Active: Os emails nesta fila são aqueles que o gerenciador da fila abriu para entregas. Há um limite no número de mensagens que essa fila pode comportar.
  3. Deferred: Os emails que falharam na primeira tentativa de entrega são colocados aqui. O gerenciador de fila (QMGR) usará as configurações no main.cf para tentar entregar novamente esses emails. Por padrão, o tempo entre as tentativas de entrega é dobrado a cada falha.
  4. Corrupt: Emails com arquivos de fila que não podem ser lidos ou estão danificados são movidos para essa fila para inspeção.
  5. Hold: Essa fila contém emails que o administrador colocou em espera. Eles permanecerão aqui até que sejam especificamente liberados.

A gestão destas filas é realizada pelo QMGR, cujos detalhes podem ser encontrados aqui.

Localização das Filas

Todas essas filas estão localizadas no diretório /var/spool/postfix/. Ao listar esse diretório, podemos ver todas as filas e outros diretórios relacionados, como mostrado abaixo:

root@mailserver:/etc/postfix# ls /var/spool/postfix/ -la

Gerenciando as Filas com Postqueue e Postsuper

Ambos postqueue e postsuper são ferramentas poderosas para gerenciar as filas do Postfix.

  • Comandos postqueue:
  • postqueue -p: Veja a situação atual da sua fila.
  • postqueue -f: Envie imediatamente emails que estão na fila deferred.
  • postqueue -i message_id: Inicie a entrega imediata de um email específico.
  • postqueue -s mda.gov.br: Inicie a entrega imediata de emails para um domínio específico.
  • Comandos postsuper:
  • postsuper -h queue_id: Coloque um email em espera.
  • postsuper -H queue_id: Libere um email que estava em espera.
  • postsuper -d queue_id: Remova um email das filas.
  • postsuper -d ALL: Remova todos os emails das filas.
  • postsuper -p: Limpe os arquivos temporários das filas.
  • postsuper -s: Verifique e repare as filas se necessário.
  • postqueue -r queue_id: Reinsira um email na fila.

Visualizando as Filas com Qshape

Qshape é uma ferramenta de análise estatística para Postfix. Para visualizar diferentes filas, podemos usar os seguintes comandos:

  • qshape active|head
  • qshape deferred|head
  • qshape incoming|head
  • qshape hold|head

Monitorando as Filas com Shell Script

Podemos usar um script para monitorar continuamente as filas. Por exemplo, o script contafilas mostra o número de emails em cada fila:

  #!/bin/bash

#Nerd Expert nerdexpert.com.br
# variaveis

while true;do
clear
qdir=`/usr/sbin/postconf -h queue_directory`

incoming=`/usr/bin/find $qdir/incoming -type f -print | wc -l | awk '{print $1}'`
maildrop=`/usr/bin/find $qdir/maildrop -type f -print | wc -l | awk '{print $1}'`
active=`/usr/bin/find $qdir/active -type f -print | wc -l | awk '{print $1}'`
deferred=`/usr/bin/find $qdir/deferred -type f -print | wc -l | awk '{print $1}'`
hold=`/usr/bin/find $qdir/hold -type f -print | wc -l | awk '{print $1}'`
corrupt=`/usr/bin/find $qdir/corrupt -type f -print | wc -l | awk '{print $1}'`

# imprimindo informacoes

echo "Verificando Filas" 
echo -e "\nE-mails chegando (incoming queue): $incoming"
echo "E-mails sendo processados (maildrop): $maildrop"
echo "E-mails na fila para entrega (active queue): $active"
echo "E-mails que nao foram entregues (deferred queue): $deferred"
echo -e "E-mails com problemas (corrupt queue): $corrupt\n"
sleep 5
done

Para usar o script, salve-o como /etc/postfix/contafilas, torne-o executável (chmod +x /etc/postfix/contafilas) e execute-o.

Conclusão

O gerenciamento eficiente das filas do Postfix é crucial para garantir que os emails sejam entregues de maneira oportuna e confiável. Utilizando as ferramentas e técnicas acima, os administradores podem manter suas instalações do Postfix funcionando de maneira otimizada.