Configuration Serveur · 4 min read · Feb 12, 2026

Configuration du serveur de messagerie avec Exim, MySQL, Cyrus-Imapd, Horde Webmail sur Centos 5.1 - Page 4

Configurer Pam_mysql

Pam_mysql sera utilisé pour authentifier les services cyrus-imapd suivants contre la base de données mysql, IMAP, POP, SIEVE, LMTP, CSYNC.

Configuration de Pam_mysql

Activez pam_mysql pour les services en effectuant les modifications ci-dessous.

  • /etc/pam.d/imap auth optional pam_mysql.so user=horde passwd=hordepassword host=/var/lib/mysql/mysql.sock db=horde table=horde_users usercolumn=user_uid passwdcolumn=user_pass crypt=3 account required pam_mysql.so user=horde passwd=hordepassword host=/var/lib/mysql/mysql.sock db=horde table=horde_users usercolumn=user_uid passwdcolumn=user_pass crypt=3
  • /etc/pam.d/pop auth optional pam_mysql.so user=horde passwd=hordepassword host=/var/lib/mysql/mysql.sock db=horde table=horde_users usercolumn=user_uid passwdcolumn=user_pass crypt=3 account required pam_mysql.so user=horde passwd=hordepassword host=/var/lib/mysql/mysql.sock db=horde table=horde_users usercolumn=user_uid passwdcolumn=user_pass crypt=3
  • /etc/pam.d/sieve auth optional pam_mysql.so user=horde passwd=hordepassword host=/var/lib/mysql/mysql.sock db=horde table=horde_users usercolumn=user_uid passwdcolumn=user_pass crypt=3 account required pam_mysql.so user=horde passwd=hordepassword host=/var/lib/mysql/mysql.sock db=horde table=horde_users usercolumn=user_uid passwdcolumn=user_pass crypt=3
  • /etc/pam.d/lmtp auth optional pam_mysql.so user=horde passwd=hordepassword host=/var/lib/mysql/mysql.sock db=horde table=horde_users usercolumn=user_uid passwdcolumn=user_pass crypt=3 account required pam_mysql.so user=horde passwd=hordepassword host=/var/lib/mysql/mysql.sock db=horde table=horde_users usercolumn=user_uid passwdcolumn=user_pass crypt=3
  • /etc/pam.d/csync auth optional pam_mysql.so user=horde passwd=hordepassword host=/var/lib/mysql/mysql.sock db=horde table=horde_users usercolumn=user_uid passwdcolumn=user_pass crypt=3 account required pam_mysql.so user=horde passwd=hordepassword host=/var/lib/mysql/mysql.sock db=horde table=horde_users usercolumn=user_uid passwdcolumn=user_pass crypt=3

Configuration de Saslauthd

  • Éditez /etc/sysconfig/saslauthd et modifiez comme ci-dessous SOCKETDIR=/var/run/saslauthd # Mécanisme à utiliser lors de la vérification des mots de passe. Exécutez "saslauthd -v" pour obtenir une liste # des mécanismes que votre installation a été compilée pour utiliser. MECH=pam # Options supplémentaires à passer à saslauthd sur la ligne de commande. Voir saslauthd(8) # pour la liste des options acceptées. FLAGS="-r -n 0 -c"

Configurer ClamAV

  • Ajoutez l’utilisateur clamav au groupe exim. usermod -G exim clamav
  • Changez l’emplacement du socket et désactivez TCP. Apportez des modifications à /etc/clamd.conf LocalSocket /var/run/clamav/clamd.socket #TCPSocket 3310 #TCPAddr 127.0.0.1
  • Installez les signatures de sécurité saines wget http://www.sanesecurity.co.uk/clamav/update_sanesecurity.txt -O /usr/local/bin/update_sanesecurity.sh
    chmod +x /usr/local/bin/update_sanesecurity.sh
    ln -s /usr/local/bin/update_sanesecurity.sh /etc/cron.hourly/
    /usr/local/bin/update_sanesecurity.sh
  • Activez le module local selinux pour clamav, créez le fichier clamdlocal.te et ajoutez ce qui suit module clamdlocal 1.0; require { type proc_t; type var_t; type sysctl_kernel_t; type var_spool_t; type clamd_t; class dir { write search read remove_name add_name }; class file { write getattr read lock create unlink }; } #============= clamd_t ============== allow clamd_t proc_t:file { read getattr }; allow clamd_t sysctl_kernel_t:dir search; allow clamd_t sysctl_kernel_t:file read; allow clamd_t var_spool_t:dir read; allow clamd_t var_spool_t:file { read getattr }; allow clamd_t var_t:dir { write read add_name remove_name }; allow clamd_t var_t:file { write getattr read lock create unlink };
  • Compilez et chargez le module checkmodule -M -m -o clamdlocal.mod clamdlocal.te
    semodule_package -o clamdlocal.pp -m clamdlocal.mod
    semodule -i clamdlocal.pp

Configurer Spamassassin

  • Modifiez les options de démarrage éditez /etc/sysconfig/spamassassin et modifiez comme ci-dessous SPAMDOPTIONS=" -l -d -c -m5 -H -m 10 --socketpath=/var/run/spamassassin/spamd.sock --socketowner=exim"
  • Activez le module local spamd pour spamassassin, créez le fichier spamdlocal.te et ajoutez ce qui suit module spamdlocal 1.0; require { type spamd_t; type spamd_var_run_t; class capability { fowner chown kill }; class sock_file { write create unlink getattr setattr }; } #============= spamd_t ============== allow spamd_t self:capability { fowner chown kill }; allow spamd_t spamd_var_run_t:sock_file { write create unlink getattr setattr };
  • Compilez et installez le module checkmodule -M -m -o spamdlocal.mod spamdlocal.te
    semodule_package -o spamdlocal.pp -m spamdlocal.mod
    semodule -i spamdlocal.pp

Dernières retouches

Désactiver les services

Désactivez les services indésirables, utilisez ce script.

Activer les services

chkconfig –level 234 exim on
chkconfig –level 234 mysqld on
chkconfig –level 234 spamassassin on
chkconfig –level 234 clamd on
chkconfig –level 234 httpd on
chkconfig –level 234 saslauthd on
chkconfig –level 234 cyrus-imapd on

service mysqld restart
service saslauthd restart
service spamassassin restart
service clamd restart
service exim restart
service cyrus-imapd restart
service httpd restart

Créer un utilisateur administrateur

  • Créez un fichier admin.sql et ajoutez ce qui suit (modifiez le mot de passe selon vos besoins) USE horde; REPLACE INTO horde_users (user_uid,user_pass) VALUES ( '[email protected]', -- Changez ceci md5('verystrongpassword') );
  • Ajoutez l’utilisateur à la base de données mysql -p horde < admin.sql

Pare-feu

Ajoutez ces règles dans votre fichier de configuration /etc/sysconfig/iptables

*raw
:PREROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
COMMIT
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
COMMIT
*mangle
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
COMMIT
*filter
:FORWARD DROP [0:0]
:INPUT DROP [0:0]
:OUTPUT DROP [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m multiport -j ACCEPT --dports 80,443,25,110,143
-A INPUT -p icmp -m icmp -m limit --icmp-type 8 --limit 5/min -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -s 192.168.1.4 -j ACCEPT
COMMIT

Connexion

Ouf ! vous avez terminé. Ouvrez votre navigateur et allez à https://192.168.1.4/ et connectez-vous avec les détails ci-dessus, vous pouvez ensuite créer d’autres utilisateurs sous administration ? utilisateurs. Vous pouvez tester toutes les autres fonctionnalités également.

Références

Share: X/Twitter LinkedIn

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

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