O que devo configurar para enviar e-mail na linha de comando?

3

Estou a trabalhar no computador em casa Quero enviar-me um email e tentei:

uuencode all.sh all.sh | mail [email protected] 

Mas o problema é que nada chega ao meu email, só recebo o seguinte erro:

mail: cannot send message: Process exited with a non-zero status

O fato é que eu uso o mesmo comando no trabalho e funciona bem, eu gostaria de agradecer qualquer sugestão para corrigir esse problema. Não tenho certeza se é necessário configurar qualquer arquivo antes de usar essa linha de comando no meu computador pessoal. Eu tentei também com a instalação do mutt:

mutt [email protected] < all.sh 

mas recebi o seguinte erro:

sendmail: Cannot open mail:25
Error sending message, child exited 1 ().
Could not send the message.
    
por neo33 01.08.2016 / 01:40

1 resposta

5

O comando básico mail é apenas um leitor de e-mail e um compositor, ele não sabe como falar com um servidor pela rede (com o SMTP protocolo). Falar SMTP é o trabalho de um MTA (agente de transferência de mensagens) . O MTA padrão no Ubuntu é o Postfix. Para configurar o Postfix, execute

sudo dpkg-reconfigure postfix

Se você quiser apenas enviar e-mails e não receber nenhum, escolha "Sistema de satélite".

Observe que, a menos que você tenha uma máquina conectada permanentemente, com entradas de DNS adequadas e, preferencialmente, com um endereço IP estático, não será possível receber diretamente mensagens: você precisará usar um servidor externo e buscar as mensagens usando um protocolo como o IMAP.

O Ubuntu inclui várias versões do comando mail . A versão heirloom-mailx sabe como falar SMTP. Você configura em ~/.mailrc . A configuração pode ser algo como isto:

set smtp=smtp.example.com
set smtp-use-starttls
set smtp-auth-user=neo33
set smtp-auth-password=swordfish
    
por 01.08.2016 / 02:35