Alterando o tamanho máximo do correio no Postfix

20

Ao enviar email grande para um novo servidor CentOS6 executando o Postfix como o MTA, a seguinte mensagem é retornada:

tried to deliver your message, but it was rejected by the recipient domain. We recommend contacting the other email provider for further information about the cause of this error. The error that the other server returned was: 552 552 5.3.4 Error: message file too big (state 18)

Encontrei a seguinte sugestão , mas não sei ao certo onde ela deve ser adicionada ao main.cfarquivo:

Isso foi causado pelo Postfix e é limitado não apenas às mensagens, mas também aos tamanhos das caixas de correio.

Eu tive que adicionar essa configuração em /etc/postfix/main.cf:

message_size_limit = 31457280

Como o tamanho máximo do correio (incluindo anexos) pode ser aumentado no Postfix?

Warren
fonte

Respostas:

19

Adicione-o em qualquer lugar em main.cf, não é relevante :) Mas é bom manter as diretivas agrupadas de alguma maneira lógica, é mais fácil para manutenção

De acordo com a documentação oficial do postfix:
message_size_limit (default: 10240000)O tamanho máximo em bytes de uma mensagem, incluindo informações de envelope. Nota: tenha cuidado ao fazer alterações. Valores excessivamente pequenos resultarão na perda de notificações de falha na entrega, quando o tamanho da mensagem de devolução exceder o limite de tamanho da mensagem local ou remota do MTA.

Além disso, o tamanho padrão da caixa de correio de 50M pode impedir a entrega de emails, especialmente após aumentar o tamanho permitido da mensagem. Para aumentar o tamanho máximo por caixa de correio do usuário, adicione mailbox_size_limit = <size in bytes>ao main.cf.

Além disso, como Ian Sparkes comentou, se você estiver usando uma configuração de caixa de correio virtual, poderá ser necessário definir virtual_mailbox_limit = <size_in_bytes>.

Boban P.
fonte
3
Se você estiver usando uma configuração de caixa de correio virtual, talvez seja necessário definir as virtual_mailbox_limit = <size_in_bytes> idades em que me levou para encontrar isso, ninguém parece falar sobre isso. ;) No final, se encontrado invocando postconfe procurando candidatos com aparência provável.
ISparkes
O limite de tamanho da mensagem padrão é 10240000 bytes = 10 MB, não 50 MB
1
@黄雨伞- tamanho caixa de correio e tamanho da mensagem são diferentes, e descrito nesta resposta diferente
Warren
1) 2018. 2) Fornecendo tamanhos de correio em unidades de bytes. WTF.
David Tonhofer
Sim seria bom se capaz de fazer message_size_limit=15M (apenas uma sugestão, não tente isso)
Yetti99
11

Sim, você está correto: message_size_limit é a diretiva de configuração que você precisa. Coloque-o em qualquer lugar do arquivo main.cf e recarregue (ou reinicie) o Postfix.

Você pode usar a ferramenta postconf para verificar o valor atualmente configurado:

postconf message_size_limit
Vladimir Blaskov
fonte
7

Cuidado ao definir esse limite para um número alto. Você precisa de pelo menos 1,5 vezes o tamanho do message_size_limitespaço livre na partição em que a fila do Postfix reside. Se você não tiver esse espaço livre, todas as mensagens serão rejeitadas, mesmo que tenham apenas alguns kilobytes de tamanho. E se você receber uma mensagem desse tamanho e o espaço exceder (durante a entrega final da caixa de correio) todas as outras mensagens serão rejeitadas. Devido à falta de espaço.

Observe também: O email não é um protocolo de transferência de arquivos. Veja este controle de qualidade: Por que ainda temos restrições de tamanho de arquivo de anexo de email tão pequenas?

mailq
fonte
4

Não se esqueça de definir

virtual_mailbox_limit = <size_in_bytes>

se você estiver usando uma configuração de caixa de correio virtual. Levei anos para encontrar isso, ninguém parece falar sobre isso. ;)

ISparkes
fonte
2
Apreciar o comentário - mas isso seria melhor como uma edição sugerida para a resposta existente e / ou como um comentário sobre ele :)
Warren
2
Você está certo, eu mudei. Excluirá esta resposta.
ISparkes
você deve excluir esta resposta :) #
1100 warren