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

Un GRAND merci ex_rat

Version 2.0 du tuto presque parfaite.


J'aurai une question sur la sécurisation SSH, lorsque que on a bloqué le login root et autorise un user perso créé, Il y a un moyen de pouvoir avoir les droits root sur filezilla en sftp avec l'user perso ?
Non. Pour avoir les droits root c'est soit utiliser sudo (pas possible avec filezilla) soit changer l'uid = 0 ce qui revient à renommer le user root en autre chose.
4 jours plus tard
Merci beaucoup pour ce tuto très clair !
Je débute avec mon dédié Kimsufi et j'ai pu tout paramétrer sans problème, beau boulot.
Merci

Par contre y'a un os, pas trop embêtant parce que ça risque pas grand chose mais quand même...

Je m'étais jamais trop penché sur fail2ban mais la config' pour lighttpd qu'on retrouve sur tout les tuto qui trainent marche pas vraiment.

Les 3 fichiers de conf "apache-truc" qu'on utilise en /etc/fail2ban/filter.d/ ne voient rien passer. C'est pour ça qu'on ramasse des bots "myphpadmin" en rafale entre autre.
Pareil pour les tentatives d'identification à la porte de rutorrent, ça ban quedale

Je teste quelques trucs... Pour l'identification j'ai ça déjà qui marche pas mal même si ça ne ban que si le guignol utilise un pseudo existant sur la box (pas trouvé pour un "toto" mais c'est moins gênant)

On édite :
nano  /etc/fail2ban/filter.d/apache-auth.conf
On efface tout et on colle à la place :
# Fail2Ban configuration file
# for lighttpd htdigest

[Definition]

# Option:  failregex
# Notes.:  regex to match the password failure messages in the logfile.
# Values:  TEXT

failregex = .*http_auth.*wrong password.*IP: <HOST>\s*$
            .*http_auth.*password doesn\'t match.*IP: <HOST>\s*$

# Option:  ignoreregex
# Notes.:  regex to ignore. If this regex matches, the line is ignored.
# Values:  TEXT

ignoreregex =
Et on relance fail2ban :
/etc/init.d/fail2ban restart
J'ai testé c'est ok, je viens de bannir ma mère au bout de 3 tentatives. "Mais t'es sur que je vais pas avoir d'ennuis ?!?" 🙂)

J'ai un truc aussi pour les bots phpmyadmin mais j'attends d'avoir plus de retour sur mon test, je manque de pénibles sur le serveur pour l'instant.

Votre avis sur la question m’intéresse grandement et si vous pouvez confirmer...

Et pas facile "regex" au passage.

Ex.
Oui c'est ça, j'ai une regex en stock pour nginx pour ceux qui voudrons passer à nginx quand j'aurais fait le tuto.
Ok je ferais la mise à jour un peu plus tard avec des règles propres.

On suit des trucs sans les comprendre et on fait pornawak, c'est malheureux

Edit: J'ai corrigé la partie Fail2Ban / Lighttpd avec ajout d'un filtre anti-script, ça marche pas mal du tout

Ajout dans la règle anti script de fail2ban d'une ligne anti wootwoot qui marche pas mal du tout.
19 jours plus tard
Bonjour et merci a ex_rat pour ce tuto.
Tous c'est parfaitement dérouler, par contre je n'ai pas encore osé toucher la partie sécurité ssh.Du coup j'ai aussi sauté l’étape portsentry. De toute façon je me suis aperçu que dans les mails reçus par fail2ban la plupart des tentatives ont été effectuées sur des ports autre que le 22.
J'ai juste 2, 3 questions:

- Sur la partie "postfix" pour rediriger les mails vers root a quoi sert pour appliquer les changements
`newaliases`
Moi j'ai fait `/etc/aliases` modifier en `/etc/newaliases`.Au début j'avais créé un newaliases dans aliases mais cela ne me retourner aucun mail.

- Dans la partie "logwatch", on edit le fichier `/usr/share/logwatch/default.conf/logfiles/lighttpd.conf` et on modifie les valeurs.
J'ai supprimé la totalité des lignes et j'ai copié les lignes du tuto `LogFile = lighttpd/*access_log......ect`

- Et pour finir sur la partie fail2ban mais je crois que du coup c'est bon puisque je reçois les logs par mail sur la création des deux filtres pour Lighttpd.Dans les fichiers, on remplace *HOST* par rien ?

Merci.
Salut

- Pour ta question sur logwatch, il y a juste l'adresse mail à modifier, le reste des commandes se tape tel quel sans rien changer:
nano /etc/aliases
Et rajouter à la fin :
root: ton_mail@mail.com
Tu enregistres la modif' : (ctrl X... Y...)

Et après seulement, quand t'es "revenu" sur ta console tu tapes pour valider les changements :
newaliases
- Pour ta question sur HOST, on laisse comme ça dans les règles sans rien modifier.

Par contre, ne fait pas l'impasse sur la sécu SSH, c'est le plus important avec fail2ban, et penses après a modifier le port surveillé par fail2ban pour qu'il fasse son boulot

Bon courage

Ex.
Salut ,
je doit bien avoir tous fait car je reçois parfaitement tous les mails.
C'est aussi ok pour la partie SSH.
Par contre comment supprimer quelques lignes dans le logserver ?
Tu compte faire une partie pour AWStats ?

ça permet bien de vérifier toutes les adresses ip banni sur le serveur?
sudo nano checklist_ban
Merci.
Pour AWStats il y avait ça dans l'ancien post sécurité qui est un peu plus bas sur la première page. Mais d'après les commentaires il y avait des soucis donc j'ai pas remis au propre, si quelqu’un a un tuto 100% fonctionnel, qu'il hésite pas

Logserver, y'a une rotation du log sur 7 jours, c'est vrai qu'en fin de semaine le fichier est un peu lourd mais c'est pas trop gênant, j'ai pas soluce pour faire plus light mais si quelqu’un a ça et veut faire évoluer le truc avec un script ou autre idée, il est le bienvenue....

Fail2ban utilise Iptables, d'après la faq pour voir les ban en cours: `iptables -L`
Pour un log plus parlant voir ici en bas de page: FAQ Fail2ban , faut ajouter des trucs dans les actions de jail.local

Après y'a toujours moyen de voir les dernières entrées et suivre ça en live dans fail2ban.log quand y'a rien à la tv :
tail -f -n 50 /var/log/fail2ban.log | ccze
(toujours avec des jolies couleurs, parce que j'aime bien ! )

Ex.
Salut Ex_rat,
oui justement c'est par rapport aux retours d'erreurs sur awstats que je posais la question.On va donc attendre ..

Ok pour logserver je n'avais pas fait attention a la mise a jour de la page tous les 7 jours.

Merci pour le live, effectivement rien de plus passionnant que de suivre l’activité de tentative d'intrusion sur son serveur.
13 jours plus tard
J'ai suivi le tuto , mais une petite erreur : lighttpd-enable-mod accesslog : command not found.
Comme si lightpd n etais pas installer
Salut

Je sais pas trop, j'ai jamais eu de soucis ou d'erreur avec la commande.

La box tourne comme il faut a part ça, j'imagine que t'étais bien en root ?

On va attendre des avis plus éclairé que le mien pour résoudre ton soucis, je connais pas assez lighttpd pour ça...

Ex.
Yop

Oui je suis bien en root, toute la première partie du tuto c est bien déroulé. donc je reçois bien les mails.
Merci de ta reponse Ex_rat et merci pour le tuto par la meme occasion
Salut
Je vois plusieurs soucis suite à la sécu SSH sur le forum, je me demande si le tuto est assez clair et si il y aurait matière à l'améliorer pour éviter les boulettes...

votre avis sur la question avec des yeux extérieure est bien venu !

Cette semaine je vais refaire une install test dès que j'ai 5 minutes pour voir aussi si il n'y aurait pas un problème apparu par rapport à une mise à jour de Lighttp, on a eu 2 retours négatifs en 1 semaine (sur install fraiche et apt-get upgrade) ça fait beaucoup, c'est louche...
Ex.
Bonjour, suite à plantage complet du serveur, j'ai du refaire ce dernier...
J'ai donc suivi le premier tuto sur l'installation rtorrent, là pas de problème tout fonctionne. Puis j'ai suivi ce tuto sur la sécurisation, tout à fonctionner jusqu'a l'installation de PORTSENTRY, plus d'accès ssh et ftp au serveur..
Rahhhh, c'est louche cette affaire, jamais eu aucun soucis avec portsentry
Plusieurs questions....
- T'as perdu la main pendant l'install de portsentry ou après avoir fait le /etc/init.d/portsentry restart à la fin ?
- T'avais mis ton ip "maison" dans la whitelist ou pas ?
- T'as webmin installé et fonctionel ? Si oui regarde si tu t'es pas autoban dans
/etc/hosts.deny
Tu cherches ton ip, si elle y est et tu effaces la ligne, tu sauvegardes + reboot du serveur
Ex.
avec webmin y a moyen de voir les log syslog ?
oui pendant l'install de portsentry après avoir fait le /etc/init.d/portsentry restart.
Comme je n'ai pas d'ip fixe je n'ai rien mis à ip "maison".
Et malheureusement j'avais pas encore installé webmin..... le boulet total... :\">