Bitbucket Git SSH-Schlüsselfehler: „Falscher Besitzer oder falsche Berechtigungen für /home/centos/.ssh/config“

Bitbucket Git SSH-Schlüsselfehler: „Falscher Besitzer oder falsche Berechtigungen für /home/centos/.ssh/config“

Ich habe die Anweisungen von Bitbucket befolgt, um meine SSH-Schlüssel hinzuzufügen und Git zu verwenden, ohne mich jedes Mal authentifizieren zu müssen. Ichhabe die Anweisungen hier befolgt. Dann bekomme ich die folgende Meldung:ssh -T [email protected]

Bad owner or permissions on /home/centos/.ssh/config

Eine Überprüfung der SSH-Berechtigungen zeigt:

cat ~/.ssh/config
Host bitbucket.org
 IdentityFile ~/.ssh/id_rsa

Und ~/.ssh/id_rsaexistiert und enthält meinen privaten Schlüssel. Der öffentliche Schlüssel ist bereits zu meinen SSH-Schlüsseln in Bitbucket hinzugefügt und die Fehlermeldung, die ich erhalte, steht nicht in der Anleitung zur Fehlerbehebung.

Das System ist CentOS Linux Release 7.0.1406 (Core), Git-Version 1.8.3.1, der SSH-Schlüssel wurde vor 5 Stunden zu Bitbucket hinzugefügt. Ich bin nicht sicher, ob das relevant ist, der Benutzer centosauf der CentOS-Maschine wurde automatisch erstellt und ich melde mich mit einer Identitätsdatei an (ich habe kein Passwort dafür). Außerdem funktioniert das Bitbucket-Repository einwandfrei und ich kann problemlos von einem anderen Computer aus damit arbeiten. Beide SSH-Schlüssel sind unter meinem Bitbucket-Konto aufgeführt.

AKTUALISIEREN:In beiden Antworten, die ich erhalten habe, wird auf Berechtigungen hingewiesen, aber das hatte ich bereits überprüft. Sowohl ~/.ssh/id_rsaals auch ~/.ssh/id_rsagehören meinem Benutzer mit 664bzw. 600. Ich habe sogar versucht, chmod 777für beide Dateien zu verwenden, aber die gleiche Meldung erhalten.

Antwort1

In beiden Antworten, die ich erhalten habe, wird auf Berechtigungen hingewiesen, aber das hatte ich bereits überprüft. Sowohl ~/.ssh/id_rsaals auch ~/.ssh/id_rsagehören meinem Benutzer mit 664bzw. 600. Ich habe sogar versucht, chmod 777für beide Dateien zu verwenden, aber die gleiche Meldung erhalten.

777Berechtigungen werden nie funktionieren. SSH-Berechtigungen sind sehr restriktiv und eine weitere Öffnung auf diese Weise führt nur zu Fehlern. Auch in Ihren Kommentaren zu anderen Fragen heißt es, dass dies Ihre aktuellen Berechtigungen sind:

-rw-rw-r--. 1 centos centos 47 May 17 20:33 /home/centos/.ssh/config 

Das sind 664Berechtigungen, die lauten -rw-rw-r--. Sie möchten 600Berechtigungen, die lauten -rw-------. Versuchen Sie also Folgendes: Ändern Sie zunächst die ~/.ssh/configBerechtigungen wie folgt:

chmod 600 /home/centos/.ssh/config

Machen Sie nun dasselbe für~/.ssh/id_rsa

chmod 600 /home/centos/.ssh/id_rsa

Außerdem bin ich mir nicht ganz sicher, wie die Bitbucket-SSH-Domänen-/Benutzerkombination aussehen würde, aber es könnte sich lohnen, den Prozess zu debuggen, indem man den SSH-Befehl mit dem -vFlag (verbose) verwendet, um im Detail zu sehen, was passiert. Ein Befehl wie dieser würde helfen:

ssh -v -T [email protected]

Dies -vwäre die ausführliche Ausgabe und -Twürde SSH so einstellen, dass die „Pseudo-TTY-Zuweisung deaktiviert“ wird, sodass keine echte interaktive Sitzung erstellt wird. Im Wesentlichen wird nur versucht, eine Verbindung zum Remote-Host herzustellen und dann die Verbindung zu trennen. Nützlich für Tests.

Antwort2

Wie der Fehler anzeigt, überprüfen Sie die Eigentümerschaft und Berechtigungen mit etwas wie ls -l /home/centos/.ssh/config.

Es sollte Ihnen gehören ( centos) und entweder im Modus 600( rw-------) oder 400( r--------) sein.

Antwort3

Ich würde einen

sudo chown <username>:<username> ~/.ssh/config

Wo <username>ist Ihr Systembenutzername? Das ändert den Besitzer der Datei in<username>

Das Löschen und erneute Erstellen mit dem aktuellen Benutzer (nicht mit sudo) würde auch funktionieren. Ich vermute, dass dies dadurch verursacht wurde, dass die Datei als Root erstellt wurde.

verwandte Informationen