• Serveurs
  • [Discussion] : Sécurisation & Logs {nginx} {lighttpd}

gros-boulet-inside
thx
Bug
Cron <root@ksxxxxxx> sh /usr/share/mes-scripts/logserver.sh

cp: impossible d'évaluer « /var/log/nginx/rutorrent.access.log »: Aucun fichier ou dossier de ce type
cp: impossible d'évaluer « /var/log/nginx/rutorrent.access.log.1 »: Aucun fichier ou dossier de ce type
cat: access.log.1: Aucun fichier ou dossier de ce type
cat: access.log.tmp: Aucun fichier ou dossier de ce type


Comment le résoudre ? Est-ce dû aux caractères ""spéciaux"" ?
Par rapport au caractère "d'évaluer", c'est du à quoi ?
Je peux le résoudre avec LANG=fr_FR & LANGUAGE=fr_FR:fr -> les 2 en fr_FR.UTF-8 ???
"évaluer «Â" Vérifies que ton putty est en utf-8 pour commencer, ensuite ouvre le script logserver.sh, efface tout et re-colle celui du tuto pour voir si ça rentre dans l'ordre.
Ex.
putty était bien en utf-8

/usr/share/mes-scripts/logserver.sh
cp: impossible d'évaluer « /var/log/nginx/rutorrent.access.log »: Aucun fichier ou dossier de ce type
cp: impossible d'évaluer « /var/log/nginx/rutorrent.access.log.1 »: Aucun fichier ou dossier de ce type
cat: access.log.1: Aucun fichier ou dossier de ce type
cat: access.log.tmp: Aucun fichier ou dossier de ce type

pourtant via ftp je vois qu'ils existent ..
??
les deux fichiers que tu vois en ftp, il ont une taille supérieur à 0 ko ?
oui les logs sont remplis
et les droits sur les deux fichiers (on peut voir facile avec filezilla) c'est bien, en 640 et nginx:root ?
oui 640 pour le "propriétaire" sur les 2
Si tu fais un cp tout bete genre :
cp /etc/nginx/sites-enabled/rutorrent.conf /tmp/rutorrent.test
ça passe ?
oui et j'arrive à voir le script ds le fichier avec ext test
Logwatch fonctionne maintenant avec les logs nginx
Pour les aventuriers qui ont déjà migré ou suivi le nouveau tuto d'installation, on va avoir besoin de faire deux modifs.

On ouvre :
nano /etc/nginx/nginx.conf
Et on supprime les lignes (en début de fichier) :
log_format main '$remote_addr - $remote_user [$time_local]  $status '
                    '"$request" $body_bytes_sent "$http_referer" '
                    '"$http_user_agent" "$http_x_forwarded_for"';
Toujours dans le même fichier, on modifie :
access_log /var/log/nginx/access.log main;
En
access_log /var/log/nginx/access.log combined;
Ensuite dans le fichier rutorrent.conf :
nano /etc/nginx/sites-enabled/rutorrent.conf
On modifie :
access_log /var/log/nginx/rutorrent.access.log main;
En
access_log /var/log/nginx/rutorrent.access.log combined;
Voilà, plus qu'à relancer :
service nginx restart
Les logs vont progressivement redevenir lisible pour logwatch au fur et à mesure de leurs rotations
Le tuto a été mis à jour.
Ex.

Edit:
Pour éviter d'avoir les infos http en double dans logwatch, une petite correction :
mv /usr/share/logwatch/default.conf/services/http.conf /usr/share/logwatch/default.conf/services/http.conf.bak
Et:
logwatch restart
chr1s wrote:putty était bien en utf-8

/usr/share/mes-scripts/logserver.sh
cp: impossible d'évaluer « /var/log/nginx/rutorrent.access.log »: Aucun fichier ou dossier de ce type
cp: impossible d'évaluer « /var/log/nginx/rutorrent.access.log.1 »: Aucun fichier ou dossier de ce type
cat: access.log.1: Aucun fichier ou dossier de ce type
cat: access.log.tmp: Aucun fichier ou dossier de ce type

pourtant via ftp je vois qu'ils existent ..
??

Salut
J'ai eu le mm soucis.
Fait un
ls /var/log/nginx
tu devrais remarquer, si c'est comme moi, que tes fichiers sont rutorrent-access.log au lieu de rutorrent.access.log
Tu as juste à supprimer le script :
Et taper :
nano /usr/share/mes-scripts/logserver.sh
Et tu y colles ceci :
#!/bin/bash
#
# Remplacer UU0 par votre conf, exemple pour un user "exrat" => EXR0
#

# Récupération des logs (J et J-1) et fusion
cp /var/log/nginx/rutorrent-access.log /tmp/access.log.tmp
cp /var/log/nginx/rutorrent-access.log.1 /tmp/access.log.1
cd /tmp
cat access.log.1 access.log.tmp > access.log

# Nettoyage
sed -i '/plugins/d' access.log
sed -i '/getsettings.php/ d' access.log
sed -i '/setsettings.php/ d' access.log
sed -i '/UU0/d' access.log

# Si plusieurs colocs on ajoute leurs "UU0" et on décommante les lignes.
#sed -i '/UU0/d' access.log
#sed -i '/UU0/d' access.log
#sed -i '/UU0/d' access.log

# Création de la page html
ccze -h < /tmp/access.log > /var/www/rutorrent/logserver/access.html
Ca revient à renommer les fichiers log sur les deux premières lignes.

On rend le script exécutable :
chmod +x logserver.sh
On teste le script :
/usr/share/mes-scripts/logserver.sh
J'espère que c'est le même soucis que moi et que cela pourra t'aider.
B2B
je teste ça demain et je te dis quoi ^^
thx
Salut

Je viens de remarquer un truc. Dans ton tuto tu écris ca :
Créer le fichier jail.local en faisant une copie de jail.conf :

cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Configuration du fichier jail.local :

nano /etc/fail2ban/jail.local
Je viens de me rendre comtpe que j'ai modifié le jail.conf en faite et me demande si c'est pas le jail.conf qu'il fallait modifier plutot?
Backtoback wrote:Salut

Je viens de remarquer un truc. Dans ton tuto tu écris ca :
Créer le fichier jail.local en faisant une copie de jail.conf :

cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Configuration du fichier jail.local :

nano /etc/fail2ban/jail.local
Je viens de me rendre comtpe que j'ai modifié le jail.conf en faite et me demande si c'est pas le jail.conf qu'il fallait modifier plutot?
c'est le jail.local qu'il faut modifier, parce que le jail.conf est écrasé à chaque mise à jour je crois
C'est curieux, car j'avais modifié le jail.conf, mais pour l'envoi de mail c'était le action de jail.local, et pourtant j'avais des mails.
Enfin j'ai mi comme dnas le tuto
salut,

je suis entrain de suivre le tuto.

pour les filtres nginx antibots la regex recherche un code http 404. Pour les personnes qui protège tout le serveur le bot va récup un code http 401.
Je me demande si la regex va fonctionner.
Justement j'ai une petite erreur à vous montrer :
--------------------- nginx Begin ------------------------

A total of 1 sites probed the server
222.75.34.253

Requests with error response codes
400 Bad Request
/w00tw00t.at.ISC.SANS.DFind🙂: 1 Time(s)
\x00\x009\x00\x008\x00\x005\x00\x00\x16\x00\x00\x13\x00\x00: 1 Time(s)
null: 1 Time(s)
401 Unauthorized
/admin/config.php: 2 Time(s)
/: 1 Time(s)
/HNAP1/: 1 Time(s)
/THI0: 1 Time(s)
/rutorrent/: 1 Time(s)

---------------------- nginx End -------------------------
Pour l'anti-bot, je dirais qu'en 401 non il va passer a travers. Mais j'ai remarqué que quand tu arrives sur la box tu as le droit à un 401 aussi dans le log et la regle ban à 1 tentative donc c'est peut-être un peu chaud, je sais pas trop...

ex. chez moi:
109.190.x.x - - [12/Mar/2014:17:53:47 +0100] "GET / HTTP/1.1" 401 188 ...."
109.190.x.x - exrat [12/Mar/2014:17:53:50 +0100] "GET / HTTP/1.1" 200 2362 ...."
Y'a toujours la possibilité de modifier la fin des regles en (401|403|404|etc...) mais il va se passer quoi pour le type qui va arriver sur son vrai phpmyadmin avec son 401 avant identification ? Faudrait faire des test avant de kicker tout le monde
Ex.
J'ai pas du tout compris.
Je n'ai pas phpmyadmin