Si comme moi vous utilisez un reverse proxy pour desservir plusieurs sites web, vous devez avoir connu le problèmes du relayage des adresses IP du proxy dans les logs des serveurs web (aka backends).
J’en ai parlé dans cet article ici
Maintenant j’ai le même souci avec Zimbra. En effet Zimbra utilise un mécanisme de reverse proxy basé sur du NGINX et Memcached; la configuration de celui-ci inclus de nombreuses variables basée sur des attributs LDAP. Lorsque utilise les briques natives de Zimbra, dans les fichiers de logs des Mailbox on retrouve bien le « oip » (Originating IP); mais lorsqu’on utilise un proxy maison, celui-ci n’est évidement pas pris en compte. On peux voir ça dans les logs du serveur Zimbra (mailbox.log) :
2013-10-02 00:01:39,190 INFO [btpool0-12://mail.domain.tld/service/soap] [name=wolfy@les-titans.com;mid=8;ip=reverse_proxy_IP;] soap - EndSessionRequest
Pour modifier cela il faut renseigner notre reverse proxy dans la configuration de Zimbra. Pour cela passer en tant qu’utilisateur Zimbra puis effectuez les commandes suivantes :
[zimbra@zimbra ~]$ zmprov ms `zmhostname` +zimbraMailTrustedIP reverse_proxy_IP [zimbra@zimbra ~]$ zmprov ms `zmhostname` +zimbraMailTrustedIP reverse_proxy_IP_n°2
Pensez bien a mettre le « + » devant l’attribut sinon cela écrasera les autres occurrences.
Une fois l’opération effectué, redémarrez Zimbra et vous verrez ce changement dans les logs :
2013-10-03 13:43:06,994 INFO [btpool0-13://mail.domain.tld/service/soap/SearchRequest] [name=wolfy@les-titans.com;mid=8;ip=reverse_proxy_IP;oip=Client_IP;ua=ZimbraWebClient - FF3.0 (Win)/7.2.5_GA_2906;] soap - SearchRequest elapsed=5