
Ich möchte dies tun in/etc/ssh/sshd_config
Protocol 2
Ciphers aes256-ctr
PermitRootLogin no
X11Forwarding no
Match User joebob
X11Forwarding yes
AuthorizedKeysFile .ssh/authorized_keys
PermitEmptyPasswords no
RSAAuthentication no
RhostsRSAAuthentication no
IgnoreUserKnownHosts no
Das Problem ist
Starten von SSH daemon/etc/ssh/sshd_config Zeile 40:
Direktive „IgnoreUserKnownHosts“ ist innerhalb eines Match-Blocks nicht zulässig
Es scheint, als würden wie viele Direktiven nach der ersten nach der Match-Anweisung als Teil des Matches einbezogen?
Meine Match-Anweisung funktioniert, wenn ich sie ganz am Ende der sshd_config
Datei einfüge.
Ich möchte das nicht tun.
Gibt es eine Möglichkeit, diese eine Match-Anweisung weiter oben in der Datei zu platzieren, direkt nach meiner X11Forwarding-No-Anweisung?
Ich habe alle relevanten SSH-Einstellungen, die mich interessieren, am Anfang der Datei. Ich möchte meinen Match-Benutzer direkt nach X11forwarding no, damit ich weiß, dass es passiert. Ich vergesse es, wenn es am Ende der Datei steht.
Mein Ziel ist, X11Forwarding für alle außer einem in definierten lokalen Benutzerkonto zu deaktivieren /etc/passwd
.
Antwort1
Wie in man sshd_config
Abschnitt erwähnt Match
:
In den Zeilen nach einem Schlüsselwort darf nur eine Teilmenge von Schlüsselwörtern verwendet werden
Match
. Verfügbare Schlüsselwörter sindAllowAgentForwarding, AllowTcpForwarding, Banner, ChrootDirectory, ForceCommand, GatewayPorts, GSSAPIAuthentication, HostbasedAuthentication, KbdInteractiveAuthentication, KerberosAuthentication, KerberosUseKuserok, MaxAuthTries, MaxSessions, PubkeyAuthentication, AuthorizedKeysCommand, AuthorizedKeysCommandRunAs, PasswordAuthentication, PermitEmptyPasswords, PermitOpen, PermitRootLogin, RequiredAuthentications1, RequiredAuthentications2, RhostsRSAAuthentication, RSAAuthentication, X11DisplayOffset, X11Forwarding und X11UseLocalHost
also gut, wie Sie sehen, IgnoreUserKnownHosts
kann es nicht im Abschnitt „Match“ sein. Verschieben Sie das entweder über das erste Match, wenn Sie eines haben, oder platzieren Sie alle Match
Teile (sofern vorhanden, eins oder mehrere) am Ende der Konfigurationsdatei (was empfohlen wird); andernfalls überschreibt die gesamte Konfiguration nach dem Match die globale Konfiguration und gilt joebob
nur für Ihren Benutzer ().
Es wird daher empfohlen, alle Übereinstimmungen an das Ende der Konfigurationsdatei zu verschieben.
Hinweis: Jeder Match
Block kann durch den Start eines anderen Match
Blocks oder durch das Ende der Konfigurationsdatei enden. Wenn Sie Match All
eine andere Konfiguration eingeben, wird diese als global betrachtet.
Antwort2
Um das Ende eines Match-Blocks zu markieren, können Sie „Match all“ verwenden.
Protocol 2
Ciphers aes256-ctr
PermitRootLogin no
X11Forwarding no
Match User joebob
X11Forwarding yes
Match all
AuthorizedKeysFile .ssh/authorized_keys
PermitEmptyPasswords no
RSAAuthentication no
RhostsRSAAuthentication no
IgnoreUserKnownHosts no