Serveur Mail · 3 min read · Sep 29, 2025

Le SpamSnake Parfait - Ubuntu Jaunty Jackalope - Page 2

10. Apache2

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

Ensuite, nous installons PHP5 en tant que module 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

Ensuite, nous éditons /etc/apache2/mods-available/dir.conf et changeons la ligne 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

Maintenant, nous devons activer certains modules Apache (rewrite, suexec, include)

a2enmod rewrite   
a2enmod suexec   
a2enmod include

Redémarrez Apache :

/etc/init.d/apache2 restart

11. Postfix et MySQL

Installez les paquets :

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

MySQL :

On vous demandera de fournir un mot de passe pour l’utilisateur root de MySQL - ce mot de passe est valide pour l’utilisateur root@localhost ainsi que [email protected], donc nous n’avons pas besoin de spécifier un mot de passe root MySQL manuellement plus tard :

Nouveau mot de passe pour l’utilisateur “root” de MySQL : <– votremotdepasse Répétez le mot de passe pour l’utilisateur “root” de MySQL : <– votremotdepasse

Postfix :

On vous posera deux questions. Répondez comme suit :

Type général de configuration de mail : <– Internet Site
Nom du système de mail : <– server1.example.com

Nous voulons que MySQL écoute sur toutes les interfaces, pas seulement localhost, donc nous éditons /etc/mysql/my.cnf et commentons la ligne bind-address = 127.0.0.1 :

[...]
# Au lieu de skip-networking, la valeur par défaut est maintenant d'écouter uniquement sur
# localhost, ce qui est plus compatible et n'est pas moins sécurisé.
#bind-address           = 127.0.0.1
[...]

Ensuite, nous redémarrons MySQL :

/etc/init.d/mysql restart

Vérifiez maintenant que le réseau est activé. Exécutez

netstat -tap | grep mysql

La sortie devrait ressembler à ceci :

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

Arrêtez Postfix :

postfix stop

Nous allons vouloir éditer Postfix avec ce qui suit :

Éditer master.cf :

Nous devons ajouter deux éléments sous le type de service pickup. Le service pickup “ramasse” le mail local (local signifiant “sur cette machine”) et le livre. C’est un moyen de contourner le filtrage de contenu pour le mail généré par cette machine.

Cela devrait ressembler à ceci lorsque vous avez terminé :

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

Éditer 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"

Créez /etc/postfix/virtual et ajoutez ce qui suit :

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

Continuez :

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

Créez /etc/postfix/relay_recipients et ajoutez ce qui suit :

@example.com OK
@example2.com OK

Continuez :

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

Créez /etc/postfix/transport et ajoutez ce qui suit :

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

Continuez :

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

Créez /etc/postfix/relay_domains et ajoutez ce qui suit :

example.com OK
example2.com OK

Continuez :

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"

Jetons un dernier coup d’œil à la configuration de Postfix :

less /etc/postfix/main.cf

Vérifiez le contenu du fichier pour des erreurs et réparez si nécessaire. Lancez Postfix :

postfix start

Vérifiez que Postfix répond :

telnet 127.0.0.1 25

Vous devriez voir :

220 [yourFQDNhere] ESMTP Postfix (Ubuntu)

12. Installation de MailScanner Razor Pyzor DCC Clamav

apt-get install mailscanner razor pyzor clamav-daemon

Commençons par MailScanner. La version de MailScanner qui vient d’être installée depuis les dépôts est une très ancienne version, donc nous allons maintenant la supprimer et installer le paquet MailScanner à partir de la source. Ce qui précède est fait pour installer uniquement les dépendances.

apt-get remove mailscanner

Téléchargez http://www.mailscanner.info/files/4/tar/MailScanner-install-4.75.11-1.tar.gz dans /usr/src/mailscanner/ et exécutez :

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

Désactivez le MailScanner par défaut :

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

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.