Ceci est une ancienne révision du document !
Table des matières
Installation de sympa sur une redhat
Compte sympa
# groupadd -g 503 sympa # useradd -g 503 -u 503 sympa # chmod 755 /home/sympa
Logs
/etc/rsyslog.conf
Ajout dans /etc/rsyslog.conf
# Save sympa messages local1.* /var/log/sympa.log
Rotation des logs
Sous /etc/logrotate.d
Décommenter mysql
/var/log/mysqld.log {
create 640 mysql mysql
notifempty
daily
rotate 3
missingok
compress
postrotate
# just if mysqld is really running
if test -x /usr/bin/mysqladmin && \
/usr/bin/mysqladmin ping &>/dev/null
then
/usr/bin/mysqladmin flush-logs
fi
endscript
}
Créer sympa
/var/log/sympa.log {
notifempty
missingok
postrotate
/bin/kill -HUP `cat /home/sympa/sympa.pid 2> /dev/null` 2> /dev/null || true
endscript
}
Installation packages
Abonnement au canaux redhat (subscribed channels)
- RHEL Server Supplementary (v. 6 64-bit x86_64)
- RHEL Server Debuginfo (v.6 for x86_64)
- RHEL Server Optional Debuginfo (v.6 x86_64)
- Red Hat Common (for RHEL 6 Server x86_64)
- RHEL Server Optional (v. 6 64-bit x86_64)
Nouveaux packages installés
- PHP : php – php-mysql – php-ldap – php-devel – php-devel – php-mysql – php-pear – php-soap –
- MYSQL : mysql-devel – mysql-server
- APACHE : httpd-devel – mod_perl-devel
- Autres : gcc – gettext-devel – libxml2-devel
Modules Perl installés
Applicatifs à installer
MHonarc
Sous /usr/local/INSTALL/APPLI, télécharger le package rpm, MHonArc-2.6.19-1.noarch.rpm.
Avec un utilitaire md5 vérifier la checksum md5.
# rpm -Uvh MHonArc-2.6.19-1.noarch.rpm
Préparation... ########################################### [100%]
1:MHonArc ########################################### [100%]
mysql
Il faut que le package mysql-server soit installé
# mysql_install_db
# /etc/init.d/mysqld start
# perl -MCPAN -e shell
cpan[2]> install DBD::mysql
# mysql_secure_installation
# vi /etc/my.cnf
[mysqld]
.......
max_allowed_packet=32M
shibboleth
Clamav
Installation de sympa
Télécharger la dernière version de sympa
http://www.sympa.org/manual/installing-sympa#installing_sympa
# tar xvfz sympa-6.xx.xx.tar.gz # ./configure # make # make install # ~sympa/bin/sympa_wizard.pl
Installation de la base de données sympa
http://www.sympa.org/manual/database#creating_a_sympa_database
Si base de donnée ne s'est pas installée.
# ~sympa/bin/sympa.pl test_database_message_buffer
info Configuration file read, default log level 0 notice Sympa 6.1.22 started Sympa is going to store messages bigger and bigger to test the limit with its database. This may be very long maxtest: 210 barmax: 535500 Test storing and removing of a 420 kB message (step 1 out of 50) .........[OK. Done in 0.02 sec] ................................................. Test storing and removing of a 21000 kB message (step 50 out of 50) .........[OK. Done in 0.78 sec] Total size transfered: 100% [==]D 0h00m27sThe maximum message size (21000 Ko) testing was successful
# /etc/init.d/mysqld start # mysql -u root -p </home/sympa/bin/create_db.mysql # mysql_secure_installation # mysql -u root -p mysql> grant all on sympa.* to sympa@localhost identified by 'PASSWORD';
Fichier de configuration
/etc/sympa sympa.conf
email sympa # Pour Postfix #sendmail /usr/sbin/postfix sendmail /usr/sbin/sendmail
Authentification
Voir auth.conf
Fichier de configuration auth.conf
# cp -p ~sympa/default/auth.conf ~sympa/etc
# vi ~sympa/etc/auth.conf
#
# authentification par CAS
#
cas
base_url https://cas-inp.grenet.fr
# pour eviter d'avoir l'authentification CAS a la connexion ,
# et de permettre l'authentification par adresse mail pour les exterieurs
non_blocking_redirection off
auth_service_name Service_Authentification_Grenoble-INP
ldap_host frontalannuaire2.inpg.fr:389
ldap_timeout 7
ldap_bind_dn uid=XXXXXXX,ou=people,ou=inpg,dc=agalan,dc=org
ldap_bind_password XXXXXXX
ldap_suffix ou=inpg,dc=agalan,dc=org
ldap_get_email_by_uid_filter (uid=[uid])
ldap_email_attribute mail
ldap_scope sub
# ldap_use_ssl 1
# ldap_ssl_version tlsv1
# ldap_ssl_ciphers MEDIUM:HIGH
#
# authentification par LDAP
#
ldap
host frontalannuaire2.inpg.fr:389
timeout 20
bind_dn uid=XXXXXXX,ou=people,ou=inpg,dc=agalan,dc=org
bind_password XXXXXXX
suffix ou=inpg,dc=agalan,dc=org
get_dn_by_uid_filter (uid=[sender])
get_dn_by_email_filter (mail=[sender])
email_attribute mail
scope sub
# use_ssl 1
# ssl_version tlsv1
# ssl_ciphers MEDIUM:HIGH
#
# authentification par adresse mail
#
user_table
regexp .*
Customisation de sympa
Modèles de création de liste
Scénarios
Familles créées
- Les familles sont sous ~sympa/etc/listes.grenoble-inp.fr/families
- Les scripts permettant de créer les fichiers xml des familles sont sous /usr/local/SCRIPTS/sympa/FAMILLE
Fichiers propriétaires et émetteurs
Tous les fichiers include pour les propriétaires sont sous ~sympa/etc/listes.grenoble-inp.fr/data_sources
Les fichiers listant les propriétaires sont sous ~sympa/etc/listes.grenoble-inp.fr/data_sources/OWNER
Pour chaque virtual host :
# mkdir ~sympa/etc/<VIRTUAL_HOST> /data_sources
Puis recopier les fichiers include pour les propriétaires les concernant, ils s'appuient sur ~sympa/etc/listes.grenoble-inp.fr/data_sources/OWNER pour la mise à jour des propriétaires.
Gestion des droits propriétaires et abonnés
~sympa/etc/edit_list.conf
Pour la connexion des wikis
~sympa/etc/trusted_applications.conf
trusted_application name XXXXXX md5password XXXXXXXXXXXX proxy_for_variables USER_EMAIL,remote_host
Scripts locaux
Attention modifier les scripts locaux perl travaillant avec mysql
remplacer "use Mysql ;" par "use DBD::mysql ;"
Gestion des erreurs
Messages pas partis
Les messages qui restent dans le répertoire /home/sympa/spool/msg
Le script surveillance_msg.sh vérifie toutes les heures qu'il n'ait pas de messages dans ce répertoire.
crontab
## surveillance de /home/sympa/spool/msg 0,29 7,8,9,10,11,12,13,14,15,16,17,18,19,21 * * * /usr/local/SCRIPTS/sympa/surveillance_msg.sh > /dev/null 2>&1
