[fail2ban][Argh!] bidouiller les fichiers système

Le
Philippe Gras
Une question qui a en réalité plus à voir avec le système =
qu'avec
fail2ban…

Comme ça se produit dans fail2ban, je me lance quand même ici sans =

HS ;-)

J'ai un paquet de lignes qui ne servent à rien dans mes logs :
# cat fail2ban.log
2015-02-08 06:28:58,509 fail2ban.server : INFO Changed logging
target to /var/log/fail2ban.log for Fail2ban v0.8.6
2015-02-08 06:29:04,215 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.access.log
2015-02-08 06:29:04,263 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/access.log
2015-02-08 06:29:04,293 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.error.log
2015-02-08 06:29:04,296 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/error.log
2015-02-08 06:29:04,451 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.access.log
2015-02-08 06:29:04,548 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.error.log
2015-02-08 06:29:04,569 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.error.log
2015-02-08 06:29:04,681 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.error.log
2015-02-08 06:29:04,720 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.access.log
2015-02-08 06:29:04,751 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.access.log
2015-02-08 06:29:04,844 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.access.log
2015-02-08 06:29:04,896 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.access.log
2015-02-08 06:29:04,957 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.access.log
2015-02-08 06:29:27,477 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.access.log
2015-02-08 06:29:38,540 fail2ban.filter : INFO Log rotation
detected for /var/log/mail.log
2015-02-08 06:29:38,717 fail2ban.filter : INFO Log rotation
detected for /var/log/mail.log
2015-02-08 06:29:38,722 fail2ban.filter : INFO Log rotation
detected for /var/log/mail.log
2015-02-08 06:29:39,720 fail2ban.filter : INFO Log rotation
detected for /var/log/mail.log
2015-02-08 06:29:39,725 fail2ban.filter : INFO Log rotation
detected for /var/log/mail.log
2015-02-08 06:29:39,994 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.access.log
2015-02-08 06:29:40,544 fail2ban.filter : INFO Log rotation
detected for /var/log/mail.log
2015-02-08 06:31:16,397 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/access.log
2015-02-08 06:31:16,435 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/error.log
2015-02-08 06:33:25,121 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.access.log
2015-02-08 06:33:25,976 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.access.log
2015-02-08 06:33:26,022 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.access.log
2015-02-08 06:33:53,507 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.access.log
2015-02-08 06:33:54,193 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.access.log
2015-02-08 07:06:44,456 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.error.log
2015-02-08 07:06:44,880 fail2ban.filter : INFO Log rotation
detected for /var/log/nginx/$log*.error.log
==
==
=

J'ai un certain nombre de fichiers de logs HTTP différents que j'ai =

renommés $log*, ça ne vous étonne pas.

Ces lignes d'info ne servent à rien et sont redondantes, la question =

a été posée et résolue sur Internet :
https://github.com/fail2ban/fail2ban/issues/129

On a un lien vers le correctif dans le tropique du GitHub, et j'ai
comparé avec ce que j'ai chez moi :
# locate filter.py
/usr/lib/python2.7/lib2to3/fixes/fix_filter.py
/usr/lib/python2.7/lib2to3/fixes/fix_filter.pyc
/usr/share/fail2ban/server/filter.py

# vi /usr/share/fail2ban/server/filter.py

class FileContainer:

def __init__(self, filename, tail = False):
self.__filename = filename
self.__tail = tail
self.__handler = None
# Try to open the file. Raises an exception if an
error occured.
handler = open(filename)
stats = os.fstat(handler.fileno())
self.__ino = stats.st_ino
try:
firstLine = handler.readline()
# Computes the MD5 of the first line.
self.__hash = md5sum(firstLine).digest()
# Start at the beginning of file if tail
mode is off.
if tail:
handler.seek(0, 2)
self.__pos = handler.tell()
else:
self.__pos = 0
finally:
handler.close()

def getFileName(self):
return self.__filename

def open(self):
self.__handler = open(self.__filename)
# Set the file descriptor to be FD_CLOEXEC
fd = self.__handler.fileno()
fcntl.fcntl(fd, fcntl.F_SETFD, fd | fcntl.FD_CLOEXEC)
firstLine = self.__handler.readline()
# Computes the MD5 of the first line.
myHash = md5sum(firstLine).digest()
stats = os.fstat(self.__handler.fileno())
# Compare hash and inode
if self.__hash != myHash or self.__ino != =
stats.st_ino:
logSys.info("Log rotation detected for %s" % =

self.__filename)
self.__hash = myHash
self.__ino = stats.st_ino
self.__pos = 0
# Sets the file pointer to the last position.
self.__handler.seek(self.__pos)

def readline(self):
if self.__handler == None:
return ""
return self.__handler.readline()

def close(self):
if not self.__handler == None:
# Saves the last position.
self.__pos = self.__handler.tell()
# Closes the file.
self.__handler.close()
self.__handler = None
==
==
=
==

Apparemment, le correctif n'a pas été implémenté partout, =
notamment
chez moi :
# aptitude show fail2ban
Paquet : fail2ban
Nouveau: oui
État: installé
Automatiquement installé: non
Version : 0.8.6-3wheezy3
Priorité : optionnel
Section : net
Responsable : Yaroslav Halchenko <debian@onerussian.com>
Architecture : all
Taille décompressée : 349 k
Dépend: python (>= 2.4), python-central (>= 0.6.11), lsb-base (>= =
2.0-7)
Recommande: iptables, whois, python-gamin
Suggère: mailx
Description : bannit des hôtes qui provoquent plusieurs erreurs
d'authentification

# service fail2ban -V
service ver. 0.91-ubuntu1
==
==
=

… et en plus, je ne comprends pas pourquoi j'ai un bidule Ubuntu pour =

un paquet téléchargé chez Debian…

L'un des autres fichier est compilé et l'autre ne contient pas la
mention qui passe dans mes logs, mais j'imagine qu'ils sont
tous plus ou moins liés entre eux.

Ma question, au fait ? Je redoute de modifier des trucs à l'arrache =

dans les fichiers système, alors je préfère demander…

Merci d'avance pour vos lumières :-)=

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: https://lists.debian.org/77C4A145-6621-4385-816E-05966D3E086C@worldonline.fr
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
S
Le #26338550
Bonjour,

Le mardi 10 février 2015 à 23:45, Philippe Gras a écrit :
Ma question, au fait ? Je redoute de modifier des trucs à l'arrache dans les
fichiers système, alors je préfère demander…



Elle n'est pas très claire ta question…

Je suppose que tu veux savoir si c'est propre de modifier directement les
fichiers d'un paquet (par exemple sous « /usr »).

Non, ce n'est pas propre.

Maintenant, est-ce que c'est grave ?

Pas forcément.

Si ta modification n'entraîne pas de faille au niveau de la sécurité, alors ce
n'est pas dramatique de le faire.

Par contre, quand le paquet sera mis à jour, tu perdras ta modification (et il y
a de grandes chances que tu l'aies oubliée d'ici-là et que tu te trouves donc
avec un paquet qui ne fonctionne pas comme tu le voudrais sans bien comprendre
pourquoi).

Quelle solution plus propre ?

Télécharger le paquet source, patcher le code et regénérer le paquet avec tes
modifications.

Ça résout le problème de modification directe dans « /usr », mais pas le
problème de la mise-à-jour qui viendrait écraser tes modifications.

Pour résoudre le problème de la mise-à-jour, « apt-src » est une bonne réponse.

Seb

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
S
Le #26338578
Merci de ne pas me répondre directement, je suis abonné à la liste.

Le mercredi 11 février 2015 à 11:30, judith a écrit :
Je vais parler tout les distrib que j'utilise. mais dans le principe,
ça reste identique. Pour installer Foremost, vous devez activer les
dépôts Universe et entrer la ligne de commande suivante (ou passer par
Synaptic) :



Universe ??? C'est de l'Ubuntu ça… Ici c'est Debian et chez Debian, « foremost »
est dans main, donc rien à faire d'autre que :

apt-get install foremost



Seb

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
judith
Le #26338576
Le mercredi 11 février 2015 à 10:22 +0100, Sébastien NOBILI a écrit :
Bonjour,

Le mardi 10 février 2015 à 23:45, Philippe Gras a écrit :
> Ma question, au fait ? Je redoute de modifier des trucs à l'arrache dans les
> fichiers système, alors je préfère demander…

Elle n'est pas très claire ta question…

Je suppose que tu veux savoir si c'est propre de modifier directement les
fichiers d'un paquet (par exemple sous « /usr »).

Non, ce n'est pas propre.

Maintenant, est-ce que c'est grave ?

Pas forcément.

Si ta modification n'entraîne pas de faille au niveau de la sécurité, alors ce
n'est pas dramatique de le faire.

Par contre, quand le paquet sera mis à jour, tu perdras ta modification (et il y
a de grandes chances que tu l'aies oubliée d'ici-là et que tu te trouves donc
avec un paquet qui ne fonctionne pas comme tu le voudrais sans bien comprendre
pourquoi).

Quelle solution plus propre ?

Télécharger le paquet source, patcher le code et regénérer le paquet avec tes
modifications.

Ça résout le problème de modification directe dans « /usr », mais pas le
problème de la mise-à-jour qui viendrait écraser tes modifications.

Pour résoudre le problème de la mise-à-jour, « apt-src » est une bonne réponse.

Seb



aaaah, n'ayez plus peur car il est aussi possible de récupérer
simplement ce fichiers grâce à un outil en ligne de commande qui
s'appelle Foremost et qui a été développé à l'origine pour le service
d'enquête spéciales de l'US Air Force... (Allez, tous en choeur :
"Waouuuuh")

La récupération d'un fichier effacé part d'un concept simple... quand
vous supprimez un fichier, c'est uniquement le pointeur vers celui-ci
qui est cassé mais il n'est pas immédiatement re-écrabouillé par
d'autres données. Le fichier est donc toujours physiquement présent sur
le disque dur. Evidement, plus vous attendez avant de récupérer un
fichier, plus celui-ci à de chance de disparaitre à jamais...

Je vais parler tout les distrib que j'utilise. mais dans le principe,
ça reste identique. Pour installer Foremost, vous devez activer les
dépôts Universe et entrer la ligne de commande suivante (ou passer par
Synaptic) :

apt-get install foremost

Vous devez ensuite connaitre la partition sur laquelle vous voulez
récupérer des fichiers (par exemple /dev/sda1)

Si vous voulez connaitre les fichiers qu'il est possible de récupérer
sur votre partition, entre la ligne de commande :

sudo foremost -w -i /dev/sda1 -o /recovery/foremost

Par exemple, pour récupérer des images jpg supprimées, il faut taper :

sudo foremost -t jpeg -i /dev/sda1

Foremost va alors créer un répertoire nommé "output" dans lequel il
placera tous les fichiers récupérés. Evidement, si les images auront
commencé à être écrasées, vous récupérerez des demi images mais c'est
déjà ça...

Il existe évidement pleins d'autres options de récupération mais les
ennoncer ici serait trop long mais je vous recommande de lire le man
page de Foremost ici.

Source


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Philippe Gras
Le #26338577
Le 11 févr. 15 à 11:44, Sébastien NOBILI a écrit :


Merci de ne pas me répondre directement, je suis abonné à la liste.

Le mercredi 11 février 2015 à 11:30, judith a écrit :
Je vais parler tout les distrib que j'utilise. mais dans le
principe,
ça reste identique. Pour installer Foremost, vous devez activer les
dépôts Universe et entrer la ligne de commande suivante (ou passer
par
Synaptic) :



Universe ??? C'est de l'Ubuntu ça… Ici c'est Debian et chez Debian,
« foremost »
est dans main, donc rien à faire d'autre que :

apt-get install foremost





J'avais fait apt-get install fail2ban. J'ai eu tort ?


Seb

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet
"unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/





--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
S
Le #26338583
Le mercredi 11 février 2015 à 11:53, Philippe Gras a écrit :
>Le mercredi 11 février 2015 à 11:30, judith a écrit :
>>Je vais parler tout les distrib que j'utilise. mais dans le principe,
>>ça reste identique. Pour installer Foremost, vous devez activer les
>>dépôts Universe et entrer la ligne de commande suivante (ou passer par
>>Synaptic) :
>
>Universe ??? C'est de l'Ubuntu ça… Ici c'est Debian et chez Debian, «
>foremost »
>est dans main, donc rien à faire d'autre que :
>
>>apt-get install foremost

J'avais fait apt-get install fail2ban. J'ai eu tort ?



Non, pas du tout.

La discussion a dérivé sur les outils de récupération de données supprimées /
écrasées (« foremost » en l'occurrence).

Est-ce que ma première réponse correspondait à ta question ?

Seb

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Philippe Gras
Le #26338590
Le 11 févr. 15 à 12:05, Sébastien NOBILI a écrit :

Le mercredi 11 février 2015 à 11:53, Philippe Gras a écrit :
Le mercredi 11 février 2015 à 11:30, judith a écrit :
Je vais parler tout les distrib que j'utilise. mais dans le
principe,
ça reste identique. Pour installer Foremost, vous devez activer les
dépôts Universe et entrer la ligne de commande suivante (ou
passer par
Synaptic) :



Universe ??? C'est de l'Ubuntu ça… Ici c'est Debian et chez
Debian, «
foremost »
est dans main, donc rien à faire d'autre que :

apt-get install foremost





J'avais fait apt-get install fail2ban. J'ai eu tort ?



Non, pas du tout.

La discussion a dérivé sur les outils de récupération de données
supprimées /
écrasées (« foremost » en l'occurrence).



Ah, OK ! Comme je n'avais pas reçu le message, je n'avais pas compris
de quoi
il retournait exactement…

Est-ce que ma première réponse correspondait à ta question ?



Oui, semble-t-il. J'ai commencé à regarder, ça n'a pas l'air super
facile. Je fais 2
upgrades environ par an, et pour 15 lignes de code en trop dans mes
logs, cela
pose une question subsidiaire : est-ce que ça vaut le coup de
s'emmerdifier ?

Sinon, j'avais pensé qu'on aurait pu m'indiquer le chemin pour poster
un ticket 2
réclamations quelque part, chez Debian ou Ubuntu, car l'affaire
demeure encore
obscure en ce qui concerne ce que j'ai réellement installé :-(

Seb

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet
"unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/





--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
S
Le #26338597
Le mercredi 11 février 2015 à 12:37, Philippe Gras a écrit :
Ah, OK ! Comme je n'avais pas reçu le message, je n'avais pas compris de
quoi
il retournait exactement…



Pourtant le message avait été envoyé également à la liste. Il est peut-être en
attente de distribution (les messages envoyés par des non-inscrits sont plus
longs à arriver je crois).

>Est-ce que ma première réponse correspondait à ta question ?
>
Oui, semble-t-il. J'ai commencé à regarder, ça n'a pas l'air super facile.
Je fais 2
upgrades environ par an, et pour 15 lignes de code en trop dans mes logs,
cela
pose une question subsidiaire : est-ce que ça vaut le coup de s'emmerdifier
?



C'est souvent comme ça que ça finit :-)

La mise en place d'apt-src et la recompilation d'un paquet source Debian n'est
pas si compliquée que ça.

La qualité de Debian se trouve également dans son système d'empaquetage et les
outils qui gravitent autour, c'est _très_ bien fait !

Sinon, j'avais pensé qu'on aurait pu m'indiquer le chemin pour poster un
ticket 2
réclamations quelque part, chez Debian ou Ubuntu, car l'affaire demeure
encore
obscure en ce qui concerne ce que j'ai réellement installé :-(



Je ne connais pas fail2ban, ni la modification qui t'intéresse, mais si aucun
bug n'est référencé chez Debian, ça pourrait valoir le coup d'en ouvrir un en
donnant le lien vers la modification dans le projet amont.

Seb

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Philippe Gras
Le #26338600
--Apple-Mail-4-820785953
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
charset=WINDOWS-1252;
delsp=yes;
format=flowed


Le 11 févr. 15 à 13:00, Sébastien NOBILI a écrit :

Le mercredi 11 février 2015 à 12:37, Philippe Gras a écrit :
Ah, OK ! Comme je n'avais pas reçu le message, je n'avais pas
compris de
quoi
il retournait exactement…



Pourtant le message avait été envoyé également à la liste. Il est
peut-être en
attente de distribution (les messages envoyés par des non-inscrits
sont plus
longs à arriver je crois).



Arf ! Je crois que l'Orange est encore passé au rouge pendant 1 heure
ou 2…

Je vais encore me prendre une remontée de bretelles par le bot de la
liste :-(

Est-ce que ma première réponse correspondait à ta question ?



Oui, semble-t-il. J'ai commencé à regarder, ça n'a pas l'air super
facile.
Je fais 2
upgrades environ par an, et pour 15 lignes de code en trop dans
mes logs,
cela
pose une question subsidiaire : est-ce que ça vaut le coup de
s'emmerdifier
?



C'est souvent comme ça que ça finit :-)

La mise en place d'apt-src et la recompilation d'un paquet source
Debian n'est
pas si compliquée que ça.

La qualité de Debian se trouve également dans son système
d'empaquetage et les
outils qui gravitent autour, c'est _très_ bien fait !

Sinon, j'avais pensé qu'on aurait pu m'indiquer le chemin pour
poster un
ticket 2
réclamations quelque part, chez Debian ou Ubuntu, car l'affaire
demeure
encore
obscure en ce qui concerne ce que j'ai réellement installé :-(



Je ne connais pas fail2ban, ni la modification qui t'intéresse,
mais si aucun
bug n'est référencé chez Debian, ça pourrait valoir le coup d'en
ouvrir un en
donnant le lien vers la modification dans le projet amont.

Seb

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet
"unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/






--Apple-Mail-4-820785953
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
charset=WINDOWS-1252

<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">
--Apple-Mail-4-820785953--

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Publicité
Poster une réponse
Anonyme