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 -TOptionen und Beispiele
PortHäufigAbhörender TCP-Port; Mehrere Port-Anweisungen sind zulässig. Stellen Sie sicher, dass die Firewall und die Clients den gewählten Port zulassen.
Port 2222ListenAddressHäufigLokale Adresse, die sshd abhört. Eine Adresse kann einen Port enthalten; Stellen Sie sicher, dass es auf dem Server vorhanden ist.
ListenAddress 192.0.2.10AddressFamilyWählen Sie die Adressfamilie aus: beliebig, inet für IPv4 oder inet6 für IPv6.
AddressFamily inetHostKeyHäufigPfad zu einem privaten Server-Hostschlüssel; Dies ist nicht der Authentifizierungsschlüssel eines Benutzers. Schützen Sie die private Datei.
HostKey /etc/ssh/ssh_host_ed25519_keyHostCertificatePfad zu einem Server-Host-Zertifikat, das einem konfigurierten Host-Schlüssel entspricht.
HostCertificate /etc/ssh/ssh_host_ed25519_key-cert.pubPasswordAuthenticationHäufigPasswortauthentifizierung zulassen oder verweigern. Überprüfen Sie eine andere Anmeldemethode, bevor Sie sie deaktivieren.
PasswordAuthentication noPubkeyAuthenticationHäufigErlauben oder verweigern Sie die Authentifizierung mit öffentlichem Schlüssel. Serverberechtigungen und autorisierte Schlüssel gelten weiterhin.
PubkeyAuthentication yesKbdInteractiveAuthenticationHäufigTastaturinteraktive Authentifizierung zulassen. Die Eingabeaufforderungen und verfügbaren Methoden hängen vom Server und dem Authentifizierungs-Backend ab.
KbdInteractiveAuthentication yesAuthenticationMethodsHäufigErfordert eine der durch Leerzeichen getrennten Methodenlisten. Jede durch Kommas getrennte Methode in einer Liste muss erfolgreich sein. Jede Methode muss außerdem aktiviert sein.
AuthenticationMethods publickey,keyboard-interactivePermitRootLoginHäufigKontrollieren Sie die Root-Anmeldung: Ja, Passwort verbieten, nur erzwungene Befehle oder Nein. Testen Sie zunächst einen alternativen Administrator-Login.
PermitRootLogin noPermitEmptyPasswordsErmöglichen Sie Konten mit leeren Passwörtern die Authentifizierung mithilfe der Passwortauthentifizierung. Dies zu aktivieren ist unsicher.
PermitEmptyPasswords noAuthorizedKeysFileHäufigPfade zu Dateien, die autorisierte öffentliche Schlüssel enthalten. Relative Pfade werden aus dem Home-Verzeichnis des Benutzers aufgelöst; Token werden unterstützt.
AuthorizedKeysFile .ssh/authorized_keysStrictModesHäufigÜberprüfen Sie den Besitz und die Berechtigungen von Benutzerdateien und Home-Verzeichnissen, bevor Sie die Anmeldung akzeptieren.
StrictModes yesAllowUsersHäufigNur die aufgelisteten Benutzernamenmuster zulassen; USER@HOST-Muster können den Ursprung einschränken. Darüber hinaus unterliegt der Kontozugriff weiteren Einschränkungen.
AllowUsers alice bobDenyUsersVerweigern Sie übereinstimmende Benutzernamenmuster. Verweigerungsregeln haben Vorrang vor entsprechenden Zulassungsregeln.
DenyUsers guestAllowGroupsLassen Sie nur Benutzer in übereinstimmenden benannten Gruppen zu, vorbehaltlich anderer Zugriffsregeln.
AllowGroups sshusersDenyGroupsVerweigern Sie Benutzern übereinstimmende benannte Gruppen. Es werden Gruppennamen und keine numerischen IDs verwendet.
DenyGroups restrictedAllowTcpForwardingHäufigSteuern 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.
AllowTcpForwarding localDisableForwardingDeaktivieren Sie die Weiterleitungsfunktionen und überschreiben Sie andere Weiterleitungseinstellungen. Dadurch können Tunnel und Agent- oder X11-Weiterleitungen unterbrochen werden.
DisableForwarding yesGatewayPortsHäufigSteuern 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.
GatewayPorts noPermitOpenBeschrä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.
PermitOpen db.example.com:5432PermitListenBeschränken Sie Abhöradressen und Ports für die Remote-Weiterleitung. GatewayPorts wirkt sich auch auf die Bindung aus.
PermitListen localhost:18080AllowAgentForwardingErlauben Sie die Weiterleitung des SSH-Authentifizierungsagenten. Ein Remote-Prozess mit Zugriff auf den Agent-Socket kann Signaturen anfordern.
AllowAgentForwarding noAllowStreamLocalForwardingSteuern Sie die Unix-Domänen-Socket-Weiterleitung: Ja oder alle, Nein, lokal oder remote.
AllowStreamLocalForwarding noX11ForwardingAktivieren 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.
X11Forwarding noMaxAuthTriesHäufigMaximale Authentifizierungsversuche pro Verbindung vor der Trennung. Der Server protokolliert Fehler möglicherweise früher.
MaxAuthTries 4MaxSessionsHäufigMaximale Shell-, Anmelde- oder Subsystemsitzungen pro SSH-Verbindung. Durch die Einstellung Null werden Sitzungen verhindert, die Weiterleitung kann jedoch weiterhin möglich sein.
MaxSessions 10MaxStartupsHäufigBeschränken Sie nicht authentifizierte Verbindungen. Das start:rate:full-Formular lehnt Verbindungen unter Last zunehmend ab.
MaxStartups 10:30:100LoginGraceTimeHäufigFür die Authentifizierung vorgesehene Zeit; Eine Dauer von Null bedeutet keine zeitliche Begrenzung.
LoginGraceTime 60sClientAliveIntervalHäufigIntervall in Sekunden für verschlüsselte Client-Alive-Probes auf SSH-Ebene; Null deaktiviert diese Sonden.
ClientAliveInterval 30ClientAliveCountMaxHäufigAnzahl der unbeantworteten Client-Alive-Prüfungen auf SSH-Ebene, die toleriert werden, bevor die Verbindung getrennt wird. Verwendung mit ClientAliveInterval.
ClientAliveCountMax 3TCPKeepAliveSteuern Sie TCP-Keepalive-Nachrichten. Diese unterscheiden sich von verschlüsselten SSH-Client-Alive-Probes.
TCPKeepAlive yesUsePAMHäufigAktivieren Sie die PAM-Integration für Builds, die sie unterstützen. Die PAM-Richtlinie und die verfügbaren Authentifizierungsmethoden variieren je nach System.
UsePAM yesPermitTTYZuweisung eines Pseudo-Terminals zulassen. Die Deaktivierung wirkt sich auf interaktive Sitzungen aus.
PermitTTY yesForceCommandErsetzen Sie den angeforderten Befehl durch einen festen Befehl. Überprüfen Sie den Zugriff und die Einschränkungen sorgfältig, bevor Sie die Funktion aktivieren.
ForceCommand internal-sftpSubsystemHäufigDefinieren Sie ein benanntes Subsystem und seinen Befehl. internal-sftp ist der integrierte SFTP-Server.
Subsystem sftp internal-sftpChrootDirectoryBeschrä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.
ChrootDirectory /srv/sftp/%uMatchHäufigStarten Sie einen bedingten Block für übereinstimmende Benutzer, Gruppen, Adressen oder andere unterstützte Kriterien. Darin sind nur bestimmte Anweisungen zulässig.
Match User sftpuser
ForceCommand internal-sftpIncludeHäufigFügen Sie Konfigurationsdateien nach Pfad oder Glob hinzu. Die Reihenfolge ist wichtig, da im Allgemeinen der zuerst ermittelte Wert gilt.
Include /etc/ssh/sshd_config.d/*.confLogLevelHäufigLegen Sie die Ausführlichkeit der Protokollierung fest, z. B. QUIET, FATAL, ERROR, INFO, VERBOSE oder DEBUG. Detaillierte Protokolle können vertrauliche Informationen preisgeben.
LogLevel INFOSyslogFacilityWählen Sie die Syslog-Funktion aus, die für SSH-Servernachrichten verwendet wird. Die Konfiguration der Systemprotokollierung bestimmt, wo sie angezeigt werden.
SyslogFacility AUTHBannerSenden Sie den Inhalt einer angegebenen Datei vor der Authentifizierung. Verwenden Sie „Keine“, um ein konfiguriertes Banner zu deaktivieren.
Banner /etc/issue.netAcceptEnvBenannte, vom Client bereitgestellte Umgebungsvariablen zulassen. Einige Variablen können eingeschränkte Umgebungen umgehen, also lassen Sie nur das zu, was benötigt wird.
AcceptEnv LANG LC_*PermitUserEnvironmentSteuern Sie vom Benutzer bereitgestellte Umgebungseinstellungen. Durch ihre Aktivierung können Einschränkungen durch Umgebungsvariablen umgangen werden.
PermitUserEnvironment noPrintMotdSteuern Sie, ob sshd bei der interaktiven Anmeldung die Nachricht des Tages druckt. PAM oder ein anderer Dienst können es auch ausdrucken.
PrintMotd noCompressionKomprimierung steuern. Die unterstützten Werte und das Timing variieren je nach OpenSSH-Version.
Compression noRekeyLimitLegen Sie den Datenschwellenwert und optional das Zeitintervall für die Neueingabe fest. Verwenden Sie für die Serverversion geeignete Werte.
RekeyLimit 1G 1hCiphersWä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.
Ciphers aes256-gcm@openssh.com,aes128-gcm@openssh.comKexAlgorithmsWä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.
KexAlgorithms curve25519-sha256PubkeyAcceptedAlgorithmsWählen Sie zulässige Public-Key-Signaturalgorithmen für die Benutzerauthentifizierung aus. Überprüfen Sie die Kompatibilität, bevor Sie die Standardliste ändern.
PubkeyAcceptedAlgorithms ssh-ed25519HostKeyAlgorithmsWählen Sie die vom Server angebotenen Hostschlüssel-Signaturalgorithmen aus. Der konfigurierte Hostschlüssel muss den gewählten Algorithmus unterstützen.
HostKeyAlgorithms ssh-ed25519TrustedUserCAKeysDatei mit öffentlichen Schlüsseln vertrauenswürdiger Benutzerzertifizierungsstellen für die Zertifikatauthentifizierung.
TrustedUserCAKeys /etc/ssh/user_ca.pubRevokedKeysDatei, 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.
RevokedKeys /etc/ssh/revoked_keysAuthorizedPrincipalsFileDatei listet Prinzipale auf, die für ein von einer vertrauenswürdigen Zertifizierungsstelle signiertes Benutzerzertifikat zulässig sind. Token-Erweiterung wird unterstützt.
AuthorizedPrincipalsFile /etc/ssh/auth_principals/%uVersionAddendumText an das SSH-Protokoll-Banner anhängen; none deaktiviert den hinzugefügten Text.
VersionAddendum noneAuthorizedKeysCommandFü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.
AuthorizedKeysCommand /usr/local/libexec/ssh-keys %uAuthorizedKeysCommandUserKonto, das zum Ausführen von AuthorizedKeysCommand verwendet wird; Ein dediziertes Konto wird empfohlen.
AuthorizedKeysCommandUser sshkeysAuthorizedPrincipalsCommandFühren Sie ein vertrauenswürdiges Programm aus, um zulässige Zertifikatsprinzipale zu erhalten. Konfigurieren Sie das Ausführungskonto separat.
AuthorizedPrincipalsCommand /usr/local/libexec/ssh-principals %uAuthorizedPrincipalsCommandUserKonto, das zum Ausführen von AuthorizedPrincipalsCommand verwendet wird; Verwenden Sie ein dediziertes Konto.
AuthorizedPrincipalsCommandUser sshprincipalsCASignatureAlgorithmsBeschränken Sie die für SSH-Zertifikate akzeptierten Signaturalgorithmen der Zertifizierungsstelle. Überprüfen Sie vor Änderungen die Kompatibilität von Zertifizierungsstelle und Client.
CASignatureAlgorithms ssh-ed25519ChannelTimeoutInaktive 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.
ChannelTimeout session=1hExposeAuthInfoAuthentifizierungsinformationen über eine temporäre Datei verfügbar machen, auf die von SSH_USER_AUTH verwiesen wird; Erwägen Sie den Zugriff auf Authentifizierungsdetails.
ExposeAuthInfo noFingerprintHashWählen Sie den Hash aus, der für Schlüsselfingerabdrücke verwendet wird, z. B. sha256 oder md5. Bevorzugen Sie SHA-256.
FingerprintHash sha256GSSAPIAuthenticationSteuern Sie die GSSAPI-Benutzerauthentifizierung, wenn dies vom Server-Build unterstützt wird.
GSSAPIAuthentication noGSSAPICleanupCredentialsSteuern Sie, ob delegierte GSSAPI-Anmeldeinformationen beim Abmelden zerstört werden. Die Build-Unterstützung variiert.
GSSAPICleanupCredentials yesGSSAPIDelegateCredentialsSteuern Sie das Speichern delegierter GSSAPI-Anmeldeinformationen für Benutzersitzungen, sofern dies unterstützt wird.
GSSAPIDelegateCredentials noGSSAPIStrictAcceptorCheckSteuern Sie, ob der Server die richtige GSSAPI-Hostidentität benötigt. Das Deaktivieren der Überprüfung hat Auswirkungen auf die Sicherheit.
GSSAPIStrictAcceptorCheck yesHostbasedAcceptedAlgorithmsWählen Sie Algorithmen aus, die für die hostbasierte Authentifizierung akzeptiert werden. Die Verfügbarkeit variiert je nach OpenSSH-Version.
HostbasedAcceptedAlgorithms ssh-ed25519HostbasedAuthenticationSteuern Sie die hostbasierte Authentifizierung. es erfordert zusätzliche Vertrauens- und Hostkonfiguration.
HostbasedAuthentication noHostbasedUsesNameFromPacketOnlySteuern Sie, ob die hostbasierte Authentifizierung den vom Client bereitgestellten Namen anstelle von DNS verwendet. Überprüfen Sie die Auswirkungen auf das Vertrauen.
HostbasedUsesNameFromPacketOnly noHostKeyAgentGeben 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.
HostKeyAgent /run/ssh-hostkey-agent.sockIgnoreRhostsKontrollieren Sie die Verwendung von rhosts- oder shosts-Dateien pro Benutzer für die hostbasierte Authentifizierung. Die akzeptierten Werte variieren je nach Version.
IgnoreRhosts yesIgnoreUserKnownHostsSteuern Sie, ob benutzerspezifische „known_hosts“-Dateien während der hostbasierten Authentifizierung ignoriert werden.
IgnoreUserKnownHosts yesKerberosAuthenticationSteuern Sie die Kerberos-Passwortauthentifizierung, wenn Sie sie mit Kerberos-Unterstützung erstellen und konfigurieren.
KerberosAuthentication noKerberosGetAFSTokenSteuern Sie den Erhalt eines AFS-Tokens für einen Kerberos-authentifizierten Benutzer, sofern der Build dies unterstützt.
KerberosGetAFSToken noKerberosOrLocalPasswdSteuern Sie, ob die fehlgeschlagene Kerberos-Passwortvalidierung auf die lokale Passwortauthentifizierung zurückgreift.
KerberosOrLocalPasswd noKerberosTicketCleanupSteuern Sie das Entfernen des Kerberos-Ticketcaches eines Benutzers beim Abmelden, sofern dies unterstützt wird.
KerberosTicketCleanup yesLogVerboseÜberschreiben Sie die Ausführlichkeit der Protokollierung für übereinstimmende Quellorte. Es dient der Fehlerbehebung und kann vertrauliche Informationen preisgeben.
LogVerbose kex.c:*:1000ModuliFilePfad zur Moduli-Datei, die für den Diffie-Hellman-Gruppenaustausch verwendet wird; Pflegen Sie es gemäß den Plattformrichtlinien.
ModuliFile /etc/ssh/moduliPAMServiceNameWä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.
PAMServiceName sshdPermitTunnelSteuern Sie die Geräteweiterleitung: Ja, Punkt-zu-Punkt, Ethernet oder Nein. Möglicherweise sind zusätzliche Systemrechte und Konfiguration erforderlich.
PermitTunnel noPermitUserRCSteuern Sie die Ausführung der SSH-RC-Datei des Benutzers. Die Deaktivierung kann sich auf die Einrichtung der Benutzersitzung auswirken.
PermitUserRC noPerSourceMaxStartupsBegrenzen Sie gleichzeitige nicht authentifizierte Verbindungen pro Quelladresse oder Quellgruppe. Die Versionsunterstützung variiert.
PerSourceMaxStartups 10PerSourceNetBlockSizeLegen Sie die IPv4- und IPv6-Präfixlängen fest, die zum Gruppieren von Quellen für Verbindungslimits pro Quelle verwendet werden.
PerSourceNetBlockSize 32:128PerSourcePenaltiesKonfigurieren Sie Strafen für problematische Quellen. Die unterstützten Straftypen, Werte und Standardeinstellungen variieren je nach OpenSSH-Version.
PerSourcePenalties noPerSourcePenaltyExemptListQuelladressen oder CIDR-Bereiche auflisten, die von Strafen pro Quelle ausgenommen sind; Stellen Sie sicher, dass die Ausnahmen eng begrenzt sind.
PerSourcePenaltyExemptList 192.0.2.0/24PidFilePfad zur Serverprozess-ID-Datei. Stellen Sie sicher, dass der Dienstmanager und die Berechtigungen mit diesem Pfad übereinstimmen.
PidFile /run/sshd.pidPrintLastLogSteuern Sie den Ausdruck der vorherigen Anmeldezeit für interaktive Anmeldungen. Die Verfügbarkeit hängt möglicherweise von der Plattformunterstützung ab.
PrintLastLog yesPubkeyAuthOptionsLegen Sie Authentifizierungsoptionen mit öffentlichem Schlüssel fest, einschließlich Sicherheitsschlüssel-Berührungs- oder Verifizierungsanforderungen, sofern unterstützt.
PubkeyAuthOptions touch-requiredRefuseConnectionVerweigern Sie eine Verbindung, normalerweise innerhalb eines Match-Blocks. Die Verfügbarkeit variiert je nach Version.
Match User blocked
RefuseConnection yesRequiredRSASizeLegen 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.
RequiredRSASize 3072RDomainWählen Sie eine Routing-Domäne für die Sitzung auf Plattformen aus, die Routing-Domänen unterstützen. Dies ist plattformspezifisch.
RDomain 1SecurityKeyProviderPfad zu einer FIDO-Sicherheitsschlüssel-Middleware-Bibliothek; Wenn Sie es nicht aktivieren, wird die integrierte Unterstützung verwendet, sofern verfügbar.
SecurityKeyProvider /usr/local/lib/libsk-libfido2.soSshdAuthPathPfad zum SSHD-Authentifizierungshilfsprogramm auf Versionen und Plattformen, die es unterstützen. Wird normalerweise vom Paket verwaltet.
SshdAuthPath /usr/libexec/sshd-authSshdSessionPathPfad zum SSHD-Sitzungshilfsprogramm auf Versionen und Plattformen, die es unterstützen. Wird normalerweise vom Paket verwaltet.
SshdSessionPath /usr/libexec/sshd-sessionStreamLocalBindMaskLegen Sie die Erstellungsmaske für den Oktaldateimodus für einen Unix-Domänen-Weiterleitungssocket fest.
StreamLocalBindMask 0177StreamLocalBindUnlinkSteuern Sie, ob ein vorhandener Unix-Domänen-Socket entfernt wird, bevor ein Weiterleitungs-Listener erstellt wird.
StreamLocalBindUnlink noUnusedConnectionTimeoutSchließen Sie Verbindungen ohne offene Kanäle nach der angegebenen Zeit. Das betroffene Verhalten und die Verfügbarkeit variieren je nach Version.
UnusedConnectionTimeout 5mX11DisplayOffsetLegen Sie die erste für die X11-Weiterleitung verfügbare Displaynummer fest.
X11DisplayOffset 10X11UseLocalhostBinden Sie den X11-Weiterleitungsserver an den Loopback, wenn er aktiviert ist. Durch Deaktivieren kann die Anzeige breiter angezeigt werden.
X11UseLocalhost yesXAuthLocationPfad zum xauth-Programm, das ggf. für die X11-Weiterleitung verwendet wird.
XAuthLocation /usr/bin/xauthIPQoSLegen Sie IP-Quality-of-Service-Markierungen für interaktive und nicht interaktive Sitzungen fest. Netzwerkgeräte können diese Markierungen interpretieren oder ignorieren.
IPQoS lowdelay throughputMACsWählen Sie Algorithmen für den Nachrichtenauthentifizierungscode aus. Das Ändern der Standardeinstellungen kann Auswirkungen auf die Sicherheit und Clientkompatibilität haben.
MACs hmac-sha2-256-etm@openssh.comSetEnvLegen Sie Umgebungsvariablen für untergeordnete Sitzungen fest. Diese Werte überschreiben Variablen, die von Clients oder Benutzerumgebungsdateien akzeptiert werden.
SetEnv LANG=en_US.UTF-8UseDNSSteuern 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.
UseDNS noEmpfohlene 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 noDies 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