Wie kann ich OpenSSH-Authentifizierungsmethoden pro Benutzer einrichten?

9

Ich möchte, dass sich eine Gruppe von Benutzern mithilfe der Authentifizierung mit öffentlichem Schlüssel authentifiziert und andere Benutzer die Kennwortauthentifizierung verwenden.

Ist dies in OpenSSH unter Linux möglich? Wenn ja, wie gehe ich vor?

Nach dem Durchschauen /etc/ssh/sshd_configscheint es mir beschränkt zu sein, entweder die Schlüsselauthentifizierung zu aktivieren oder PAM zu verwenden.

Belmin Fernandez
quelle

Antworten:

15

Die MatchDirektive (beschrieben in man sshd_config) ermöglicht die Angabe verschiedener Authentifizierungsmethoden für verschiedene Benutzer in einer Instanz von sshd server. Als Bonus für die Aufzählung einzelner Benutzer und Gruppen können diese auch über Platzhalter ausgewählt werden.

Match Group wheel                # for users from group wheel:
PubkeyAuthentication
Match Group !wheel,*             # for other users:
PasswordAuthentication
# caution: don't add directives here - they will be caught by "Match" block
# (end of file /etc/ssh/sshd_config)
kubanczyk
quelle
0

Es ist möglich, zwei verschiedene Instanzen von OpenSSH auszuführen. Eine wäre konfiguriert für PasswordAuthenticationund die andere für PubkeyAuthentication(jeweils an eine andere Adresse gebunden). Dann würde die AllowGroupsKonfigurationsanweisung verwendet, um zu steuern, welche Gruppen welchen Server verwenden können.

Aber ich kann die Frage falsch verstehen, weil Sie sagen "es ist entweder PAM- oder PublicKey-Authentifizierung." Beide können gleichzeitig aktiviert werden. Sie schließen sich nicht gegenseitig aus.


quelle