Ich muss bestimmte Benutzer einschränken, damit sie nur SSH mit SSH-Schlüsseln ausführen können und andere Benutzer sich mit Schlüssel oder Kennwort anmelden können.
ein Beispiel:
Ich möchte, dass sich Root-Benutzer mit dem Schlüssel remote (über sshd) anmelden können, damit kein Passwort akzeptiert wird (auch wenn das Passwort richtig ist).
und für andere Benutzer (alle im System) können sie sich mit Schlüssel und / oder Passwort anmelden
wie würde ich das machen
Match
Block geschrieben werden können. Sieheman 5 sshd_config
für das Detail.Richten Sie ssh wie folgt ein:
Starten Sie SSH neu
Geben Sie dann die Schlüssel für diejenigen an, die die Verwendung von Kennwörtern vermeiden möchten.
ssh-keygen wird verwendet, um dieses Schlüsselpaar für Sie zu generieren. Hier ist eine Sitzung, in der Ihr persönliches persönliches / öffentliches Schlüsselpaar erstellt wird:
Der Befehl ssh-keygen -t rsa initiierte die Erstellung des Schlüsselpaars.
Ich habe keine Passphrase für mein Setup eingegeben (stattdessen wurde die Eingabetaste gedrückt).
Der private Schlüssel wurde in .ssh / id_rsa gespeichert. Diese Datei ist schreibgeschützt und nur für Sie. Niemand sonst darf den Inhalt dieser Datei sehen, da damit die gesamte mit dem öffentlichen Schlüssel verschlüsselte Korrespondenz entschlüsselt wird.
Der öffentliche Schlüssel wird in .ssh / id_rsa.pub gespeichert.
Der Inhalt wird dann in die Datei .ssh / autorisierte_Tasten des Systems kopiert, auf das Sie SSH senden möchten, ohne zur Eingabe eines Kennworts aufgefordert zu werden.
Sperren Sie das Konto endgültig (die Schlüsselauthentifizierung ist weiterhin möglich.)
quelle