informatique:reseau:messagerie:gnarwl

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
informatique:reseau:messagerie:gnarwl [2014/03/31 17:26] – créée bn8informatique:reseau:messagerie:gnarwl [2016/07/25 09:28] (Version actuelle) – [Via recipient_bcc_maps] bn8
Ligne 12: Ligne 12:
 <code># Gnarwl <code># Gnarwl
 gnarwl    unix  -                               pipe flags=F gnarwl    unix  -                               pipe flags=F
-  user=gnarwl argv=/usr/bin/gnarwl -c /etc/gnarwl.cfg -a ${user}</code>+  user=gnarwl argv=/usr/bin/gnarwl -c /etc/gnarwl.cfg -a ${nexthop}</code>
  
 Fichier ///etc/gnarwl.cfg// : Fichier ///etc/gnarwl.cfg// :
-<code>server ldap.example.com+<code> 
 +map_sender $sender 
 +map_receiver $recepient 
 +map_subject $subject 
 +map_field $begin vacationStart 
 +map_field $end vacationEnd  
 +map_field $fullname cn 
 +map_field $deputy vacationForward 
 +server ldap.example.com 
 +port 389 
 +scope sub
 login uid=gnarwl,ou=sysaccounts,o=example login uid=gnarwl,ou=sysaccounts,o=example
 password mdpldap password mdpldap
 +protocol 0
 base o=example base o=example
-queryfilter (&(uid=$recepient)(vacationActive=TRUE)) +queryfilter (&(|(mail=$recepient)(mailAlternateAddress=$recepient))(vacationActive=TRUE)) 
-mta /usr/sbin/sendmail -$recepient $sender</code>+result vacationInfo 
 +blockfiles /var/lib/gnarwl/block/ 
 +umask 0644 
 +blockexpire 48 
 +mta /usr/sbin/sendmail -$recepient -t $sender 
 +maxreceivers 64 
 +maxheader 512 
 +charset UTF-8 
 +badheaders /var/lib/gnarwl/badheaders.db 
 +blacklist /var/lib/gnarwl/blacklist.db 
 +forceheader /var/lib/gnarwl/header.txt 
 +forcefooter /var/lib/gnarwl/footer.txt 
 +recvheader To Cc 
 +loglevel 2 
 +</code> 
 + 
 +Fichier ///var/lib/gnarwl/header.txt//
 +<code>From: $fullname <$recepient> 
 +To: $sender 
 +X-mailer: GNARWL 
 +MIME-Version: 1.0 
 +Content-Type: text/plain; charset=utf-8 
 +Content-Transfer-Encoding: 8bit 
 +Subject: Re: $subject 
 + 
 +</code>
  
 Il suffira ensuite d'envoyer le mail automatiquement sur le transport //gnarwl://. Différente solutions existent pour cela : Il suffira ensuite d'envoyer le mail automatiquement sur le transport //gnarwl://. Différente solutions existent pour cela :
Ligne 30: Ligne 66:
 Fichier ///etc/postfix/main.cf// : Fichier ///etc/postfix/main.cf// :
 <code> <code>
-transport_maps = hash:/etc/postfix/transport+transport_maps = proxy:ldap:gnarwl_transport
  
 ldap_mailbox_vacation_bcc_server_host = ldap0.example.com,ldap1.example.com ldap_mailbox_vacation_bcc_server_host = ldap0.example.com,ldap1.example.com
Ligne 46: Ligne 82:
 ldap_mailbox_vacation_bcc_bind_pw = mdpldap ldap_mailbox_vacation_bcc_bind_pw = mdpldap
  
-recipient_bcc_maps = ldap:ldap_mailbox_vacation_bcc</code>+recipient_bcc_maps = ldap:ldap_mailbox_vacation_bcc 
 + 
 +gnarwl_transport_server_host = ldap0.example.com,ldap1.example.com 
 +gnarwl_transport_server_port = 389 
 +gnarwl_transport_search_base = o=example 
 +gnarwl_transport_domain = autoreponse.example.com 
 +gnarwl_transport_query_filter = (&(vacationActive=TRUE)(uid=%u)) 
 +gnarwl_transport_result_attribute = mail 
 +gnarwl_transport_result_format = gnarwl:%s 
 +gnarwl_transport_expansion_limit = 1 
 +gnarwl_transport_scope = sub 
 +gnarwl_transport_bind = yes 
 +gnarwl_transport_version = 3 
 +gnarwl_transport_cache = no 
 +gnarwl_transport_bind_dn = uid=postfix,ou=sysaccounts,o=example 
 +gnarwl_transport_bind_pw = mdpldap 
 +</code> 
 + 
 +===== Script de désactivation du message d'auto-réponse lorsqu'il a expiré ===== 
 + 
 +Le principe est de repasser la valeur de l'attribut //vacationActive// à //FALSE// lorsque la date dans l'attribut //vacationEnd// est dépassée. Cela n'est dans l'absolu pas forcément nécessaire car gnarwl vérifie également que la date d'expiration n'est pas dépassée avant d'envoyer le mail. En outre, cela permet : 
 +  * de le plus envoyer de mail vers le transport //gnarwl// inutilement 
 +  * de désactiver visuellement le message d'auto-réponse pour l'utilisateur dans son interface de gestion 
 + 
 +Le script est téléchargeable {{ :informatique:reseau:messagerie:disable-vacation.py |ici}}. Il utilise en dépendance la librairie [[http://git.zionetrix.net/?a=summary&p=python-mylib|mylib]] installable de la manière suivante : <code bash>apt-get install git python-ldap 
 +cd /usr/local/src 
 +git clone http://git.zionetrix.net/git/python-mylib</code>
  
-Fichier ///etc/postfix/transport// +Ce script doit idéalement être installé dans ///usr/local/sbin// et être exécuté par cron au moins une fois par jour.
-<code>autoreponse.c59.cst.easter-eggs.com     gnarwl:</code>+
  
-Un fois mis à jour, penser à utiliser la commande //postmap /etc/postfix/transport// ! 
  
  
  • informatique/reseau/messagerie/gnarwl.1396286806.txt.gz
  • Dernière modification : 2014/03/31 17:26
  • de bn8