Berechtigung zum Hinzufügen des SSH-Schlüssels zu .ssh/config verweigert

Ich versuche, den SSH-Schlüssel zur ~/.ssh/configVerwendung hinzuzufügenecho "IdentityFile ~/.ssh/my-ssh-key" >> ~/.ssh/config

Es zeigt mir einen Fehler an-bash: /Users/gaurav/.ssh/config: Permission denied

Was mache ich falsch?

Berechtigung für Ordner

total 64
-rw-r--r--  1 root    staff    85 Apr 15 12:59 config
-rw-------  1 gaurav  staff  1766 Jan  4 23:11 github_rsa
-rw-r--r--@ 1 gaurav  staff   404 Mar 20 09:50 github_rsa.pub
-r--------  1 gaurav  staff  1766 Mar 20 10:05 google-sb-server
-rw-r--r--  1 gaurav  staff   388 Mar 20 10:05 google-sb-server.pub
-rw-------  1 gaurav  staff  3247 Jan  5 10:37 id_rsa
-rw-r--r--  1 gaurav  staff   726 Jan  5 10:37 id_rsa.pub
-rw-r--r--  1 gaurav  staff  2230 Mar 20 12:45 known_hosts

Antworten (2)

Die Konfigurationsdatei in ~/.ssh/ hat den falschen Eigentümer/die falschen Berechtigungen. Es gehört root.

Ändern Sie den Besitzer in gaurav mit:

sudo chown gaurav:staff ~/.ssh/config

Geben Sie Ihr Passwort ein und es wird funktionieren (wenn Sie ein Sudoer sind).

Es ist fertig, danke. Jetzt bin ich in der Lage zu tun. Einmal mehr ist es im Falle von SSH sicher, den Besitz an current_user zu geben
@twister_void Ich verstehe deine Frage im Kommentar nicht wirklich. Bitte fügen Sie auf der Hauptseite (apple.stackexchange) eine zweite Frage zu Sicherheitsproblemen (der Konfigurationsdatei?) hinzu.
  • Das Home-Verzeichnis auf dem Server sollte nicht von anderen beschreibbar sein:chmod go-w ~/
  • Der SSH-Ordner auf dem Server benötigt 700 Berechtigungen:chmod 700 ~/.ssh
  • Authorized_keys-Datei benötigt 644 Berechtigungen:chmod 644 ~/.ssh/authorized_keys
  • Stellen Sie sicher, dass gauravdie Dateien/Ordner gehören und nicht root: chown user:gaurav authorized_keysundchown user:gaurav ~/.ssh
  • Legen Sie den generierten öffentlichen Schlüssel (von ) in der Datei ssh-keygendes Benutzers auf dem Server abauthorized_keys
  • Stellen Sie sicher, dass das Home-Verzeichnis des Benutzers wie erwartet eingestellt ist und dass es den richtigen .sshOrdner enthält, den Sie geändert haben. Wenn nicht, verwenden Sie usermod -d ~/ gaurav, um das Problem zu beheben
  • Zum Schluss ssh neu starten:service ssh restart
  • Stellen Sie dann sicher, dass der Client den öffentlichen Schlüssel und die privaten Schlüsseldateien im .sshOrdner des lokalen Benutzers hat und melden Sie sich an:ssh gaurav@host.com

Viel Glück!