J'utilise l'installation par défaut de openssh-server
pour mon serveur Ubuntu 14.04. Je peux me connecter via la console en tant que root, comme d'habitude, avec mon nom d'utilisateur et mon mot de passe. Lorsque j'essaie de SSH avec le même nom d'utilisateur/mot de passe, cependant, j'obtiens à plusieurs reprises des erreurs d'accès refusé. /var/log/auth.log
signale Failed password for root from <ip address> port <port> ssh2
, mais je saisis le mot de passe correct.
Pourquoi ne puis-je pas me connecter au serveur via SSH, même si le nom d'utilisateur et le mot de passe sont corrects?
Le paramètre par défaut dans Debian (et donc Ubuntu) pour OpenSSH Server consiste à refuser la connexion basée sur un mot de passe pour root et à autoriser uniquement la connexion basée sur la clé. Modifiez cette ligne dans /etc/ssh/sshd_config
:
PermitRootLogin without-password
à
PermitRootLogin yes
Et redémarrez le serveur SSH:
Sudo service ssh restart
Pour moi, les travaux changent (Ubuntu 18.04):
Sudo nano /etc/ssh/sshd_config
PermitRootLogin prohibit-password
à PermitRootLogin yes
PasswordAuthentication no
à PasswordAuthentication yes
ensuite, redémarrez le service SSH:
Sudo service ssh restart
Merci!
Les pirates s’attaqueront avec un utilisateur root essayant de s’imposer par la force brutale. Si vous autorisez les connexions à la racine, vous devez absolument installer Fail2Ban, ou quelque chose de similaire pour vous protéger contre les attaques par force brutale. Également utiliser un mot de passe très difficile à deviner sans l'utilisation de mots communs.
Et, comme le souligne Vaindil, un identifiant basé sur une clé serait de loin supérieur. Ils ne sont pas très difficiles à installer. Voici un lien pour configurer une connexion basée sur une clé à l'aide de PuTTY sous Windows: https://devops.profitbricks.com/tutorials/use-ssh-keys-with-PuTTY-on-windows/ . Mais il y en a beaucoup d'autres si vous utilisez un environnement différent pour vous connecter.