SSH fragt nicht nach dem Passwort, gibt "Erlaubnis verweigert" sofort

14

Versuchen, über ein Benutzerkonto zu SSH zu gelangen; Root-Konto funktioniert, aber ich gebe einen privaten Schlüssel an. Das Benutzerkonto gibt einfach "Erlaubnis verweigert (publickey, gssapi-with-mic)", ohne mich zur Eingabe meines Passworts aufzufordern.

Wie kann ich das beheben, damit ich mich mit einem Passwort und NICHT mit einem Schlüssel anmelden kann? Ich möchte dafür momentan keinen privaten Schlüssel verwenden, sondern einen regulären Account.

Wayne Molina
quelle
4
Die
schlüsselbasierte

Antworten:

29

Der Server hat Einstellungen

 PasswordAuthentication no 

Ändern Sie den Wert in yes und nach einem Neustart können Sie die Kennwortauthentifizierung verwenden.

af.
quelle
3
Falls jemand es nicht weiß, befindet sich die PasswordAuthentication-Einstellung in / etc / ssh / sshd_config.
Pacoverflow
7

Überprüfen Sie Ihre Anmeldesequenz mit ssh -vv. Hier erfahren Sie, welche Authentifizierungsmethoden ausprobiert werden und welche fehlschlagen. Sie können dann aktivieren, was Sie möchten, und deaktivieren, was Sie nicht möchten. Natürlich zuerst aktivieren.

wzzrd
quelle
3

Sie müssen auch bearbeiten /etc/ssh/sshd_config, um die Einstellung zu haben:

ChallengeResponseAuthentication yes

ebenso gut wie...

PasswordAuthentication yes

Und denken Sie daran, anschließend / user / sbin / service ssh restart auszuführen , um die neuen Einstellungen zu übernehmen.

rfreytag
quelle
Beim Literal /etc/ssh/sshd_configmuss der Unterstrich mit einem Backslash versehen werden, damit der gesamte Pfad kursiv dargestellt wird. (Die Änderungen waren zu geringfügig, um sie selbst einzureichen.)
ThorSummoner,
Es ist die bessere Antwort
Harshitgupta
2

es ist in deiner sshdDatei (nicht ssh, was du wahrscheinlich auch in / etc / ssh findest)

Ich glaube, Sie möchten sicherstellen, dass alles PasswordAuthentication yesfestgelegt und unkommentiert ist.

BuildTheRobots
quelle
2
af schlug mich um Momente. -Erfreulicherweise kann ich seine noch nicht kommentieren. Sie sollten in der Lage sein /etc/init.d/sshd restart, nach dem Bearbeiten der conf auszuführen, anstatt einen Neustart durchführen zu müssen.
BuildTheRobots
und ich habe getippt, wenn ich dir sagte, welche Direktive. Entschuldigung :(
BuildTheRobots
MidnighToker: Sie sollten am Ende Ihrer Antwort einen "Bearbeiten" -Link haben, mit dem Sie den Namen der Direktive festlegen können (von PubkeyAuthentication bis PasswordAuthentication)
James Polley
Vielen Dank. Das wird mich in Zukunft vorsichtiger machen - dafür habe ich keine Vertretung.
BuildTheRobots
1
Das wäre in /etc/init.d/sshd reloadjeder halbwegs vernünftigen Distribution.
womble
0

Und falls jemand anderes auf dieses Problem stößt, habe ich dieses Problem erhalten, wenn der private Schlüssel des Benutzers zu offen für Berechtigungen ist. Um es zum Laufen zu bringen, musste ich den privaten Schlüssel auf 400 chmodieren (das ist die Berechtigungsstufe, die standardmäßig bei der Erstellung des Schlüssels verwendet wird, glaube ich. Ich weiß nicht, warum dieser anders war).

Ich weiß allerdings nicht, ob dies immer der Fall ist. Dies geschah auf einem Mac.

Safado
quelle
0

Für mich stellte sich heraus, dass die LOCAL-Datei ssh_config während einer Sitzung zur Fehlerbehebung geändert wurde. Keine dieser Methoden funktionierte für mich, aber das Ändern PasswordAuthentication yesin / etc / ssh / ssh_config des lokalen Computers funktionierte.

Nur für den Fall, dass es jemandem hilft.

glmdev
quelle
-1

Dies kann auch durch das Ausführen von ssh-agent verursacht werden. ps aux|grep ssh-agent

Es kann getötet werden.

Craig
quelle
3
Nein, das kann es nicht und nein, das kann es nicht.
womble