Utilisant logwatch sur mes VMs pour avoir un rapport chaque jour de ce qui s’est passé la veille dans les logs, je me suis confronté à un problème : Le changement du sender.

Cette option est normalement prévue par Logwatch comme on peut le voir dans le fichier de configuration :

[text highlight= »4,13″]# Default person to mail reports to.  Can be a local account or a
# complete email address.  Variable Output should be set to mail, or
# –output mail should be passed on command line to enable mail feature.
MailTo = mail@domain.tld
# WHen using option –multiemail, it is possible to specify a different
# email recipient per host processed.  For example, to send the report
# for hostname host1 to user@example.com, use:
#Mailto_host1 = user@example.com
# Multiple recipients can be specified by separating them with a space.

# Default person to mail reports from.  Can be a local account or a
# complete email address.
MailFrom = logwatch@domain.tld[/text]

Le problème est que… Logwatch n’en tient pas compte. Contrairement à l’option MailTo.J’ai essayé une solution proposé par quelqu’un qui disait de modifier la ligne de mailer qui fait appel à sendmail pour ajouter un argument « -f » qui force le sender. Malheureusement cela ne marche pas non plus.

Finalement il s’avère que cette partie de la configuration est écrasé par un autre fichier de config : /usr/share/logwatch/dist.conf/logwatch.conf :

[text highlight= »3″]mailer = « /usr/sbin/sendmail -t »
TmpDir = /tmp
MailFrom = root[/text]

Comme on peut le voir, le MailFrom contient « root », ceci explique donc cela, j’ai modifié l’adresse et maintenant le mail est envoyé avec le correct sender !