X-Git-Url: http://gitweb.pimeys.fr/?a=blobdiff_plain;f=.procmailrc;h=280b61201873640580f492b2e88fb15a59b9fd14;hb=bcc52f86c198e4d1d15a164c27ed3adfdcad5f62;hp=444c28a8c7ada18fbf7b5012a4c6ed140788b9e8;hpb=1f8b08895681d46802368eec0764ca70d08898ca;p=config-20-100.git diff --git a/.procmailrc b/.procmailrc index 444c28a..280b612 100644 --- a/.procmailrc +++ b/.procmailrc @@ -43,13 +43,6 @@ # * Le troisième, custom.final.rules est appliqué tout à la fin, il peut par # exemple servir à définir un dossier par défaut autre que .INBOX -# Attention, certaines règles (pour l'instant commentées par #~#) -# font appel à des scripts. -# Pour qu'elles fonctionnent correctement, il faut que vous -# possédiez les scripts correspondant et que vous adaptiez -# la partie "Scripting" des variables de configuration. -# (cf https://wiki.crans.org/VieCrans/FichiersConfiguration#scripting) - ################################################################################ ##### Commentaires ##### @@ -129,7 +122,7 @@ # | | # | |-[+] Nagios (Comme Monit, mais en mieux/moins bien/différent) # | | | -# | | |- +# | | |- # | | # | |-[+B] Stats-upload (Qui a uplodé ?) # | @@ -248,11 +241,6 @@ LOGFILE="${PROCMAILDIR}/logs/procmail.log" ### Scripting # Shell à utiliser pour exécuter des commandes SHELL="/bin/bash" -## Scripts -# Dossier où sont rangés les scripts -SCRIPTSFOLDER="${HOME}/scripts/crans_toolbox/" -# Scripts pour décoder les headers MIME -DECODEHEADERSCRIPT="${SCRIPTSFOLDER}decode_header.pl" ################################################################# @@ -312,6 +300,7 @@ MONITORINGDIR="${CRANSDIR}.Monitoring" MONITDIR="${MONITORINGDIR}.Monit" NAGIOSDIR="${MONITORINGDIR}.Nagios" NAGIOSSWITCHSDIR="${NAGIOSDIR}.0-switchs" +NAGIOSBORNESDIR="${NAGIOSDIR}.1-bornes" ARPWATCHDIR="${MONITORINGDIR}.Arpwatch" MUNINDIR="${MONITORINGDIR}.Munin" MUNINIMPRESSIONDIR="${MUNINDIR}.Imprimante" @@ -400,18 +389,33 @@ FEDEREZOVHDIR="${FEDEREZADMINDIR}.OVH" +################################################################################ +##### Preprocessing ##### +################################################################################ + +# On décode les champs sur lesquels ont pourrait avoir besoin de matcher +# plus tard la version décodée. On stocke les versions décodées +# dans des variables. +# "formail -cXHeader" récupère le champ Header (-X) en enlevant les \n (-c) +# si le champ fait plusieurs lignes +:0 +* ^X-Mailer: +XMAILER=| formail -cXX-Mailer: | perl -MEncode -pe '$_=encode("iso-8859-1",decode("MIME-Header",$_))' + + + ################################################################################ ##### Règles ##### ################################################################################ -#~# # Patch pour traiter les mails qui ont été -#~# # reçus avant le 30/06/13, car certaines règles de tri du .procmailrc -#~# # n'étaient pas encore valables à l'époque. -#~# # très utile si on veut retrier tous ses mails -#~# INCLUDERC="${CONFIGDIR}/retrocompatibility_patch.rules" +# Patch pour traiter les mails qui ont été +# reçus avant le 30/06/13, car certaines règles de tri du .procmailrc +# n'étaient pas encore valables à l'époque. +# très utile si on veut retrier tous ses mails +INCLUDERC="${CONFIGDIR}/retrocompatibility_patch.rules" -#~# # Fichier de règles prioritaires à personnaliser -#~# INCLUDERC="${CONFIGDIR}/custom.high.rules" +# Fichier de règles prioritaires à personnaliser +INCLUDERC="${CONFIGDIR}/custom.high.rules" ################################################################# ## Gestion des mails d'Arpwatch ## @@ -471,14 +475,19 @@ FEDEREZOVHDIR="${FEDEREZADMINDIR}.OVH" :0 * ^(From: nagios@crans\.org|User-Agent:.*nagios) { - # Tous les switchs vont dans le dossier ${NAGIOSSWITCH} + # Tous les switchs vont dans le dossier ${NAGIOSSWITCHSDIR} :0 - * ^Subject:.*Alert: bat[^/]+- + * ^Subject:.*[A-Z]+ - (bat[a-z]-[0-9]+|backbone|minigiga)\. ${NAGIOSSWITCHSDIR}/ + # Toutes les bornes vont dans le dossier ${NAGIOSBORNESDIR} + :0 + * ^Subject:.* [A-Z]+ - [a-z0-9](-*[a-z0-9]+)*\.wifi\.crans\.org + ${NAGIOSBORNESDIR}/ + # Chaque serveur a son dossier :0 - * ^Subject:.*Alert: \/[^/\.]+ + * ^Subject:.* [A-Z]+ - \/[a-z0-9](-*[a-z0-9]+)* ${NAGIOSDIR}.${MATCH}/ # Si l'envie prenait à Nagios de raconter un peu plus sa vie @@ -497,9 +506,9 @@ FEDEREZOVHDIR="${FEDEREZADMINDIR}.OVH" * ^To:.*(roots?|postgres|www-data|list)@crans\.org * ^(X-Cron-Env|From: Anacron) { - #~# # Par défaut, on ne trie pas les mails de Cron, pensez à décommenter - #~# # le INCLUDERC (et à copier le fichier complémentaire) pour les trier - #~# INCLUDERC=${CONFIGDIR}/cron.rules + # Par défaut, on ne trie pas les mails de Cron, pensez à décommenter + # le INCLUDERC (et à copier le fichier complémentaire) pour les trier + INCLUDERC=${CONFIGDIR}/cron.rules :0 ${CRONDIR}/ @@ -699,7 +708,7 @@ FEDEREZOVHDIR="${FEDEREZADMINDIR}.OVH" { # Statistiques d'upload :0 - * ^X-Mailer: /usr/scripts/surveillance/statistiques.py + * ^X-Mailer: /usr/scripts/surveillance/statistiques2.py ${STATUPLOADDIR}/ :0 @@ -739,21 +748,15 @@ ${CABLAGEDIR}/ # Sur la ML respbats@ -#~# # L'ancienne version de ce filtre ne fonctionne plus car les headers -#~# # de ces mails sont maintenant correctement encodé. -#~# # C'est bien pour le respect des RFC, mais c'est un peu pain in the ass -#~# # p our le trier avec procmail, donc on besoin d'un script -#~# # Ne pas décommenter si vous n'avez pas le script associé. -#~# # (cf https://wiki.crans.org/VieCrans/FichiersConfiguration#scripting) -#~# :0 -#~# * ^List-Id:.*respbats\.lists\.crans\.org -#~# * ^X-Mailer:\/.* -#~# { -#~# # Machines supprimées pour chambre invalide -#~# :0 -#~# * ? echo "${MATCH}" | ${DECODEHEADERSCRIPT} | grep /usr/scripts/gestion/chambres_vides.py -#~# ${DELETEDMACHINES}/ -#~# } +# On utilise la variable XMAILER peuplée dans la phase de Preprocessing +:0 +* ^List-Id:.*respbats\.lists\.crans\.org +{ + # Machines supprimées pour chambre invalide + :0 + * XMAILER ?? /usr/scripts/gestion/menage/chambres_invalides.py + ${DELETEDMACHINES}/ +} ################################################################# @@ -786,8 +789,8 @@ ${CABLAGEDIR}/ ################################################################# ## Inclusion des règles personnelles ## ################################################################# -#~# # Fichier de règles à personnaliser -#~# INCLUDERC="${CONFIGDIR}/custom.normal.rules" +# Fichier de règles à personnaliser +INCLUDERC="${CONFIGDIR}/custom.normal.rules" ################################################################# ## Gestion des mails de Mailman ## @@ -998,5 +1001,5 @@ ${CABLAGEDIR}/ ${MLDIR}.${DOMAIN_}.${ML_}/ } -#~# # Fichier de règles de faible priorité à personnaliser -#~# INCLUDERC="${CONFIGDIR}/custom.final.rules" +# Fichier de règles de faible priorité à personnaliser +INCLUDERC="${CONFIGDIR}/custom.final.rules"