SSH Server: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 23: Zeile 23:
  
 
=== Starten / Stoppen ===
 
=== Starten / Stoppen ===
;Dienst starten
+
Dienst starten
'''systemctl start ssh'''    
+
'''systemctl start ssh'''  
systemctl stop ssh      # Dienst stoppen
+
Dienst stoppen    
systemctl restart ssh   # Dienst neu starten (z. B. nach Konfigurationsänderung)
+
'''systemctl stop ssh'''
 +
Dienst neu starten (z. B. nach Konfigurationsänderung)
 +
'''systemctl restart ssh''' 
  
 
'''Hinweis:''' <code>restart</code> trennt alle aktiven SSH-Verbindungen sofort.
 
'''Hinweis:''' <code>restart</code> trennt alle aktiven SSH-Verbindungen sofort.

Version vom 11. April 2026, 14:36 Uhr

SSH-Server

Der SSH-Server ermöglicht es, eingehende SSH-Verbindungen entgegenzunehmen. Unter Debian/Ubuntu läuft er als Systemdienst und wird über systemctl verwaltet.

Pakete

SSH besteht aus dem Metapaket
  • ssh
Dieses beinhaltet die Pakete
  • openssh-client – der SSH-Client (für ausgehende Verbindungen)
  • openssh-server – der SSH-Daemon (für eingehende Verbindungen)
  • openssh-sftp-server – SFTP-Subsystem für Dateiübertragungen

Installation:

apt install ssh

Dienstverwaltung

Der SSH-Server läuft als Systemdienst und wird über systemctl verwaltet. Für Logs wird journalctl verwendet.

Starten / Stoppen

Dienst starten systemctl start ssh Dienst stoppen systemctl stop ssh Dienst neu starten (z. B. nach Konfigurationsänderung) systemctl restart ssh

Hinweis: restart trennt alle aktiven SSH-Verbindungen sofort. Wer eingeloggte Sitzungen nicht unterbrechen will, verwendet stattdessen:

systemctl reload ssh     # Konfiguration neu laden ohne Verbindungen zu trennen

Autostart beim Systemstart

systemctl enable ssh     # SSH automatisch beim Booten starten
systemctl disable ssh    # Autostart deaktivieren

Status prüfen

systemctl status ssh

Zeigt ob der Dienst läuft, seit wann, die PID und die letzten Logzeilen.

Logs verfolgen

journalctl -fu ssh
  • -f – folgt dem Log in Echtzeit (wie tail -f)
  • -u ssh – filtert nur auf den SSH-Dienst

Nützlich zum Debuggen von fehlgeschlagenen Verbindungsversuchen oder Konfigurationsfehlern.

Nur die letzten 50 Zeilen anzeigen:

journalctl -u ssh -n 50

Logs eines bestimmten Zeitraums:

journalctl -u ssh --since "2025-04-01 00:00" --until "2025-04-01 23:59"

Konfigurationsverzeichnis

ls /etc/ssh
moduli               sshd_config.d            ssh_host_ed25519_key.pub
ssh_config           ssh_host_ecdsa_key        ssh_host_rsa_key
ssh_config.d         ssh_host_ecdsa_key.pub    ssh_host_rsa_key.pub
sshd_config          ssh_host_ed25519_key
Datei/Verzeichnis Bedeutung
sshd_config Hauptkonfiguration des SSH-Servers
sshd_config.d/ Optionale Drop-in-Konfigurationen (werden von sshd_config eingelesen)
ssh_config Systemweite Client-Konfiguration (gilt für alle Nutzer)
ssh_config.d/ Drop-ins für die systemweite Client-Konfiguration
moduli Parameter für den Diffie-Hellman-Schlüsselaustausch
ssh_host_*_key Private Host Keys des Servers (niemals weitergeben)
ssh_host_*_key.pub Öffentliche Host Keys (werden dem Client beim Verbindungsaufbau gezeigt)

Siehe auch