sshd_config

Konfigurieren Sie den OpenSSH-Server: Abhören, Authentifizierung, Weiterleitung, Zugriffskontrolle und Protokollierung.

Vor der Ausführung

Die Serverkonfiguration unterscheidet sich von der Client-ssh_config. Pfade, unterstützte Optionen und Standardeinstellungen hängen vom Betriebssystem und der OpenSSH-Version ab. Halten Sie eine bestehende Verwaltungssitzung geöffnet und einen Wiederherstellungspfad verfügbar. Bevor Sie Änderungen anwenden, validieren Sie die tatsächliche Konfiguration mit sshd -t und überprüfen Sie die wirksamen Einstellungen mit sshd -T. Für diese Befehle sind möglicherweise Administratorrechte erforderlich. Überprüfen Sie eine zweite Anmeldung, bevor Sie die ursprüngliche Sitzung schließen. Kopieren Sie Beispielwerte nicht blind.

Prüfen Sie nach dem Anwenden der Änderungen in einer neuen SSH-Sitzung die Anmeldung und das gewünschte Verhalten. Lassen Sie die aktuelle Sitzung bis zur erfolgreichen Prüfung geöffnet, damit Sie die Konfiguration bei Bedarf wiederherstellen können.

Beispiele

Beispielserverkonfiguration. Passen Sie Authentifizierung, Pfade und Zugriffsregeln an Ihre Umgebung an.

Port 22
PermitRootLogin no
PubkeyAuthentication yes
AllowTcpForwarding yes

Überprüfen Sie die Syntax und überprüfen Sie die effektiven Servereinstellungen, bevor Sie Änderungen anwenden.

sudo sshd -t
sudo sshd -T

Optionen und Beispiele

PortHäufig

Abhörender TCP-Port; Mehrere Port-Anweisungen sind zulässig. Stellen Sie sicher, dass die Firewall und die Clients den gewählten Port zulassen.

Beispiel
Port 2222
ListenAddressHäufig

Lokale Adresse, die sshd abhört. Eine Adresse kann einen Port enthalten; Stellen Sie sicher, dass es auf dem Server vorhanden ist.

Beispiel
ListenAddress 192.0.2.10
AddressFamily

Wählen Sie die Adressfamilie aus: beliebig, inet für IPv4 oder inet6 für IPv6.

Beispiel
AddressFamily inet
HostKeyHäufig

Pfad zu einem privaten Server-Hostschlüssel; Dies ist nicht der Authentifizierungsschlüssel eines Benutzers. Schützen Sie die private Datei.

Beispiel
HostKey /etc/ssh/ssh_host_ed25519_key
HostCertificate

Pfad zu einem Server-Host-Zertifikat, das einem konfigurierten Host-Schlüssel entspricht.

Beispiel
HostCertificate /etc/ssh/ssh_host_ed25519_key-cert.pub
PasswordAuthenticationHäufig

Passwortauthentifizierung zulassen oder verweigern. Überprüfen Sie eine andere Anmeldemethode, bevor Sie sie deaktivieren.

Beispiel
PasswordAuthentication no
PubkeyAuthenticationHäufig

Erlauben oder verweigern Sie die Authentifizierung mit öffentlichem Schlüssel. Serverberechtigungen und autorisierte Schlüssel gelten weiterhin.

Beispiel
PubkeyAuthentication yes
KbdInteractiveAuthenticationHäufig

Tastaturinteraktive Authentifizierung zulassen. Die Eingabeaufforderungen und verfügbaren Methoden hängen vom Server und dem Authentifizierungs-Backend ab.

Beispiel
KbdInteractiveAuthentication yes
AuthenticationMethodsHäufig

Erfordert eine der durch Leerzeichen getrennten Methodenlisten. Jede durch Kommas getrennte Methode in einer Liste muss erfolgreich sein. Jede Methode muss außerdem aktiviert sein.

Beispiel
AuthenticationMethods publickey,keyboard-interactive
PermitRootLoginHäufig

Kontrollieren Sie die Root-Anmeldung: Ja, Passwort verbieten, nur erzwungene Befehle oder Nein. Testen Sie zunächst einen alternativen Administrator-Login.

Beispiel
PermitRootLogin no
PermitEmptyPasswords

Ermöglichen Sie Konten mit leeren Passwörtern die Authentifizierung mithilfe der Passwortauthentifizierung. Dies zu aktivieren ist unsicher.

Beispiel
PermitEmptyPasswords no
AuthorizedKeysFileHäufig

Pfade zu Dateien, die autorisierte öffentliche Schlüssel enthalten. Relative Pfade werden aus dem Home-Verzeichnis des Benutzers aufgelöst; Token werden unterstützt.

Beispiel
AuthorizedKeysFile .ssh/authorized_keys
StrictModesHäufig

Überprüfen Sie den Besitz und die Berechtigungen von Benutzerdateien und Home-Verzeichnissen, bevor Sie die Anmeldung akzeptieren.

Beispiel
StrictModes yes
AllowUsersHäufig

Nur die aufgelisteten Benutzernamenmuster zulassen; USER@HOST-Muster können den Ursprung einschränken. Darüber hinaus unterliegt der Kontozugriff weiteren Einschränkungen.

Beispiel
AllowUsers alice bob
DenyUsers

Verweigern Sie übereinstimmende Benutzernamenmuster. Verweigerungsregeln haben Vorrang vor entsprechenden Zulassungsregeln.

Beispiel
DenyUsers guest
AllowGroups

Lassen Sie nur Benutzer in übereinstimmenden benannten Gruppen zu, vorbehaltlich anderer Zugriffsregeln.

Beispiel
AllowGroups sshusers
DenyGroups

Verweigern Sie Benutzern übereinstimmende benannte Gruppen. Es werden Gruppennamen und keine numerischen IDs verwendet.

Beispiel
DenyGroups restricted
AllowTcpForwardingHäufig

Steuern Sie die TCP-Weiterleitung: Ja oder alle, Nein, lokal oder remote. Dies allein kann eine Weiterleitung durch Benutzer mit uneingeschränktem Shell-Zugriff nicht verhindern.

Beispiel
AllowTcpForwarding local
DisableForwarding

Deaktivieren Sie die Weiterleitungsfunktionen und überschreiben Sie andere Weiterleitungseinstellungen. Dadurch können Tunnel und Agent- oder X11-Weiterleitungen unterbrochen werden.

Beispiel
DisableForwarding yes
GatewayPortsHäufig

Steuern Sie die Remote-Weiterleitung an Bindungsadressen: „Nein“ bindet Loopback, „Ja“ bindet Platzhalter und „Clientspecified“ lässt vom Client ausgewählte Adressen zu. Das Offenlegen von Ports hat Auswirkungen auf die Sicherheit.

Beispiel
GatewayPorts no
PermitOpen

Beschränken Sie Ziele für die lokale TCP-Weiterleitung. Verwenden Sie Host:Port-Einträge, „any“ oder „none“. Namen werden für den Abgleich nicht aufgelöst.

Beispiel
PermitOpen db.example.com:5432
PermitListen

Beschränken Sie Abhöradressen und Ports für die Remote-Weiterleitung. GatewayPorts wirkt sich auch auf die Bindung aus.

Beispiel
PermitListen localhost:18080
AllowAgentForwarding

Erlauben Sie die Weiterleitung des SSH-Authentifizierungsagenten. Ein Remote-Prozess mit Zugriff auf den Agent-Socket kann Signaturen anfordern.

Beispiel
AllowAgentForwarding no
AllowStreamLocalForwarding

Steuern Sie die Unix-Domänen-Socket-Weiterleitung: Ja oder alle, Nein, lokal oder remote.

Beispiel
AllowStreamLocalForwarding no
X11Forwarding

Aktivieren Sie die X11-Anzeigeweiterleitung. Aktivieren Sie die Funktion nur dort, wo sie benötigt wird, und verstehen Sie das Risiko des Fernzugriffs auf die Anzeige.

Beispiel
X11Forwarding no
MaxAuthTriesHäufig

Maximale Authentifizierungsversuche pro Verbindung vor der Trennung. Der Server protokolliert Fehler möglicherweise früher.

Beispiel
MaxAuthTries 4
MaxSessionsHäufig

Maximale Shell-, Anmelde- oder Subsystemsitzungen pro SSH-Verbindung. Durch die Einstellung Null werden Sitzungen verhindert, die Weiterleitung kann jedoch weiterhin möglich sein.

Beispiel
MaxSessions 10
MaxStartupsHäufig

Beschränken Sie nicht authentifizierte Verbindungen. Das start:rate:full-Formular lehnt Verbindungen unter Last zunehmend ab.

Beispiel
MaxStartups 10:30:100
LoginGraceTimeHäufig

Für die Authentifizierung vorgesehene Zeit; Eine Dauer von Null bedeutet keine zeitliche Begrenzung.

Beispiel
LoginGraceTime 60s
ClientAliveIntervalHäufig

Intervall in Sekunden für verschlüsselte Client-Alive-Probes auf SSH-Ebene; Null deaktiviert diese Sonden.

Beispiel
ClientAliveInterval 30
ClientAliveCountMaxHäufig

Anzahl der unbeantworteten Client-Alive-Prüfungen auf SSH-Ebene, die toleriert werden, bevor die Verbindung getrennt wird. Verwendung mit ClientAliveInterval.

Beispiel
ClientAliveCountMax 3
TCPKeepAlive

Steuern Sie TCP-Keepalive-Nachrichten. Diese unterscheiden sich von verschlüsselten SSH-Client-Alive-Probes.

Beispiel
TCPKeepAlive yes
UsePAMHäufig

Aktivieren Sie die PAM-Integration für Builds, die sie unterstützen. Die PAM-Richtlinie und die verfügbaren Authentifizierungsmethoden variieren je nach System.

Beispiel
UsePAM yes
PermitTTY

Zuweisung eines Pseudo-Terminals zulassen. Die Deaktivierung wirkt sich auf interaktive Sitzungen aus.

Beispiel
PermitTTY yes
ForceCommand

Ersetzen Sie den angeforderten Befehl durch einen festen Befehl. Überprüfen Sie den Zugriff und die Einschränkungen sorgfältig, bevor Sie die Funktion aktivieren.

Beispiel
ForceCommand internal-sftp
SubsystemHäufig

Definieren Sie ein benanntes Subsystem und seinen Befehl. internal-sftp ist der integrierte SFTP-Server.

Beispiel
Subsystem sftp internal-sftp
ChrootDirectory

Beschränken Sie eine Sitzung nach der Authentifizierung auf ein Verzeichnis. Der Besitz und die Berechtigungen des Verzeichnisses werden streng überprüft. Bereitstellung erforderlicher Dateien für die geplante Sitzung.

Beispiel
ChrootDirectory /srv/sftp/%u
MatchHäufig

Starten Sie einen bedingten Block für übereinstimmende Benutzer, Gruppen, Adressen oder andere unterstützte Kriterien. Darin sind nur bestimmte Anweisungen zulässig.

Beispiel
Match User sftpuser
    ForceCommand internal-sftp
IncludeHäufig

Fügen Sie Konfigurationsdateien nach Pfad oder Glob hinzu. Die Reihenfolge ist wichtig, da im Allgemeinen der zuerst ermittelte Wert gilt.

Beispiel
Include /etc/ssh/sshd_config.d/*.conf
LogLevelHäufig

Legen Sie die Ausführlichkeit der Protokollierung fest, z. B. QUIET, FATAL, ERROR, INFO, VERBOSE oder DEBUG. Detaillierte Protokolle können vertrauliche Informationen preisgeben.

Beispiel
LogLevel INFO
SyslogFacility

Wählen Sie die Syslog-Funktion aus, die für SSH-Servernachrichten verwendet wird. Die Konfiguration der Systemprotokollierung bestimmt, wo sie angezeigt werden.

Beispiel
SyslogFacility AUTH
Banner

Senden Sie den Inhalt einer angegebenen Datei vor der Authentifizierung. Verwenden Sie „Keine“, um ein konfiguriertes Banner zu deaktivieren.

Beispiel
Banner /etc/issue.net
AcceptEnv

Benannte, vom Client bereitgestellte Umgebungsvariablen zulassen. Einige Variablen können eingeschränkte Umgebungen umgehen, also lassen Sie nur das zu, was benötigt wird.

Beispiel
AcceptEnv LANG LC_*
PermitUserEnvironment

Steuern Sie vom Benutzer bereitgestellte Umgebungseinstellungen. Durch ihre Aktivierung können Einschränkungen durch Umgebungsvariablen umgangen werden.

Beispiel
PermitUserEnvironment no
PrintMotd

Steuern Sie, ob sshd bei der interaktiven Anmeldung die Nachricht des Tages druckt. PAM oder ein anderer Dienst können es auch ausdrucken.

Beispiel
PrintMotd no
Compression

Komprimierung steuern. Die unterstützten Werte und das Timing variieren je nach OpenSSH-Version.

Beispiel
Compression no
RekeyLimit

Legen Sie den Datenschwellenwert und optional das Zeitintervall für die Neueingabe fest. Verwenden Sie für die Serverversion geeignete Werte.

Beispiel
RekeyLimit 1G 1h
Ciphers

Wählen Sie zulässige Verschlüsselungsalgorithmen aus. Das Ersetzen der Standardliste kann die Kompatibilität beeinträchtigen. Verwenden Sie ssh -Q cipher, um vom Client unterstützte Algorithmen zu überprüfen.

Beispiel
Ciphers aes256-gcm@openssh.com,aes128-gcm@openssh.com
KexAlgorithms

Wählen Sie Schlüsselaustauschalgorithmen aus. Das Einschränken dieser Liste kann dazu führen, dass Clients beschädigt werden. Überprüfen Sie die Unterstützung auf beiden Seiten.

Beispiel
KexAlgorithms curve25519-sha256
PubkeyAcceptedAlgorithms

Wählen Sie zulässige Public-Key-Signaturalgorithmen für die Benutzerauthentifizierung aus. Überprüfen Sie die Kompatibilität, bevor Sie die Standardliste ändern.

Beispiel
PubkeyAcceptedAlgorithms ssh-ed25519
HostKeyAlgorithms

Wählen Sie die vom Server angebotenen Hostschlüssel-Signaturalgorithmen aus. Der konfigurierte Hostschlüssel muss den gewählten Algorithmus unterstützen.

Beispiel
HostKeyAlgorithms ssh-ed25519
TrustedUserCAKeys

Datei mit öffentlichen Schlüsseln vertrauenswürdiger Benutzerzertifizierungsstellen für die Zertifikatauthentifizierung.

Beispiel
TrustedUserCAKeys /etc/ssh/user_ca.pub
RevokedKeys

Datei, die widerrufene öffentliche Schlüssel oder eine Schlüsselwiderrufsliste enthält. Eine fehlende oder nicht lesbare konfigurierte Datei kann die Authentifizierung mit öffentlichem Schlüssel verhindern.

Beispiel
RevokedKeys /etc/ssh/revoked_keys
AuthorizedPrincipalsFile

Datei listet Prinzipale auf, die für ein von einer vertrauenswürdigen Zertifizierungsstelle signiertes Benutzerzertifikat zulässig sind. Token-Erweiterung wird unterstützt.

Beispiel
AuthorizedPrincipalsFile /etc/ssh/auth_principals/%u
VersionAddendum

Text an das SSH-Protokoll-Banner anhängen; none deaktiviert den hinzugefügten Text.

Beispiel
VersionAddendum none
AuthorizedKeysCommand

Führen Sie ein vertrauenswürdiges Root-Programm aus, um öffentliche Schlüssel zu erhalten. Konfigurieren Sie das Ausführungskonto und befolgen Sie die Eigentumsvoraussetzungen im Handbuch.

Beispiel
AuthorizedKeysCommand /usr/local/libexec/ssh-keys %u
AuthorizedKeysCommandUser

Konto, das zum Ausführen von AuthorizedKeysCommand verwendet wird; Ein dediziertes Konto wird empfohlen.

Beispiel
AuthorizedKeysCommandUser sshkeys
AuthorizedPrincipalsCommand

Führen Sie ein vertrauenswürdiges Programm aus, um zulässige Zertifikatsprinzipale zu erhalten. Konfigurieren Sie das Ausführungskonto separat.

Beispiel
AuthorizedPrincipalsCommand /usr/local/libexec/ssh-principals %u
AuthorizedPrincipalsCommandUser

Konto, das zum Ausführen von AuthorizedPrincipalsCommand verwendet wird; Verwenden Sie ein dediziertes Konto.

Beispiel
AuthorizedPrincipalsCommandUser sshprincipals
CASignatureAlgorithms

Beschränken Sie die für SSH-Zertifikate akzeptierten Signaturalgorithmen der Zertifizierungsstelle. Überprüfen Sie vor Änderungen die Kompatibilität von Zertifizierungsstelle und Client.

Beispiel
CASignatureAlgorithms ssh-ed25519
ChannelTimeout

Inaktive Kanäle nach Kanaltyp und -dauer ablaufen lassen; Verfügbarkeit und unterstützte Kanaltypen hängen von der Version ab. Der Ablauf muss die SSH-Verbindung nicht beenden.

Beispiel
ChannelTimeout session=1h
ExposeAuthInfo

Authentifizierungsinformationen über eine temporäre Datei verfügbar machen, auf die von SSH_USER_AUTH verwiesen wird; Erwägen Sie den Zugriff auf Authentifizierungsdetails.

Beispiel
ExposeAuthInfo no
FingerprintHash

Wählen Sie den Hash aus, der für Schlüsselfingerabdrücke verwendet wird, z. B. sha256 oder md5. Bevorzugen Sie SHA-256.

Beispiel
FingerprintHash sha256
GSSAPIAuthentication

Steuern Sie die GSSAPI-Benutzerauthentifizierung, wenn dies vom Server-Build unterstützt wird.

Beispiel
GSSAPIAuthentication no
GSSAPICleanupCredentials

Steuern Sie, ob delegierte GSSAPI-Anmeldeinformationen beim Abmelden zerstört werden. Die Build-Unterstützung variiert.

Beispiel
GSSAPICleanupCredentials yes
GSSAPIDelegateCredentials

Steuern Sie das Speichern delegierter GSSAPI-Anmeldeinformationen für Benutzersitzungen, sofern dies unterstützt wird.

Beispiel
GSSAPIDelegateCredentials no
GSSAPIStrictAcceptorCheck

Steuern Sie, ob der Server die richtige GSSAPI-Hostidentität benötigt. Das Deaktivieren der Überprüfung hat Auswirkungen auf die Sicherheit.

Beispiel
GSSAPIStrictAcceptorCheck yes
HostbasedAcceptedAlgorithms

Wählen Sie Algorithmen aus, die für die hostbasierte Authentifizierung akzeptiert werden. Die Verfügbarkeit variiert je nach OpenSSH-Version.

Beispiel
HostbasedAcceptedAlgorithms ssh-ed25519
HostbasedAuthentication

Steuern Sie die hostbasierte Authentifizierung. es erfordert zusätzliche Vertrauens- und Hostkonfiguration.

Beispiel
HostbasedAuthentication no
HostbasedUsesNameFromPacketOnly

Steuern Sie, ob die hostbasierte Authentifizierung den vom Client bereitgestellten Namen anstelle von DNS verwendet. Überprüfen Sie die Auswirkungen auf das Vertrauen.

Beispiel
HostbasedUsesNameFromPacketOnly no
HostKeyAgent

Geben Sie den Agent-Socket an, der für den Zugriff auf private Hostschlüssel verwendet wird. Der Agent und sein Socket müssen für sshd verfügbar sein.

Beispiel
HostKeyAgent /run/ssh-hostkey-agent.sock
IgnoreRhosts

Kontrollieren Sie die Verwendung von rhosts- oder shosts-Dateien pro Benutzer für die hostbasierte Authentifizierung. Die akzeptierten Werte variieren je nach Version.

Beispiel
IgnoreRhosts yes
IgnoreUserKnownHosts

Steuern Sie, ob benutzerspezifische „known_hosts“-Dateien während der hostbasierten Authentifizierung ignoriert werden.

Beispiel
IgnoreUserKnownHosts yes
KerberosAuthentication

Steuern Sie die Kerberos-Passwortauthentifizierung, wenn Sie sie mit Kerberos-Unterstützung erstellen und konfigurieren.

Beispiel
KerberosAuthentication no
KerberosGetAFSToken

Steuern Sie den Erhalt eines AFS-Tokens für einen Kerberos-authentifizierten Benutzer, sofern der Build dies unterstützt.

Beispiel
KerberosGetAFSToken no
KerberosOrLocalPasswd

Steuern Sie, ob die fehlgeschlagene Kerberos-Passwortvalidierung auf die lokale Passwortauthentifizierung zurückgreift.

Beispiel
KerberosOrLocalPasswd no
KerberosTicketCleanup

Steuern Sie das Entfernen des Kerberos-Ticketcaches eines Benutzers beim Abmelden, sofern dies unterstützt wird.

Beispiel
KerberosTicketCleanup yes
LogVerbose

Überschreiben Sie die Ausführlichkeit der Protokollierung für übereinstimmende Quellorte. Es dient der Fehlerbehebung und kann vertrauliche Informationen preisgeben.

Beispiel
LogVerbose kex.c:*:1000
ModuliFile

Pfad zur Moduli-Datei, die für den Diffie-Hellman-Gruppenaustausch verwendet wird; Pflegen Sie es gemäß den Plattformrichtlinien.

Beispiel
ModuliFile /etc/ssh/moduli
PAMServiceName

Wählen Sie den PAM-Dienstnamen für Builds aus, die diese Anweisung unterstützen. Für den ausgewählten Dienst muss eine PAM-Richtlinie vorhanden sein.

Beispiel
PAMServiceName sshd
PermitTunnel

Steuern Sie die Geräteweiterleitung: Ja, Punkt-zu-Punkt, Ethernet oder Nein. Möglicherweise sind zusätzliche Systemrechte und Konfiguration erforderlich.

Beispiel
PermitTunnel no
PermitUserRC

Steuern Sie die Ausführung der SSH-RC-Datei des Benutzers. Die Deaktivierung kann sich auf die Einrichtung der Benutzersitzung auswirken.

Beispiel
PermitUserRC no
PerSourceMaxStartups

Begrenzen Sie gleichzeitige nicht authentifizierte Verbindungen pro Quelladresse oder Quellgruppe. Die Versionsunterstützung variiert.

Beispiel
PerSourceMaxStartups 10
PerSourceNetBlockSize

Legen Sie die IPv4- und IPv6-Präfixlängen fest, die zum Gruppieren von Quellen für Verbindungslimits pro Quelle verwendet werden.

Beispiel
PerSourceNetBlockSize 32:128
PerSourcePenalties

Konfigurieren Sie Strafen für problematische Quellen. Die unterstützten Straftypen, Werte und Standardeinstellungen variieren je nach OpenSSH-Version.

Beispiel
PerSourcePenalties no
PerSourcePenaltyExemptList

Quelladressen oder CIDR-Bereiche auflisten, die von Strafen pro Quelle ausgenommen sind; Stellen Sie sicher, dass die Ausnahmen eng begrenzt sind.

Beispiel
PerSourcePenaltyExemptList 192.0.2.0/24
PidFile

Pfad zur Serverprozess-ID-Datei. Stellen Sie sicher, dass der Dienstmanager und die Berechtigungen mit diesem Pfad übereinstimmen.

Beispiel
PidFile /run/sshd.pid
PrintLastLog

Steuern Sie den Ausdruck der vorherigen Anmeldezeit für interaktive Anmeldungen. Die Verfügbarkeit hängt möglicherweise von der Plattformunterstützung ab.

Beispiel
PrintLastLog yes
PubkeyAuthOptions

Legen Sie Authentifizierungsoptionen mit öffentlichem Schlüssel fest, einschließlich Sicherheitsschlüssel-Berührungs- oder Verifizierungsanforderungen, sofern unterstützt.

Beispiel
PubkeyAuthOptions touch-required
RefuseConnection

Verweigern Sie eine Verbindung, normalerweise innerhalb eines Match-Blocks. Die Verfügbarkeit variiert je nach Version.

Beispiel
Match User blocked
    RefuseConnection yes
RequiredRSASize

Legen Sie die minimale RSA-Schlüsselgröße fest, die von sshd akzeptiert wird. Niedrigere Werte können die Sicherheit schwächen und einige Versionen erfordern ein Minimum.

Beispiel
RequiredRSASize 3072
RDomain

Wählen Sie eine Routing-Domäne für die Sitzung auf Plattformen aus, die Routing-Domänen unterstützen. Dies ist plattformspezifisch.

Beispiel
RDomain 1
SecurityKeyProvider

Pfad zu einer FIDO-Sicherheitsschlüssel-Middleware-Bibliothek; Wenn Sie es nicht aktivieren, wird die integrierte Unterstützung verwendet, sofern verfügbar.

Beispiel
SecurityKeyProvider /usr/local/lib/libsk-libfido2.so
SshdAuthPath

Pfad zum SSHD-Authentifizierungshilfsprogramm auf Versionen und Plattformen, die es unterstützen. Wird normalerweise vom Paket verwaltet.

Beispiel
SshdAuthPath /usr/libexec/sshd-auth
SshdSessionPath

Pfad zum SSHD-Sitzungshilfsprogramm auf Versionen und Plattformen, die es unterstützen. Wird normalerweise vom Paket verwaltet.

Beispiel
SshdSessionPath /usr/libexec/sshd-session
StreamLocalBindMask

Legen Sie die Erstellungsmaske für den Oktaldateimodus für einen Unix-Domänen-Weiterleitungssocket fest.

Beispiel
StreamLocalBindMask 0177
StreamLocalBindUnlink

Steuern Sie, ob ein vorhandener Unix-Domänen-Socket entfernt wird, bevor ein Weiterleitungs-Listener erstellt wird.

Beispiel
StreamLocalBindUnlink no
UnusedConnectionTimeout

Schließen Sie Verbindungen ohne offene Kanäle nach der angegebenen Zeit. Das betroffene Verhalten und die Verfügbarkeit variieren je nach Version.

Beispiel
UnusedConnectionTimeout 5m
X11DisplayOffset

Legen Sie die erste für die X11-Weiterleitung verfügbare Displaynummer fest.

Beispiel
X11DisplayOffset 10
X11UseLocalhost

Binden Sie den X11-Weiterleitungsserver an den Loopback, wenn er aktiviert ist. Durch Deaktivieren kann die Anzeige breiter angezeigt werden.

Beispiel
X11UseLocalhost yes
XAuthLocation

Pfad zum xauth-Programm, das ggf. für die X11-Weiterleitung verwendet wird.

Beispiel
XAuthLocation /usr/bin/xauth
IPQoS

Legen Sie IP-Quality-of-Service-Markierungen für interaktive und nicht interaktive Sitzungen fest. Netzwerkgeräte können diese Markierungen interpretieren oder ignorieren.

Beispiel
IPQoS lowdelay throughput
MACs

Wählen Sie Algorithmen für den Nachrichtenauthentifizierungscode aus. Das Ändern der Standardeinstellungen kann Auswirkungen auf die Sicherheit und Clientkompatibilität haben.

Beispiel
MACs hmac-sha2-256-etm@openssh.com
SetEnv

Legen Sie Umgebungsvariablen für untergeordnete Sitzungen fest. Diese Werte überschreiben Variablen, die von Clients oder Benutzerumgebungsdateien akzeptiert werden.

Beispiel
SetEnv LANG=en_US.UTF-8
UseDNS

Steuern Sie die Reverse-DNS-Suche und -Verifizierung für die Verbindung von Clients. Die Aktivierung kann zu Verzögerungen führen, wenn DNS langsam ist.

Beispiel
UseDNS no

Empfohlene Ausgangskonfiguration

Für Server mit geprüftem Schlüssel-Login, die keine interaktive Tastaturauthentifizierung benötigen. TCP-Weiterleitung bleibt für angemeldete Benutzer erlaubt; entfernte Listener binden nur an Loopback.

PubkeyAuthentication yes
PasswordAuthentication no
KbdInteractiveAuthentication no
PermitRootLogin no
PermitEmptyPasswords no
AllowTcpForwarding yes
GatewayPorts no

Dies deaktiviert Passwort- und interaktive Tastaturanmeldung, die PAM oder Einmalcodes einschließen kann. Prüfen Sie zuerst einen anderen Administratorzugang mit Schlüssel. AllowTcpForwarding yes erlaubt authentifizierten Benutzern Weiterleitungen; beschränken Sie den Zugriff nach Bedarf.

Lassen Sie die aktuelle Sitzung und einen Wiederherstellungsweg offen. Integrieren Sie die Werte in die bestehende Konfiguration: Include-Reihenfolge, frühere Werte und Match-Blöcke können das Ergebnis beeinflussen. Prüfen Sie mit sshd -t und sshd -T, für Match-Bedingungen mit sshd -T -C. Wenden Sie die Änderung über den Systemdienst an und prüfen Sie eine zweite Anmeldung, bevor Sie die erste Sitzung schließen.

Maßgebliche Quellen

Geprüft am 27. Oktober 2026