Servidor de E-mail · 3 min read · Sep 29, 2025

O SpamSnake Perfeito - Ubuntu Jaunty Jackalope - Página 2

10. Apache2

apt-get install apache2 apache2-suexec apache2-doc apache2-mpm-prefork apache2-utils libexpat1

Em seguida, instalamos o PHP5 como um módulo do Apache:

aptitude install libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

Em seguida, editamos /etc/apache2/mods-available/dir.conf e mudamos a linha DirectoryIndex:



          #DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
          DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl index.xhtml

Agora precisamos habilitar alguns módulos do Apache (rewrite, suexec, include)

a2enmod rewrite   
a2enmod suexec   
a2enmod include

Reinicie o Apache:

/etc/init.d/apache2 restart

11. Postfix e MySQL

Instale os pacotes:

apt-get install postfix postfix-mysql postfix-doc mysql-server mysql-client procmail

MySQL:

Você será solicitado a fornecer uma senha para o usuário root do MySQL - essa senha é válida para o usuário root@localhost, bem como para [email protected], então não precisamos especificar uma senha root do MySQL manualmente mais tarde:

Nova senha para o usuário “root” do MySQL: <– suaSenhaRootSQL Repita a senha para o usuário “root” do MySQL: <– suaSenhaRootSQL

Postfix:

Você será solicitado a responder duas perguntas. Responda da seguinte forma:

Tipo geral de configuração de e-mail: <– Internet Site Nome do sistema de e-mail: <– server1.example.com

Queremos que o MySQL escute em todas as interfaces, não apenas no localhost, portanto, editamos /etc/mysql/my.cnf e comentamos a linha bind-address = 127.0.0.1:

[...]
# Em vez de skip-networking, o padrão agora é escutar apenas em
# localhost, que é mais compatível e não é menos seguro.
#bind-address           = 127.0.0.1
[...]

Em seguida, reiniciamos o MySQL:

/etc/init.d/mysql restart

Agora verifique se a rede está habilitada. Execute

netstat -tap | grep mysql

A saída deve ser parecida com isto:

tcp        0      0 *:mysql                 *:*                     LISTEN      4318/mysqld

Pare o Postfix:

postfix stop

Vamos querer editar o Postfix com o seguinte:

Editar master.cf:

Precisamos adicionar dois itens abaixo do tipo de serviço pickup. O serviço pickup “pega” e-mails locais (local significando “nesta máquina”) e os entrega. Esta é uma forma de contornar a filtragem de conteúdo para e-mails gerados por esta máquina.

Deve ficar assim quando você terminar:

pickup    fifo  n       -       -       60      1       pickup
         -o content_filter=
         -o receive_override_options=no_header_body_checks

Editar main.cf:

postconf -e "alias_maps = hash:/etc/aliases"  
newaliases  
postconf -e "myorigin = example.com"  
postconf -e "myhostname = server1.example.com"  
postconf -e "mynetworks = 127.0.0.0/8, 192.168.0.0/24"  
postconf -e "message_size_limit = 10485760"  
postconf -e "local_transport = error:No local mail delivery"  
postconf -e "mydestination = "  
postconf -e "local_recipient_maps = "  
postconf -e "virtual_alias_maps = hash:/etc/postfix/virtual"

Crie /etc/postfix/virtual e adicione o seguinte:

postmaster [email protected]
abuse [email protected]
root [email protected]

Continue:

postmap /etc/postfix/virtual  
postconf -e "relay_recipient_maps = hash:/etc/postfix/relay_recipients"

Crie /etc/postfix/relay_recipients e adicione o seguinte:

@example.com OK
@example2.com OK

Continue:

postmap /etc/postfix/relay_recipients  
postconf -e "transport_maps = hash:/etc/postfix/transport"

Crie /etc/postfix/transport e adicione o seguinte:

example.com smtp:[192.168.0.x]
example2.com smtp:[192.168.0.x]

Continue:

postmap /etc/postfix/transport  
postconf -e "relay_domains = hash:/etc/postfix/relay_domains"

Crie /etc/postfix/relay_domains e adicione o seguinte:

example.com OK
example2.com OK

Continue:

postmap /etc/postfix/relay_domains  
postconf -e "smtpd_helo_required = yes"  
postconf -e "smtpd_sender_restrictions = reject_non_fqdn_sender, reject_unknown_sender_domain, permit"  
postconf -e "smtpd_recipient_restrictions = reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unknown_recipient_domain, permit_mynetworks, reject_unauth_destination, reject_unauth_pipelining, reject_rbl_client zen.spamhaus.org, reject_rbl_client bl.spamcop.net, permit"  
postconf -e "smtpd_data_restrictions = reject_unauth_pipelining"

Vamos dar uma olhada final na configuração do Postfix:

less /etc/postfix/main.cf

Verifique o conteúdo do arquivo em busca de erros e repare se necessário. Inicie o Postfix:

postfix start

Verifique se o Postfix responde:

telnet 127.0.0.1 25

Você deve ver:

220 [seuFQDNaqui] ESMTP Postfix (Ubuntu)

12. Instalação do MailScanner Razor Pyzor DCC Clamav

apt-get install mailscanner razor pyzor clamav-daemon

Vamos começar com o MailScanner. O MailScanner que foi instalado a partir dos repositórios é uma versão muito antiga, então agora vamos removê-lo e instalar o pacote MailScanner a partir do código-fonte. O acima é feito para instalar apenas as dependências.

apt-get remove mailscanner

Baixe http://www.mailscanner.info/files/4/tar/MailScanner-install-4.75.11-1.tar.gz em /usr/src/mailscanner/ e execute:

tar xvfz MailScanner-install-4.75.11-1.tar.gz  
cd MailScanner-install-4.75.11  
./install.sh

Desative o MailScanner padrão:

mv /etc/MailScanner /etc/MailScanner.dist
Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.