GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Warum wird mir beim Ausführen von ssh-add die Berechtigung verweigert?

Sie möchten, dass sowohl der Schlüsselordner als auch der Schlüssel selbst nur für den Benutzer lesbar sind. Ich mache immer chmod 700 ~/.ssh; chmod 600 ~/.ssh/* selbst, wo Sie diese Verzeichnisse natürlich an Ihren eigenen Anwendungsfall anpassen möchten.

Alternativ können Sie chown -R $USERNAME ~/.ssh; chmod -R go-rwx ~/.ssh

Die chown kann erforderlich sein, wenn die Schlüsseldatei beispielsweise als root heruntergeladen oder installiert wurde.


Machen Sie niemals chmod 777 auf Ihrem privaten Schlüssel! Es macht es (möglicherweise) öffentlich lesbar, und das wollen Sie nicht. Außerdem weigert sich SSH in einigen Fällen sogar, eine Datei mit zu freizügigen Berechtigungen zu verwenden, sodass Sie sich damit selbst ins Knie schießen könnten.

Wenn die Berechtigungen der Datei nicht das Problem sind, kann es mehrere andere Ursachen geben. Möglicherweise haben Sie für eines der Verzeichnisse ~/.ssh falsche Berechtigungen festgelegt oder ~/.ssh/keyfolder (technisch auch auf ~ aber dann wäre dies nicht das einzige Symptom). Verwenden Sie ls -adl um diese Verzeichnisse zu inspizieren. Sie sollten rwx haben für dich, aber --- sowohl für die Gruppe als auch für die Welt.

Ein weiteres Problem könnte sein (aber das ist ziemlich selten), dass der ssh-add binär hat den setuid Bit gesetzt, was dazu führt, dass es als ein anderer Benutzer ausgeführt wird und daher kein Recht hat, Ihren privaten Schlüssel zu lesen. Verwenden Sie ls -lh $(which ssh-add) um dies zu überprüfen.


Linux
  1. Erhalten Sie die Meldung „nicht gefunden“, wenn Sie eine 32-Bit-Binärdatei auf einem 64-Bit-System ausführen?

  2. Warum unterscheiden sich Pfadvariablen beim Ausführen über Sudo und Su?

  3. „Parsing-Fehler“ erhalten, wenn „yum repolist“ ausgeführt wird

  4. Warum fordert der Docker-Container die Erlaubnis verweigert auf?

  5. AWS Lambda-Berechtigung beim Versuch, ffmpeg zu verwenden, verweigert

Warum erhalte ich einen Exec-Formatfehler, wenn ich meinen Linux-Dienst schreibe?

Hinzufügen einer Zeile zur Hosts-Datei, Berechtigung verweigert bei Verwendung von sudo - Mac

Einhängefehler 13 =Berechtigung verweigert

Warum erhalte ich die Berechtigung verweigert (Publickey), wenn ich versuche, eine SSH-Verbindung von einem lokalen Ubuntu zu einem Amazon EC2-Server herzustellen?

tcpdump:out.pcap:Zugriff verweigert

POSTFIX main.cf-Berechtigung verweigert