Logwatch et pure-ftp

Salut à tous et merci de votre attention face à ce nouveau problème.
J’ai récemment installé Logwatch pour contrôler mes logs, en particulier ceux de mon ftp (pure-ftp). Logwatch fonctionne mais ne m’envoie rien sur les connexions et les transferts ftp.
La commande :

Logwatch --service pureftpd

est muette.
J’ai remarqué que le fichier /usr/share/logwatch/default.conf/logfiles/pureftp.conf comportait ces lignes:

LogFile = pureftp/syslog.log Archive = pureftp/syslog.log.*
Dans le dossier /var/log, je n’ai pas de répertoire pureftp. Par contre j’ai un fichier syslog.log qui contient bien des informations sur les connexions au ftp.
J’ai donc modifier par:

LogFile = syslog.log Archive = syslog.log.*
mais ça ne marche pas.
Alors que j’essayais de dépatouiller ce problème, j’ai remarqué un truc qui est peut être anodin, peut être pas: sur autre une machine où pure-ftp a été installé par la commande aptitude install pure-ftpd-mysql, il y a bien un dossier /var/log/pureftp et il contient le log des transferts, transfer.log. Sur la machine où logwatch est rebelle, j’ai compilé pure-ftp manuellement: le dossier /var/log/pureftp n’a pas été créé et il n’y a nul trace de transfer.log.
Comment faire pour que Logwatch m’envoie les informations relatives à pure-ftp ? Sur le net je ne trouve pas de doc. D’avance merci.

Edit: Après recherche j’ai compris pourquoi je n’avais pas de transfer.log (oublie du paramètre --with-altlog au moment de configurer le make). Logwatch devrait tout de même lire les données concernant pure-ftp consignées dans syslog.log. mais non :013

Edit2: Autre anomalie, les logs de fail2ban ne sont pas non plus pris en compte. la crise. :frowning:

Un ptit UP!
Parmi vous il yen a bien qui utilisent pure-ftp et logwatch non ?
(Pour info, Fail2ban apparaît dans le rapport Logwatch maintenant mais je n’ai pas compris pourquoi)

Salut,

[quote=“petitchat”]Un ptit UP!
Parmi vous il yen a bien qui utilisent pure-ftp et logwatch non ?
(Pour info, Fail2ban apparaît dans le rapport Logwatch maintenant mais je n’ai pas compris pourquoi)[/quote]

Oui, moi!
Mais je n’ai rien fait de particulier, et j’ai bien les connexion à pure-ftpd dans le rapport quotidien de Logwatch

cat /usr/share/logwatch/default.conf/logfiles/pureftp.conf[code]


LogFile = pureftp/syslog.log

Archive = pureftp/syslog.log.*[/code]

# apt-cache policy pure-ftpd-mysql pure-ftpd-mysql: Installé : 1.0.28-3+squeeze1 Candidat : 1.0.28-3+squeeze1 Table de version : 1.0.35-1 0 -10 http://mirror.ovh.net/debian/ wheezy/main amd64 Packages *** 1.0.28-3+squeeze1 0 900 http://mirror.ovh.net/debian/ squeeze/main amd64 Packages 900 http://ftp.fr.debian.org/debian/ squeeze/main amd64 Packages 100 /var/lib/dpkg/status

Donc je ne vois pas ce qui ne fonctionne pas chez toi.
Les connexions sont bien inscrites dans syslog ?

Salut lol, merci beaucoup pour ton message qui m’a aidé.
Je ne comprend pas bien pourquoi ta config marche! D’après ton /usr/share/logwatch/default.conf/logfiles/pureftp.conf, logwatch cherche les informations relatives à pure-ftp dans le fichier: /var/log/pureftp/syslog.log. Or d’une part syslog n’est pas dans /var/log/pureftp/ mais dans /var/log/, d’autre part il s’appelle “syslog” et non “syslog.log”. Peut être que tu as un fichier pureftp.conf dans /etc/logwatch/conf qui prend le pas sur /usr/share/logwatch/default.conf/logfiles/pureftp.conf ?

Ton message m’a encouragé à me prendre encore plus la tête et j’ai un peu progressé.
extrait de /usr/share/logwatch/default.conf/logfiles/pureftp.conf:

LogFile = /var/log/syslog LogFile = /var/log/syslog.* Archive = /var/log/syslog.*.gz Archive = syslog.*.gz
extrait de /usr/share/logwatch/default.conf/logwatch.conf

Avec ces réglages j’obtiens les information de pure-ftp. Mais toujours pas moyen avec Range = Yesterday (réglage qu’il faudrait je j’adopte in fine).
Ceci m’amène à penser que logwatch arrive à lire dans syslog mais pas dans les archives syslog.*.gz.
En tout cas, merci encore, lol, pour ton message. Je continue les recherches de mon coté en espérant soit trouver moi même, soit qu’un pro passe par ce sujet et m’explique ce qui ne marche pas dans mes paramètres.

Salut,
Ne me remercie pas je n’ai rien fait.

Tu as parfaitement raison et maintenant que je me vérifie, je ne comprend pas non plus le

LogFile = pureftp/syslog.log Archive = pureftp/syslog.log.*
Ce n’est effectivement ni dans /var/log/pureftp, ni dans le fichier syslog.conf

J’ai les options par défaut:

LogDir = /var/log TmpDir = /var/cache/logwatch Output = mail Format = html (ça ce n'est pas par défaut, mais ça m'étonnerais que ça change grand chose) Encode = none MailTo = root MailFrom = Logwatch Range = yesterday Detail = Low Service = All

Tu n’as pas une rotation des logs trop rapide (ou des logs qui se remplissent vite, et du coup une rotation) ?
Du coup effectivement le “yesterday” tomberait sur un gz qu’il ne peut pas lire ? Mais ça m’étonne quand même…

Pardon mais ça j’en suis seul juge. Je t’affirme que ton message m’a aidé ! :smiley:

En fait c’est normal que mon Range = yesterday ne renvoi rien: je n’ai pas eu de connexions sur le ftp hier.
Ceci a marché:
config:

LogFile = * Archive = * Range = All
commande:

logwatch --service pureftpd > fichiertest

et là, dans fichier test, il y a toutes les connexions pure-ftpd, y compris celles présentes dans les archives .gz. bueno tout ça. :mrgreen:
Parmi les configurations déjà testées, je ne comprends toujours pas pourquoi certaines ne marchent pas mais l’important c’est que ça marche. Parfois, l’informatique …

Salut,
Le chemin absolu est accepté.

Tu devrais essayer avec ceci:LogFile = /var/log/syslog Archive = /var/log/syslog*

[quote=“lol”]Tu devrais essayer avec ceci:
Code:
LogFile = /var/log/syslog
Archive = /var/log/syslog*[/quote]

J’ai déjà essayé mais ça n’a pas marché :frowning: . Ceci marche:

LogFile = * Archive = *
Et ce matin, j’ai trouvé mon email de logwatch avec les infos pureftp ! En format html s’il vous plait.

C’est cool.
Pour le html, tu as du bidouiller ? Moi oui…

Pour le html il a fallu créer footer.html et header.html, oui, un peu de bidouille, mais le résultat en vaut la peine. :smiley:
Par contre je suis très déçu par le parsing de la fonction perl (dossier /usr/share/logatch/default.conf/services/) qui extrait les infos sur pureftp. Il manque la date. Dans le rapport de log, on vois les connexions à pure-ftp mais on ne sais pas quand elles ont eu lieu. A quoi bon avoir un rapport de log si celui-ci n’indique pas la date des évènements qu’il rapporte ? :confused:

Je suis assez d’accord avec toi, ça manque de précision.
Pour d’autres section par contre on est noyé sous les infos…

J’aimerais bien être capable de modifier tout ça… :017

Moi aussi, lol. Pour cela plusieurs solutions:

  • Apprendre le perl :smiley:
  • Trouver le script modifié sur le net.
  • Trouver un développeur Perl altruiste et coopératif.