OpenSSH 10.1: Alles neu in Sachen Sicherheit, Vernetzung und Konfiguration

  • Warnungen und Unterstützung für Post-Quanten-Algorithmen mit WarnWeakCrypto.
  • QoS-Überprüfung: DSCP standardmäßig, EF für interaktiven Datenverkehr und ToS-Veraltung.
  • Betriebshärtung: Agent-Sockets in ~/.ssh/agent und Eingabefilter.
  • Praktische Verbesserungen: SIGINFO, RefuseConnection, PKCS#11 Ed25519 und wichtige Fehlerbehebungen.

OpenSSH 10.1

Über die Versionsbezeichnung hinaus OpenSSH 10.1 konsolidiert den mit der 10er-Serie begonnenen Weg: Migration zur Post-Quanten-Kryptographie, QoS-Modernisierung mit DSCP und Härtung historisch sensibler Bereiche (Agenten, Schlüssel, Register und Parameteranalyse). Nachfolgend finden Sie eine gründliche Überprüfung aller neuen Funktionen (mit Kontext, wo es einen Mehrwert bietet) sowie praktische Richtlinien für die Übernahme ohne Überraschungen.

Nachfolgend die Liste mit den Neuigkeiten in dieser Version, auch erhältlich in der offizielle Notizen.

Highlights und Kontext der Veröffentlichung

Die offizielle Veröffentlichung von OpenSSH 10.1 (06.10.2025) hebt drei Achsen hervor: Präventive Sicherheit gegen Quantenkryptografie, DSCP-Netzwerke und Eingabebereinigung. Es verbindet auch spezifische Änderungen mit hoher operativer Auswirkung: von Agent-Socket-Routen bis hin zu neue diagnostische Zeichen.

Eine wichtige Erinnerung an das Projekt: Eine zukünftige Version wird SHA‑1-basierte SSHFP-Protokolle ignorierenWährend ssh-keygen -r generiert jetzt standardmäßig nur SSHFP-Fingerabdrücke mit SHA‑256, die Tür für schwache Hashes schließen für DNSSEC und Host-Key-Verifizierung.

Warnung vor Nicht-Post-Quanten-Kryptografie und neue WarnWeakCrypto-Option

OpenSSH 10.1 führt eine Warnung ein, wenn die Verbindung einen Schlüsselaustausch aushandelt, der ist nicht resistent gegen Post-Quanten-AngriffeZiel ist es, sich auf das Risiko des „Jetzt speichern, später entschlüsseln“-Prinzips zu konzentrieren und den Übergang in sensiblen Umgebungen zu beschleunigen.

Dieses Verhalten wird kontrolliert mit WarnWeakCrypto (At ssh_config), die standardmäßig aktiviert ist. Wenn Sie eine schrittweise Migration durchführen oder Legacy-Hosts verwalten, Sie können die Warnung selektiv deaktivieren mit Match-Blöcken. Zum Beispiel:

Match-Host unsafe.example.com WarnWeakCrypto nein

Kryptographie und Stand der Technik: PQC, Hybride und SSHFP

In 10.0 wechselte der Client standardmäßig zur Verwendung mlkem768x25519‑sha256, ein hybrider Post-Quanten-Algorithmus, der kombiniert ML-KEM (KEM NIST FIPS 203) mit X25519. Diese Hybridstrategie stellt sicher, dass selbst wenn es auf der PQ-Seite zu einem kryptoanalytischen Durchbruch kommen sollte, Sie wären nicht schlechter dran als mit klassischem ECDH weil der Kanal die Stärke von X25519 behält.

Mit 10.1 wird zusätzlich zu der oben erläuterten Warnung der Übergang verstärkt: OpenSSH wird SSHFP mit SHA‑1 auch in Zukunft ignorieren.; das Werkzeug ssh-keygen gibt SSHFP bereits ausschließlich mit SHA‑256 aus. Operativ ist die empfohlene Aktion SSHFP-Fingerabdrücke in SHA‑256 neu generieren und veröffentlichen für Ihre Gastgeber.

Häufig gestellte Fragen: Warum jetzt darauf bestehen, wenn Quantencomputer SSH noch nicht knacken können? Denn Angreifer können heute Daten erfassen und morgen entschlüsseln. Der Einsatz von Post-Quantum-KEX mildert diesen Vektor bereits. Und wenn Sie sich Sorgen über die Jugend von PQ-Algorithmen machen, denken Sie daran: die Hybridmodalität behält das klassische Sicherheitsniveau als Basis bei.

Netzwerkmodernisierung: DSCP/IPQoS und Verkehrspriorisierung

Diese Version beinhaltet eine umfassende QoS-Überarbeitung. Sowohl auf dem Client als auch auf dem Server Interaktiver Datenverkehr wird standardmäßig der Klasse EF (Expedited Forwarding) zugewiesen., wodurch Latenzen bei WLAN und überlasteten Medien reduziert werden. Nicht-interaktiver Datenverkehr wird auf die Systemstandard-DSCP-Markierung, ohne die Priorität zu erhöhen.

In der Praxis ssh(1) und sshd(8) ändern sich dynamisch die verwendete Marke je nach Art der vorhandenen Kanäle: Wenn dieselbe Verbindung eine Shell und eine sftp, die nicht-interaktive Transferphase verwendet den nicht-interaktiven Wert während der Operation und kehrt gegebenenfalls zu EF zurück. Dies wird durch den Schlüssel gesteuert IPQoS en ssh_config y sshd_config.

Zusätzlich Die Unterstützung für ältere IPv4-Nutzungsbedingungen wird eingestellt in der IPQoS-Option (lowdelay, throughput, reliability keine Wirkung mehr). Wenn Sie sie noch verwenden, migriert zur DSCP-Nomenklatur (z.B., ef, cs0, af11, Etc.).

Eingabehärtung: Benutzer, URIs und Erweiterungen

Im Abschnitt Sicherheit behebt 10.1 einen subtilen Fall, in dem, wenn Sie Befehlszeilen mit externen Daten erstellt und gleichzeitig verwendet haben ProxyCommand mit %r/%u-Erweiterungenkönnte ein Angreifer Shell-Ausdrücke einschleusen. Um dies zu verhindern, ssh(1) verbietet nun Steuerzeichen in CLI-übergebenen oder erweiterten Benutzernund blockiert auch das Nullzeichen in URIs ssh://.

Hinweis zur Kompatibilität: Ein Validierungspunkt wurde gelockert, um die Verletzung legitimer Fälle zu vermeiden. In Konfigurationsdateien definierte wörtliche Benutzernamen (ohne %)-Erweiterungen sind ausgenommen, da die lokale Konfiguration als vertrauenswürdig gilt.

Live-Signale und Informationen: SIGINFO und Sichtbarkeit

Ein weiterer praktischer Debugging-Tipp: ssh(1) und sshd(8) erhalten SIGINFO-Handler die den Status aktiver Kanäle und Sitzungen aufzeichnen. In der Produktion erleichtert Flussdiagnose, Multiplexing, Weiterleitung und X11 ohne dass ein Debugger angeschlossen oder die Ausführlichkeit invasiv erhöht werden muss.

Im Sinne der Transparenz gilt: Wenn die Zertifikatsauthentifizierung fehlschlägt, sshd protokolliert jetzt genügend Informationen, um das Zertifikat zu identifizieren (sowie warum es abgelehnt wurde). Wenn Sie mit PKI und Benutzer-/Host-Zertifikaten arbeiten, ist diese Verbesserung verkürzt die Lösungszeiten erheblich.

SSH-Agent und Schlüssel: Sockets, Bereinigung und PKCS#11

Um den gegenseitigen Zugriff in Umgebungen mit eingeschränkter Montage von /tmp, die Agent-Sockets (und die weitergeleiteten von sshd) Ich weiss von /tmp nach ~/.ssh/agent verschieben. Ein Prozess mit eingeschränkten Berechtigungen auf /tmp erbt nicht mehr versehentlich die Fähigkeit, mit Ihren Schlüsseln vom Agenten zu signieren.

Diese Änderung hat eine weitere Folge: Früher konnte das Betriebssystem veraltete Sockets bereinigen, jetzt ssh‑agent verfügt über eine eigene Bereinigung von alten Sockets. Darüber hinaus fügt der Agent neue Flags hinzu: -U y -u zur Kontrolle der Sauberkeit beim Start, -uu den Hostnamen bei der Bereinigung zu ignorieren und -T den historischen Ort zu erzwingen /tmp wenn Sie es wirklich brauchen.

In der Schlüsselebene sind der Client und der Agent ED25519, gehostet auf PKCS#11-Token, wird jetzt unterstütztWenn Sie sich auf HSMs oder kryptografische Schlüssel verlassen, gewinnen Sie Flexibilität, ohne an Stärke einzubüßen.

ssh‑add und Zertifikate: Selbstreinigendes Ablaufdatum

Wenn Sie dem Agenten Zertifikate hinzufügen, Sein Ablauf ist nun mit einer Nachfrist von 5 Minuten festgelegtDie Idee ist einfach: Transaktionen in der Warteschlange abschließen und dann das Agentenzertifikat automatisch löschenWenn Ihr Flow die totale Kontrolle erfordert, ssh‑add -N Deaktivieren Sie dieses Verhalten.

RefuseConnection: clientseitig gesteuerte Verbindungsabbrüche

Es gibt Szenarien, in denen Sie eine Verbindung vom Client selbst mit einer klaren Meldung abbrechen möchten (zum Beispiel: Betriebsweiterleitungen oder Veraltungshinweise). OpenSSH 10.1 fügt hinzu Verbindung verweigern a ssh_config: Wenn während der Verarbeitung eines Hot Sections Folgendes auftritt, wird der Client mit einem Fehler beendet und zeigt den von Ihnen definierten Text an.

Codequalität und Live-Sicherheit

Das Team bereinigt weiterhin die Codebasis. 10.1 listet Speicherlecks behoben, Atomia-Verbesserungen beim Schreiben known_hosts mit hoher Besucherzahl und mehreren Race Conditions behoben in Prozessen wie MaxStartups oder X11-Sitzungen.

Ein Hinweis zur Krypto-Bereinigung: Unterstützung für XMSS wurde entfernt (experimentell und nie standardmäßig). Den Boden bereiten für Post-Quanten-Signaturschemata ausgereiftere, die in zukünftigen Versionen erscheinen werden.

Portabilität und Ökosystem: PAM, FreeBSD, macOS, Android …

Änderungen bei der Portabilität betreffen viele Fronten: zusätzliche Prüfungen in PAM-Umgebungen (z. B. Sicherstellung, dass der Benutzer während des Prozesses nicht wechselt), Integrationsverbesserungen mit FreeBSD (Tun-Weiterleitung und Kompatibilität), macOS (robuste Erkennung von Funktionen und Headern) und Android (Struktur passwd mit nicht-null Feldern).

Kompatibilitätsheader werden auch für Plattformen ohne bestimmte Standardbibliotheken hinzugefügt, wodurch die Anzahl der #ifdef dispergiert. Schließlich werden sie raffiniert Seccomp-Sandbox-Richtlinien unter Linux, um Systemaufrufe abzudecken wie futex_time64 in 32‑Bit, und Unterstützung wird hinzugefügt für AWS‑LC als Alternative zu OpenSSL/LibreSSL.

QoS in Aktion: Praktische Beispiele und IPQoS-Migration

Wenn Sie die alten ToS-Aliase verwendet haben (lowdelay, throughput…), jetzt werden sie ignoriert und Sie erhalten eine Debug-Meldung, die DSCP vorschlägt. Die typische Migration wäre von IPQoS lowdelay a IPQoS ef für interaktive Sitzungen; wenn Sie auch viel SFTP verwenden, könnten Sie Profile nach Übereinstimmung definieren en ssh_config/sshd_config um den Verkehr zu trennen.

Denken Sie daran, dass der Motor wählt und aktualisiert automatisch Es markiert in Echtzeit basierend auf offenen Kanälen, sodass OpenSSH den Großteil der Arbeit bereits für Sie erledigt.

OpenSSH 10.1 unter Linux installieren (Quelle)

Während Distributionen die Version integrieren, Sie können aus der offiziellen Quelle kompilieren. Laden Sie das Tarball von den Projektspiegeln herunter, entpacken Sie es und kompilieren Sie es:

tar -xvf openssh-10.1.tar.gz

Geben Sie das Verzeichnis ein und Präfixe und Konfigurationsrouten konfigurieren wenn Sie es brauchen. Zum Beispiel:

cd openssh-10.1 ./configure --prefix=/opt --sysconfdir=/etc/ssh

Kompilieren und installieren wie gewohnt (je nach Berechtigungen, ggf. mit Superuser):

um

make install

Aktivieren Sie OpenSSH unter Windows mit PowerShell

In modernen Windows-Umgebungen (Server 2019/Windows 10 1809+) Sie können den OpenSSH-Client und -Server als Systemfunktionen installieren.. Kapazitäten und Status prüfen:

Get-WindowsCapability-Online | Where-Object Name -like 'OpenSSH*'

Installieren der Komponenten wie Sie es brauchen:

Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0 Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

Starten und aktivieren Sie den SSH-Serverdienstund überprüfen Sie die eingehende Firewall-Regel:

Start-Service sshd Set-Service -Name sshd -StartupType 'Automatic' Get-NetFirewallRule -Name 'OpenSSH-Server-In-TCP' -ErrorAction SilentlyContinue

Um eine Verbindung von einem anderen Windows- oder Linux-Host herzustellen, verwenden Sie den Standardclient: ssh dominio\usuario@servidor. Beim ersten Zugriff akzeptiert den Host-Fingerabdruck und authentifizieren Sie sich mit Ihrem Passwort.

Betriebshandbuch: Diagnose und bewährte Verfahren

Für Umgebungen mit Benutzer-/Host-Zertifikaten, Profitieren Sie von der verbesserten Protokollierung von Ablehnungen in sshd zum Debuggen von CAs und Erweiterungen. Wenn eine Sitzung hängen bleibt oder Sie Multiplexing vermuten, startet SIGINFO zum Prozess der Auflistung aktiver Kanäle, ohne die globale Protokollebene zu erhöhen.

Wenn Sie auf Agenten angewiesen sind, überprüfen Sie, wo sich die Sockets jetzt befinden (~/.ssh/agent) Und automatische Reinigung aktivieren in Ihrem Bereitstellungsmodell. Erwägen Sie auf gemeinsam genutzten oder NFS-Arbeitsstationen die Verwendung des Agent-Flags, um bei Bedarf Hostnamen-Hashes im Pfad festzulegen.

Die wichtigsten Fehlerbehebungen

In 10.1 werden sie gelöst kleinere Regressionen in X11 in Kombination mit Herzfrequenzminderungen (ObscureKeystrokeTiming), ein Fall von Die schlechte Buchführung von MaxStartups das könnte Slots überfluten, und das Schreiben von known_hosts jetzt ist es geschafft in atomaren Operationen um verschachtelte Zeilen mit hoher Parallelität zu vermeiden.

Weitere Fixes verbessern Diagnose beim Laden von Schlüsseln, Handhabung von Konfigurationsgrößenbeschränkungen (von 256 KB bis 4 MB), Audit-Ausgabe und exotische Sonderfälle in lokalen Weiterleitungen und Steuersequenzen. Darüber hinaus werden Nachrichten und Ausgaben von ssh -G y sshd -T.

Empfohlene Migrationscheckliste

Diese kurze Liste Es umfasst die Aufgaben, die das Projekt selbst vorgibt und was sich aus den Änderungen ergibt:

  • Cripto: Überprüfen Sie, ob Ihr KexAlgorithms ermöglicht hybrides PQ und generiert neues SSHFP in SHA‑256 mit ssh-keygen -r.
  • QoS: überprüfen IPQoS auf Client/Server; Migration älterer ToS zu DSCP; Nutzung von EF für interaktive Sitzungen.
  • Kontakt: Passt Skripte und Variablen an Sockets an unter ~/.ssh/agent; legt Wert auf die automatische Reinigung durch den Agenten selbst.
  • Große Konfigurationen: Wenn Sie Massenkonfigurationen generieren, steigt das Limit auf 4 MB. wende es mit Bedacht an und steuert die Validierung.
  • Parser: Vermeiden Sie das Erstellen von Befehlszeilen aus nicht vertrauenswürdigen Eingaben. Verwenden Sie config Lokale mit Literalen, wenn die Benutzernamen Sonderfälle aufweisen.

Wer gemischte Flotten verwaltet, wird es zu schätzen wissen, dass 10.1 Drücken Sie die Sicherheit dort aus, wo es am wenigsten wehtut (Parser, Agenten, Warnungen) und gleichzeitig Verbessern Sie das tägliche Erlebnis (Dynamische QoS, SIGINFO, Zertifikatsprotokollierung). Wenn Sie bereits 10.0 verwendet haben, ist der Übergang unkompliziert. Wenn Sie von 9.x kommen, nehmen Sie sich die Zeit, DSCP zu optimieren, SSHFP auf SHA-256 zu regenerieren und hybride KEXs zu aktivieren, um sich vor der Quantenbedrohung zu schützen, ohne die Leistung zu beeinträchtigen.

openssh
Verwandte Artikel:
OpenSSH 9.0 kommt mit SFTP statt scp, Verbesserungen und mehr