r4 - 14 Oct 2008 - 15:55:48 - JadirSilvaYou are here: TWiki >  Main Web > LogBook > EntryDescriptionNo51

Configuração de e-mails

Descrição

Complementando o http://www.sprace.org.br/Twiki/bin/view/Main/EntryDescriptionNo2, modificamos na osg-ce

o sendmail.mc
[root@osg-ce ~]# vim /etc/mail/sendmail.mc
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
DAEMON_OPTIONS(`Port=smtp,Addr=192.168.1.150, Name=MTA')dnl
DAEMON_OPTIONS(`Port=smtp,Addr=200.136.80.4, Name=MTA')dnl
Estas opções fazem com que ela aceite e envie e-mail pelas suas interfaces de rede padrão. Restartamos as configurações
[root@osg-ce ~]# make -C /etc/mail; /etc/init.d/sendmail restart
a linha em
[root@osg-ce ~]# more /etc/mail/local-host-names 
osgce.grid
é essencial para que ele receba e-mail dos nodes com o aliases apropriado. Sem ela, os e-mails que estão nos aliases dos nodes não chegam (lá estão configurados como root root@osgce.grid), no /etc/aliases

A mesma modificação é feita nos nodes. Primeiro modificamos o sendmail.mc (padrão) de um deles, e aqui reside a raiz : fazer com que eles sejam mailservers debaixo de outro mail server. Isso é essencial para softwares como cron, logwatch, gerenciadores dos nobreaks, etc

dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
dnl FEATURE(local_procmail,`',`procmail -t -Y -a $h -d $u')dnl
O comentário da primeira linha (com dnl o mc4 ignora o que vem à seguir). faz com que ela deixe de escutar somente o loopback e envie e-mails. A segunda linha é porque a gente não necessita de procmail se a osgce enviará os e-mails para fora.
dnl EXPOSED_USER(`root')dnl
dnl #FEATURE(`accept_unresolvable_domains')dnl
A ultima linha comentada faz com que os nodes chequem basicamente o MTA que está vindo.
FEATURE(`nullclient',`[osg-ce.sprace.org.br]')dnl

Esta linha é importante: ela pede que o e-mail seja reenviado pelo gatewau par ao mundo exterior. Temos de ter as linhas de RELAY no /etc/mail/access configuradas corretamente.

MASQUERADE_AS(`sprace.org.br')dnl
MASQUERADE_AS(sprace.org.br)dnl
FEATURE(masquerade_envelope)dnl
LOCAL_DOMAIN(`sprace.org.br')dnl
Desnecessárias, pois os e-mails não são mais enviados pelos nodes. Podem ser retirados. A principo, se os e-mails não fossem reenviados,esta linhas iriam cuidar para que os e-mails ao invés de sairem com root@node41.grid saissem como root@sprace.org.br
dnl MAILER(smtp)dnl
dnl MAILER(procmail)dnl

Essas linhas não são necessárias sem o procmail.

[root@node21:~]# vim /etc/mail/access
192.168.1                       RELAY
[root@node21:~]#vim /etc/mail/local-host-names
sprace.org.br
Não são necessárias, mas deixam a configuração mais coerente. Acho que podemos remover sem problemas. Agora replicaremos estas configurações para os outros nodes:
[root@node21:~]# yum install sendmail-cf -y;makemap hash /etc/mail/local-host-names < /etc/mail/local-host-names; makemap hash /etc/mail/access < /etc/mail/access 
[root@node21:~]# make -C /etc/mail; /etc/init.d/sendmail restart
[root@node21:~]# cp -pr /etc/mail /home/mdias/mailnode

e da ce

[root@osg-ce ~]# clcmd 'mv /etc/mail /etc/mail.old; cp -pr /home/mdias/mailnode /etc/mail;/etc/init.d/sendmail restart'

Marco em 25/06/2008

Instalacao de um filtro para somente os e-mails do root das maquinas sejam aceitos (Chainmail e bibliotecas milteroo)

wget
http://downloads.sourceforge.net/chainmail/chainmail-0.3-1rh73.i386.rpm?modtime=1076284800&big_mirror=0
 wget
http://downloads.sourceforge.net/chainmail/milteroo-0.1-1.i386.rpm?modtime=1076284800&big_mirror=0
rpm -ivh chainmail-0.3-1rh73.i386.rpm milteroo-0.1-1.i386.rpm 
editando o sendmail.mc
 vim /etc/mail/sendmail.mc
INPUT_MAIL_FILTER(`chainmail', `S=local:/var/run/chainmail.sock')
cd /etc/mail
m4 sendmail.mc > sendmail.cf
 service sendmail restart
criamos o socket
 mksock /var/run/chainmail.sock
configuramos a regra
vim /etc/chainmail.conf 
Rule "Regra 1"
If not Sender "root@"
Action Reject

/etc/init.d/chainmail restart
acompanhando em
tail -f /var/log/chainmail.log

Jadir em 25/06/2008

Após as mudanças no hosts.allow para permitir conexões apenas de hosts conhecidos, v.g. d0server, os email's do node's passaram a ser rejeitados pelo sendmail, ao passar pela sala onde o Lietti e o Bach estavam analizando os log's de erro vi que havia uma linha gerada pelo tcpwrapper [1] então disse a eles que o tcpwrapper analiza os arquivos hosts.allow e hosts.deny para controlar o acesso ao host, então o Lietti acrescentou o localhost, 127.0.0.1, no hosts.allow e o sendmail voltou enviar os email's do logwatch[2]. Fica a dica:

sempre que os arquivos usados pelo tcpwrapper forem usados para um controle mais restritivo de acesso, lembrar de acrescentar o localhost no hosts.allow.

-- MarcoAndreFerreiraDias - 19 Jun 2008











1 ^ TCPWrapper - definition on wikipedia
2 ^ Logwatch - Logwatch homepage.

Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r4 < r3 < r2 < r1 | More topic actions
 
Home
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback