2 votes

Ubuntu Nginx après avoir bloqué l'adresse IP, mais toujours présent dans les logs

J'ai un serveur qui continue à essayer de pirater par force brute via xml-rpc post sur un site wordpress. J'ai bloqué l'adresse IP dans nginx.conf et j'ai remarqué que je continuais à obtenir ces erreurs dans le fichier journal. Comme il s'agit d'un piratage par force brute, il s'agit juste d'un DDOS très, très lent (car il fait prendre de la place aux fichiers journaux).

[error] 30912#0 : *4600 accès interdit par la règle, client :

J'ai cherché ici les modifications du fichier journal, mais il semble que ce soit tout ou rien pour les erreurs 403 et cela ne m'aiderait pas (je ne verrais pas les autres).

Pour combattre ce problème, j'ai essayé de bloquer le pare-feu (en utilisant l'enveloppe UFW autour des tables du pare-feu) et j'ai ajouté une entrée qui apparaît comme ceci dans le statut :

N'importe où DENY XXX.XXX.X.XXX (expurgé)

Cependant, même après avoir activé les règles du pare-feu et vérifié qu'elles sont en cours d'exécution, j'obtiens toujours les mêmes entrées d'erreur (403 erreurs) dans le fichier journal.

Une idée sur la façon de faire disparaître ce pirate sans remplir le fichier journal ? Il s'agit d'un serveur virtuel 14.04 LTS.

Edit : Utiliserait-on limit_req fait une différence sur ce point ? Deuxième édition : Voici le statut de UFW, il force brutalement un POST sur le site. Il est bloqué avec succès, mais le pare-feu ne devrait-il pas l'empêcher d'accéder à nginx en premier lieu ?

To                         Action      From
--                         ------      ----
22                         ALLOW       Anywhere
22/tcp                     ALLOW       Anywhere
2222/tcp                   ALLOW       Anywhere
80/tcp                     ALLOW       Anywhere
21/tcp                     ALLOW       Anywhere
Anywhere                   DENY        XXX.XXX.X.XXX
22 (v6)                    ALLOW       Anywhere (v6)
22/tcp (v6)                ALLOW       Anywhere (v6)
2222/tcp (v6)              ALLOW       Anywhere (v6)
80/tcp (v6)                ALLOW       Anywhere (v6)
21/tcp (v6)                ALLOW       Anywhere (v6)

6voto

Tim Points 28848

Placez votre règle DENY au-dessus de votre règle ALLOW pour le port 80 - elles sont exécutées dans l'ordre.

SSH ne devrait probablement pas être ouvert partout, mais faites attention à ne pas vous bloquer si vous avez une IP dynamique.

Considérez un CDN comme CloudFlare qui offre une protection contre de nombreuses menaces, un pare-feu, etc., avec des formules gratuites et payantes.

2voto

Placez une règle au-dessus de tout en utilisant le insert option.

Étape 1 - Obtenez le numéro de la règle :

sudo ufw status numbered  

Étape 2 - Placez cette règle au numéro désiré - dans ce cas 1, de sorte qu'elle remplace les autres autorisations.

sudo ufw insert 1 deny from xx.xxx.xx.xx

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X