Je suis très nouveau dans l'administration des réseaux, veuillez donc noter que je ne suis pas encore expérimenté.
J'ai un serveur racine Ubuntu avec panneau plesk.
Hier, mes amis et moi avons remarqué que la qualité de la parole sur notre TS3 était très mauvaise. J'ai envoyé des pings au serveur et il y a eu une perte de paquets très élevée. Après cela, j'ai googlé un peu et découvert qu'il y en avait un auth.log
. Je l'ai téléchargé et j'ai fait défiler un peu, puis j'ai trouvé ceci:
May 13 10:01:27 rs204941 sshd[9351]: input_userauth_request: invalid user student [preauth]
May 13 10:01:27 rs204941 sshd[9351]: pam_unix(sshd:auth): check pass; user unknown
May 13 10:01:27 rs204941 sshd[9351]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=112.220.198.102
May 13 10:01:29 rs204941 sshd[9351]: Failed password for invalid user student from 112.220.198.102 port 39806 ssh2
May 13 10:01:29 rs204941 sshd[9351]: Received disconnect from 112.220.198.102: 11: Bye Bye [preauth]
May 13 10:01:31 rs204941 sshd[9353]: Invalid user student from 112.220.198.102
Il semble que quelqu'un ait essayé de se connecter à plusieurs reprises via SSH. J'ai fait défiler un peu et j'ai vu que cette personne essayait d'utiliser de nombreux noms d'utilisateur différents:student, tech, psi, news,...
Des centaines de ces connexions ont été affichées dans le fichier.
J'ai recherché les statistiques de trafic sur le site Web de mon centre de données. Ce n'était qu'à 17 Mo par heure. J'ai une dorsale 100Mbit, donc le transfert de données lui-même ne semble pas être le problème.
Pour le moment, je ne peux en aucun cas accéder au serveur.
Ma question est: comment puis-je obtenir à nouveau l'accès, comment puis-je supprimer cette attaque et empêcher les attaques suivantes?
Réponses:
La raison pour laquelle vous ne pouvez pas accéder à votre compte n'est pas claire.
Si votre ordinateur est attaqué ou soumis à une charge élevée, vous devez parler à votre fournisseur de la restriction d'accès (restrictions IP) ou de la mise hors ligne du serveur (se déconnecter d'Internet).
Vous pourriez également avoir besoin d'un accès hors bande avec lequel votre fournisseur pourra vous aider.
Si quelqu'un a compromis votre serveur, vous devrez peut-être restaurer à partir de sauvegardes ou utiliser une image de récupération.
meilleure façon d'empêcher les ouvertures de session par force brute?
Ne les laissez pas accéder à votre machine en premier lieu! Il existe de nombreuses façons d'arrêter les tentatives de force brute avant qu'elles n'atteignent votre hôte, ou même au niveau SSH.
Cela dit, protéger votre système d'exploitation avec quelque chose comme fail2ban est une excellente idée. http://en.wikipedia.org/wiki/Fail2ban
Il existe un certain nombre de techniques de sécurité importantes que vous devez envisager pour empêcher les connexions par force brute:
SSH:
Application:
la source
Habituellement, je change le port ssh par défaut de 22 en un autre comme 1122. Cela empêche de nombreuses attaques automatiques du bot, mais une simple analyse de port peut le détecter. En tous cas:
et éditez le port 22 vers le port 1122 , mais cela ne suffit pas.
Règles IPTables automatiques sur bruteforce
j'utilise log2iptables https://github.com/theMiddleBlue/log2iptables à la place Fail2ban, car c'est un simple script Bash qui analyse tout fichier journal avec une expression régulière et exécute iptables. Par exemple, lorsque 5 correspondances se produisent, log2iptables supprime l'adresse IP spécifique. C'est cool car utilisez l'API Telegram et pouvez m'envoyer un message sur mon téléphone quand il trouve un problème :)
j'espère que cela vous aidera!
la source
Je viens de mettre cela ensemble, d'exécuter toutes les 15 minutes en tant que cronjob, etc.:
la source
Ceci est ma solution alternative pour les attaques SSH. L'idée est de continuer à fermer le démon SSH s'il n'est pas utilisé. Pas de port ouvert, pas d'attaque. Tu peux l'essayer. Il est open source https://github.com/indy99/nnet_port_guard
la source
Solution automatisée pour Centos / RHEL pour bloquer les mauvais acteurs
Voici un script pour Centos pour vérifier les échecs de connexion ssh pour les comptes d'utilisateurs non valides et les mauvais mots de passe pour les comptes valides. Si l'IP source nous a frappé plus de 3 fois et n'est pas déjà sur la liste de refus, elle est ajoutée à la liste de refus. Je l'exécute toutes les 15 minutes depuis le crontab de root. J'ai également interdit les connexions root via ssh, donc la combinaison garde les choses assez silencieuses.
la source
fail2ban
qui fait la même chose et qui est testé au combat.