sendmail: como configurar o sendmail no ubuntu? [fechadas]

189

Quando eu procurei configurar o sendmail no ubuntu, não recebi uma resposta clara, cada um deles assume que eu sei do que está falando,

Eu só quero a configuração básica para permitir o envio de e-mails, basicamente eu o usarei com o google app engine para permitir o envio de e-mails do servidor de desenvolvimento.

Eu já fiz isso:

sudo apt-get install sendmail

então

sudo sendmailconfig

mas não sei o que o último realmente fez.

UXE
fonte
4
@ThiefMaster, não estamos mais migrando perguntas para os sites SE adequados?
Michael Michael
Esta pergunta é muito antiga para ser migrada (e já era assim quando a fechei).
ThiefMaster
1
Nenhuma dessas respostas funcionou para mim. Encontrei este artigo on-line que funciona para mim: daveperrett.com/articles/2013/03/19/…
Online Sid
@ThiefMaster define "muito antigo" você está dizendo que o sendmail está obsoleto? Pense de novo.
PJ Brunet
Enquanto eu acho sendmailobsoleto (existem alternativas muito melhores!), Meu comentário CINCO ANOS atrás foi simplesmente sobre o fato de não migrarmos perguntas antigas para outro site da SE.
ThiefMaster 26/05/19

Respostas:

145

Quando você digitou sudo sendmailconfig, deveria ter sido solicitado a configurar o sendmail.

Para referência, os arquivos atualizados durante a configuração estão localizados no seguinte (caso você queira atualizá-los manualmente):

/etc/mail/sendmail.conf
/etc/cron.d/sendmail
/etc/mail/sendmail.mc

Você pode testar o sendmail para ver se ele está configurado corretamente, digitando o seguinte na linha de comando:

$ echo "My test email being sent from sendmail" | /usr/sbin/sendmail [email protected]

A seguir, você poderá adicionar o smtp relay ao sendmail:

#Change to your mail config directory:
cd /etc/mail

#Make a auth subdirectory
mkdir auth
chmod 700 auth

#Create a file with your auth information to the smtp server
cd auth
touch client-info

#In the file, put the following, matching up to your smtp server:
AuthInfo:your.isp.net "U:root" "I:user" "P:password"

#Generate the Authentication database, make both files readable only by root
makemap hash client-info < client-info
chmod 600 client-info
cd ..

Adicione as seguintes linhas ao sendmail.mc, mas antes do MAILERDEFINITIONS. Certifique-se de atualizar seu servidor smtp.

define(`SMART_HOST',`your.isp.net')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
FEATURE(`authinfo',`hash -o /etc/mail/auth/client-info.db')dnl

Invoque a criação sendmail.cf (em alternativa, execute make -C /etc/mail):

m4 sendmail.mc > sendmail.cf

Reinicie o daemon sendmail:

service sendmail restart
Veneza
fonte
2
ao tentar o último comando eu recebo este bash: Meu e-mail de teste que está sendo enviado de sendmail: Nenhum tal lima ou diretório
UXE
2
desculpe, quando você diz your.isp.net, eu coloco gmail.comou smtp.gmail.comlá dentro?
Houman
30
Uma coisa que não está clara é quais substituições devem ser feitas no AuthInfo: your.isp.net "U: root" "I: usuário" "P: senha" Especificamente, como você substitui U: root e I: usuário
Tom Haws
13
Caso outra pessoa esteja confusa, as seqüências dentro do sendmail.mcarquivo precisam estar no formato BACKTICK + seu texto + CITAÇÕES ÚNICAS .
Thomas Thomas
2
Esta foi a única configuração que funcionou perfeitamente para mim: linuxconfig.org/configuring-gmail-as-sendmail-email-relay
Jared Eitnier
35

A resposta principal está funcionando (ainda não posso responder) após uma pequena edição

Isto não funcionou para mim:

FEATURE('authinfo','hash /etc/mail/auth/client-info')dnl

A primeira citação simples para cada string deve ser alterada para um backtick (`) como este:

FEATURE(`authinfo',`hash /etc/mail/auth/client-info')dnl

Após a alteração, eu corro:

sudo sendmailconfig

E eu estou no negócio :)

brma
fonte
3
Independentemente de eu usar sua correção ou não, quando invoco o serviço sendmail restart, recebo a classe de arquivo: não é possível abrir 'ATURE (authinfo,': esse arquivo ou diretório não existe
Tom Haws
4
-lo de "recurso" não "NATUREZA", verifique o copiar / colar
jyavenard
você tem que colá-lo em um local diferente no sendmail.cf (i colocá-lo logo acima mailer, mas eu ainda obter nenhum e-mail)
Toskan
14

Combine duas respostas acima, eu finalmente faço funcionar. Apenas tome cuidado para que a primeira citação única para cada string seja um backtick (`) no arquivo sendmail.mc.

#Change to your mail config directory:
cd /etc/mail

#Make a auth subdirectory
mkdir auth
chmod 700 auth  #maybe not, because I cannot apply cmd "cd auth" if I do so.

#Create a file with your auth information to the smtp server
cd auth
touch client-info

#In the file, put the following, matching up to your smtp server:
AuthInfo:your.isp.net "U:root" "I:user" "P:password"

#Generate the Authentication database, make both files readable only by root
makemap hash client-info < client-info
chmod 600 client-info
cd ..

#Add the following lines to sendmail.mc. Make sure you update your smtp server
#The first single quote for each string should be changed to a backtick (`) like this:
define(`SMART_HOST',`your.isp.net')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
FEATURE(`authinfo',`hash /etc/mail/auth/client-info')dnl

#run 
sudo sendmailconfig
flyrain
fonte
Ainda estou com problemas para entender a linha AuthInfo ... Você pode dar um exemplo ... ???
Atul Dravid - Unip. Branco Ltd.
Por exemplo, minhas informações de cliente têm apenas uma linha,AuthInfo:smtp.gmail.com "U:username" "P:password"
flyrain
Ainda com todas essas configurações e o AuthInfo, caio na lista de SPAM usando smtp.gmail.com com a conta existente do google.admin AuthInfo: smtp.gmail.com "U: root" "I: nome@domínio.com" "P: senha "também tentou AuthInfo: smtp-relay.gmail.com" U: raiz "" I: nome@domínio.com "" P: senha "
xoxn-- 1'w3k4n 23/03/16
Para esclarecer:AuthInfo: smtp.gmail.com "U:[email protected]" "P:yourpassword"
Mendes