quarta-feira, 7 de novembro de 2012

Configurando o PostFix com SMTP externo no ubuntu 12.04

A grande vantagem de ter o postfix configurado é que alguns serviços de monitoramento do servidor podem enviar informações importantes para seu e-mail relatando algum problema com o hardware ou a rede.
Veremos aqui como configurar o Postfix com um servidor SMTP externo (Realy).

Comece instalado o postfix
sudo apt-get install postfix

Quando a tela de configuração do tipo de servidor aparecer escolha a opção SITE DA INTERNET.

No campo, Nome de email do sistema preencha com seu domínio.

Agora acesse a pasta do postfix em /etc/postfix faça uma copia do arquivo main.cf

cp main.cf main.cf.original

# nano main.cf 

Apague tudo que esta no arquivo e copie o que esta abaixo e altere apenas o que esta em negrito para sua configuração.

# See /usr/share/postfix/main.cf.dist for a commented, more complete version


# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

readme_directory = no

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# SASL
smtp_sasl_auth_enable=yes
smtp_sasl_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/saslpass

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

myhostname = hostname_do_seu_servidor
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = seudominio.com.br, hostname_do_seu_servidor, localhost.localdomain, localhost
relayhost = smtp.seudominio.com.br
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all

Salve o arquivo.

Ainda na pasta do postfix (/etc/postfix), crie um arquivo chamado saslpass com seu editor de texto e adicione as seguinte linha

smtp.seudominio.com.brcontadeemail@seudominio.com.br:senhadaconta

Salve o arquivo e volte para a pasta do postfix
Agora compile o arquivo


sudo postmap /etc/postfix/saslpass
sudo postfix reload

Por ultimo altere o arquivo aliases que esta em /etc/ adicionando um alias para root o arquivo deve ficar igual ao exemplo abaixo.

# See man 5 aliases for format
postmaster:    root
root: seu_email@dominio.com.br

Saida do arquivo e execute o seguintes comandos:

sudo newaliases
sudo postfix reload

Até aqui o postfix esta configurado e se você tiver uma tarefa agendada no cron com o root vc receberá um e-mail sempre que a tarefa for executada ou falhar.

É isso ai, se tiverem dúvidas deixem seu comentário para que possamos ajudar.
Até a próxima.