Table of Contents

Instalação e configuração inicial do Postfix

Ajustes na máquina.

Hostname e FQDN:

root@mail:~# hostname
mail
root@mail:~# hostname -f
mail.exemplo.org

Arquivo hosts:

root@mail:~# cat /etc/hosts
127.0.0.1	localhost
198.51.100.240	mail.exemplo.org	mail
[...]

Configuração de rede:

root@mail:~# cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
 
source /etc/network/interfaces.d/*
 
# The loopback network interface
auto lo
iface lo inet loopback
 
# The primary network interface
auto eth0
iface eth0 inet static
	address 198.51.100.240
	netmask 255.255.255.0
	gateway 198.51.100.254
	dns-nameservers 198.51.100.200

Arquivo resolv.conf.

root@mail:~# cat /etc/resolv.conf 
nameserver 198.51.100.200

Instalando o Postfix

root@mail:~# aptitude update
root@mail:~# aptitude install postfix postfix-pcre

OBS: Se o Exim estiver instalado o instalado encontrara um conflito. Aceite a opção que remova o Exim.

Na tela de configuração escolha: Site da Internet

Configuração básica

Configuração padrão

root@mail:~# postconf -n
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
inet_interfaces = all
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
mydestination = mail.exemplo.org, localhost.exemplo.org, , localhost
myhostname = mail.exemplo.org
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
myorigin = /etc/mailname
readme_directory = no
recipient_delimiter = +
relayhost =
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes

Modificando:

root@mail:~# postconf -e "smtpd_banner = Bem Vindo - \$myhostname"
root@mail:~# postconf -e "mydestination = mail.exemplo.org, localhost, exemplo.org"
root@mail:~# postconf -e "mynetworks = 127.0.0.1/32"
root@mail:~# postconf -e "inet_interfaces = all"
root@mail:~# postconf -e "mydomain = exemplo.org"
root@mail:~# postconf -e "myorigin = mail.exemplo.org"
root@mail:~# postconf -e "myhostname = mail.exemplo.org"
root@mail:~# postconf -n
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
inet_interfaces = all
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
mydestination = mail.exemplo.org, localhost, exemplo.org
mydomain = exemplo.org
myhostname = mail.exemplo.org
mynetworks = 127.0.0.1/32
myorigin = mail.exemplo.org
readme_directory = no
recipient_delimiter = +
relayhost =
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = Bem Vindo - $myhostname
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes
root@mail:~# postconf -d mynetworks
mynetworks = 127.0.0.0/8 198.51.100.0/24 [::1]/128 [fe80::]/64

Testando o envio de email

Usuários:

root@mail:~# adduser bob
Adicionando usuário 'bob' ...
Adicionando novo grupo 'bob' (1001) ...
Adicionando novo usuário 'bob' (1001) com grupo 'bob' ...
Criando diretório pessoal '/home/bob' ...
Copiando arquivos de '/etc/skel' ...
Digite a nova senha UNIX:
Redigite a nova senha UNIX:
passwd: senha atualizada com sucesso
Modificando as informações de usuário para bob
Informe o novo valor ou pressione ENTER para aceitar o padrão
	Nome Completo []: Bob
	Número da Sala []: 
	Fone de Trabalho []: 
	Fone Residencial []: 
	Outro []: 
A informação está correta? [S/n] s
root@mail:~# adduser alice
Adicionando usuário 'alice' ...
Adicionando novo grupo 'alice' (1002) ...
Adicionando novo usuário 'alice' (1002) com grupo 'alice' ...
Criando diretório pessoal '/home/alice' ...
Copiando arquivos de '/etc/skel' ...
Digite a nova senha UNIX:
Redigite a nova senha UNIX:
passwd: senha atualizada com sucesso
Modificando as informações de usuário para alice
Informe o novo valor ou pressione ENTER para aceitar o padrão
	Nome Completo []: Alice
	Número da Sala []: 
	Fone de Trabalho []: 
	Fone Residencial []: 
	Outro []: 
A informação está correta? [S/n] s
root@mail:~# telnet mail.exemplo.org 25
Trying 198.51.100.240...
Connected to mail.exemplo.org.
Escape character is '^]'.
220 Bem Vindo - mail.exemplo.org
HELO mail.exemplo.org
250 mail.exemplo.org
MAIL FROM: <bob@exemplo.org>
250 2.1.0 Ok
RCPT TO: <alice@exemplo.org>
250 2.1.5 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
From: Nome do remetente <Bob>
To: Nome do destinatario <Alice>
 
Subject: Teste, Comando SMTP
E-mail de teste
.
250 2.0.0 Ok: queued as 2C841201089
quit
221 2.0.0 Bye
Connection closed by foreign host.
root@mail:~# grep 2C841201089 /var/log/mail.log 
Jun 16 15:49:27 mail postfix/smtpd[2812]: 2C841201089: client=mail.exemplo.org[198.51.100.240]
Jun 16 15:50:49 mail postfix/cleanup[2822]: 2C841201089: message-id=<20160616184927.2C841201089@mail.exemplo.org>
Jun 16 15:50:49 mail postfix/qmgr[2732]: 2C841201089: from=<bob@exemplo.org>, size=443, nrcpt=1 (queue active)
Jun 16 15:50:49 mail postfix/local[2824]: 2C841201089: to=<alice@exemplo.org>, relay=local, delay=101, delays=101/0/0/0.01, dsn=2.0.0, status=sent (delivered to command: procmail -a "$EXTENSION")
Jun 16 15:50:49 mail postfix/qmgr[2732]: 2C841201089: removed
root@mail:~# su - alice
alice@mail:~$ mail
Mail version 8.1.2 01/15/2001.  Type ? for help.
"/var/mail/alice": 2 messages 2 new
>N  1 bob@exemplo.org    Thu Jun 16 15:46   11/456   
 N  2 Bob@mail.exemplo.  Thu Jun 16 15:50   15/577   
& 2
Message 2:
From bob@exemplo.org  Thu Jun 16 15:50:49 2016
X-Original-To: alice@exemplo.org
From: Nome do remetente <Bob@mail.exemplo.org>
To: Nome do destinatario <Alice@mail.exemplo.org>
Date: Thu, 16 Jun 2016 15:49:07 -0300 (BRT)
 
Subject: Teste, Comando SMTP
E-mail de teste
 
& 
quit