Von man 8 sshd
in Bezug auf das Dateiformat für autorisierte Schlüssel und die command="command"
Option:
Beachten Sie, dass dieser Befehl entweder durch eine ForceCommand-Direktive sshd_config (5) oder einen in ein Zertifikat eingebetteten Befehl ersetzt werden kann.
Mit ssh-keygen -O force-command="command"
kann ein Befehl in ein Zertifikat eingebettet werden. Aber wie kann man überprüfen, ob ein Befehl nicht in ein Zertifikat eingebettet wurde? ForceCommand
Überschreibt ein in ein Zertifikat eingebetteter Befehl immer, um zu verhindern, dass unerwartete Befehle ausgeführt werden ?
Kann ein böswilliger Benutzer einen erzwungenen Befehl ssh autorisierte Schlüssel umgehen? stellt eine allgemeinere Frage zur Sicherheit, aber in den Antworten werden derzeit keine in Zertifikaten eingebetteten Befehle erwähnt.
quelle
OpenSSH_5.9p1 Debian-5ubuntu1.1, OpenSSL 1.0.1 14 Mar 2012
undOpenSSH_6.2p2 Debian-6~bpo70+1, OpenSSL 1.0.1e 11 Feb 2013
ssh-keygen -L
ist es für Zertifikate, aber nicht für RSA-Schlüssel.ssh-keygen -lf
zeigt einen Fingerabdruck, aber keine eingebetteten Befehle.openssl rsa -in file -text -noout
zeigt Modul und Exponenten, aber keine eingebetteten Befehle.Antworten:
Die Manpage ssh-keygen sagt
Die
-O force-command=command
Option bezieht sich auf Zertifikate, nicht auf Schlüssel.Sie müssen ein Zertifikat durch Signieren eines Schlüssels generieren, dann sollten Sie in der Lage sein, das Zertifikat zu dekodieren und den eingebetteten Befehl anzuzeigen.
quelle