Ich verwende die Standardinstallation von openssh-server
für meinen Ubuntu 14.04-Server. Ich kann mich über die Konsole wie gewohnt als root mit meinem Benutzernamen und Passwort verbinden. Wenn ich jedoch versuche, mit demselben Benutzernamen / Passwort SSH zu verwenden, erhalte ich wiederholt die Fehlermeldung "Zugriff verweigert". /var/log/auth.log
meldet Failed password for root from <ip address> port <port> ssh2
, aber ich gebe das richtige Passwort ein.
Warum kann ich über SSH keine Verbindung zum Server herstellen, obwohl der Benutzername und das Kennwort korrekt sind?
server
ssh
password
authentication
Vaindil
quelle
quelle
Antworten:
Die Standardeinstellung in Debian (und daher Ubuntu) für OpenSSH Server ist, die kennwortbasierte Anmeldung für root zu verweigern und nur die schlüsselbasierte Anmeldung zuzulassen. Ändern Sie diese Zeile in
/etc/ssh/sshd_config
:zu
Und starten Sie den SSH-Server neu:
quelle
sudo
deaktiviert sind.sudo passwd root
Für mich funktioniert das Ändern (Ubuntu 18.04):
sudo nano /etc/ssh/sshd_config
PermitRootLogin prohibit-password
zuPermitRootLogin yes
PasswordAuthentication no
zuPasswordAuthentication yes
Starten Sie dann den ssh-Dienst neu:
sudo service ssh restart
Vielen Dank!
quelle
Hacker werden den Root-Benutzer davon abhalten, sich brachial durchzusetzen. Wenn Sie Root-Anmeldungen zulassen, sollten Sie auf jeden Fall Fail2Ban oder etwas Ähnliches installieren, um sich vor Brute-Force-Angriffen zu schützen. Verwenden Sie auch ein sehr schwer zu erratendes Passwort ohne die Verwendung gebräuchlicher Wörter.
Und wie Vaindil betonte, wäre eine schlüsselbasierte Anmeldung weitaus besser. Sie sind nicht sehr schwer einzurichten. Hier ist ein Link zum Einrichten der schlüsselbasierten Anmeldung mit PuTTY unter Windows: https://devops.profitbricks.com/tutorials/use-ssh-keys-with-putty-on-windows/ . Es gibt jedoch viele andere, wenn Sie eine andere Umgebung zum Anmelden verwenden.
quelle