Bitte verwenden sie die "Drucken" Funktion am Seitenende, um ein PDF zu erstellen.
Für VPS+, VPS, Cloud Server, Dedicated Server und Bare Metal Server mit AlmaLinux 9, AlmaLinux 10, Rocky Linux 9, Rocky Linux 10, Ubuntu 24.04, Ubuntu 26.04, Debian 12 und Debian 13
In diesem Artikel wird erklärt, wie Sie den Standard-SSH-Port ändern, um die Sicherheit Ihres Servers zu erhöhen.
Standardmäßig ist der Port 22 für den Aufbau einer SSH-Verbindung vorgesehen. Dieser Port wird während der Installation Ihres Betriebssystems automatisch eingetragen.
Um die Zahl der Brute-Force-Angriffe zu reduzieren, können Sie einen anderen Port für den SSH-Zugriff konfigurieren.
Achtung
Stellen Sie vor der Änderung des Ports sicher, dass die auf dem Server installierten Anwendungen und Dienste auch mit einem benutzerdefinierten Port konfiguriert werden können. Anderenfalls kann eine Änderung des Standardports dazu führen, dass diese Anwendungen und Dienste nicht mehr funktionieren.
Stellen Sie außerdem vor der Änderung des Ports sicher, dass der von Ihnen gewählte Port in der Firewall freigegeben ist. Dies gilt auch für die Firewall-Richtlinie, die dem Server im Cloud Panel zugewiesen ist.
SSH-Port unter Ubuntu 24.04 und 26.04 ändern
So ändern Sie den SSH-Port:
Loggen Sie sich auf dem Server als Administrator ein.
Öffnen Sie die SSH-Konfigurationsdatei sshd_config mit dem Texteditor vi:
vi /etc/ssh/sshd_config
Suchen Sie den Eintrag Port 22.
Entfernen Sie das Zeichen #. Ersetzen Sie den Port 22 durch einen Port im Bereich von 1024 bis 65535.
Hinweis
Der Editor vi verfügt über einen Einfügemodus und einen Befehls- oder Kommandomodus. Den Einfügemodus können Sie mit der Taste [i] aufrufen. In diesem Modus werden die eingegebenen Zeichen sofort in den Text eingefügt. Um den Befehlsmodus aufzurufen, drücken Sie anschließend [ESC]. Wenn Sie den Befehlsmodus nutzen, werden Ihre Tastatureingaben als Befehl interpretiert.
Achtung
Stellen Sie sicher, dass der gewählte Port nicht für andere Dienste verwendet wird. Dies können Sie mithilfe der folgenden Portliste tun, die von der Internet Assigned Numbers Authority (IANA) zur Verfügung gestellt wird: Service Name and Transport Protocol Port Number Registry
Alternativ können Sie die Auflistung der Ports in der Datei /etc/services einsehen.
Um vi zu beenden und die Datei zu speichern, geben Sie den Befehl :wq ein und drücken Sie anschließend die Eingabetaste.
Führen Sie den Befehl zum Erstellen einer Override-Datei aus. Es öffnet sich der Editor nano.
sudo systemctl edit ssh.socket
Geben Sie im Bereich ### Anything between here and the comment below will become the contents of the drop-in file die folgenden Informationen ein:
[Socket]
ListenStream=
ListenStream=0.0.0.0:NEUER_PORT
ListenStream=[::]:NEUER_PORTBeispiel:
[Socket]
ListenStream=
ListenStream=0.0.0.0:2222
ListenStream=[::]:2222
Hinweis
Die erste leere Zeile ListenStream= ist wichtig, um den Standardport 22 zu deaktivieren.
- Um die Änderung zu speichern, drücken Sie die Tastenkombination Strg+O und anschließend die Eingabetaste.
- Um den Editor nano zu schließen, drücken Strg+X.
- Speichern und schließen Sie den Editor. Sollte die Abfrage Save modified buffer angezeigt werden, geben Sie Y ein und drücken Sie die Eingabetaste.
Um die systemd-Konfiguration neu zu laden und den Socket-Dienst neu zu starten, geben Sie den folgenden Befehl ein:
sudo systemctl daemon-reload
sudo systemctl stop ssh.service
sudo systemctl restart ssh.socket
Vorsicht
Lassen Sie Ihre aktuelle SSH-Sitzung unbedingt geöffnet!
Um den neuen Port in der UFW-Firewall freizuschalten, passen Sie die folgenden Befehle an und geben Sie diese anschließend ein:
sudo ufw allow PORTtcp
sudo ufw reloadBeispiel:
sudo ufw allow 22222/tcp
sudo ufw reloadUm zu prüfen, ob der Port geändert wurde, geben Sie den folgenden Befehl ein:
ss -lntp | grep :22
Sollte die Fehlermeldung "Connection refused" angezeigt werden, starten Sie den Server neu.
Testen Sie die Verbindung in einem neuen Terminal-Fenster. Geben Sie zu diesem Zweck den folgenden Befehl ein:
ssh benutzername@ihre-ip-adresse -p 2222
SSH-Port unter Rocky Linux 8, Rocky Linux 9, AlmaLinux 8, AlmaLinux 9 und 10 ändern
- Loggen Sie sich auf dem Server als Administrator ein.
Öffnen Sie die SSH-Konfigurationsdatei sshd_config mit dem Texteditor vi:
vi /etc/ssh/sshd_config
- Suchen Sie den Eintrag Port 22.
- Ersetzen Sie den Port 22 durch einen Port im Bereich von 1024 bis 65535.
- Optional: Wenn in der Zeile Port das Rautezeichen am Anfang der Zeile steht, müssen Sie dieses entfernen, damit der Port in der Konfiguration berücksichtigt wird.
Hinweis
Der Editor vi verfügt über einen Einfügemodus und einen Befehls- oder Kommandomodus. Den Einfügemodus können Sie mit der Taste [i] aufrufen. In diesem Modus werden die eingegebenen Zeichen sofort in den Text eingefügt. Um den Befehlsmodus aufzurufen, drücken Sie anschließend [ESC]. Wenn Sie den Befehlsmodus nutzen, werden Ihre Tastatureingaben als Befehl interpretiert.
Achtung
Stellen Sie sicher, dass der gewählte Port nicht für andere Dienste verwendet wird. Dies können Sie mithilfe der folgenden Portliste tun, die von der Internet Assigned Numbers Authority (IANA) zur Verfügung gestellt wird: Service Name and Transport Protocol Port Number Registry
Alternativ können Sie die Auflistung der Ports in der Datei /etc/services einsehen.
- Um vi zu beenden und die Datei zu speichern, geben Sie den Befehl :wq ein und drücken Sie anschließend die Eingabetaste.
Wenn SELinux aktiviert ist (Standard bei Rocky/AlmaLinux), müssen Sie den neuen Port dem SELinux-Kontext hinzufügen, bevor Sie den Dienst neu starten. Hierzu geben Sie den folgenden Befehl ein:
semanage port -a -t ssh_port_t -p tcp MEIN_NEUER_PORT
Beispiel:
semanage port -a -t ssh_port_t -p tcp 22222
Hinweis
Wenn der Befehl semanage nicht gefunden wird, geben Sie den folgenden Befehl ein, um das benötigte Paket zu installieren:
dnf install policycoreutils-python-utils
Um die SELinux-Konfiguration (Security-Enhanced Linux) zu prüfen, geben Sie den unten stehenden Befehl ein. Dieser Befehl zeigt an, welche Netzwerk-Ports laut den aktuellen Sicherheitsrichtlinien für den SSH-Dienst zugelassen sind.
semanage port -l | grep ssh
Führen Sie einen Neustart des SSH-Dienstes durch.
systemctl restart sshd
Um den Status des Dienstes zu prüfen, geben Sie den folgenden Befehl ein:
systemctl status sshd
Um nach dieser Änderung eine SSH-Verbindung herzustellen, geben Sie den folgenden Befehl ein:
ssh root@IP-Adresse_des_Servers -p NeuerPort
Beispiel:
ssh root@IP-Adresse_des_Servers -p 22222
SSH-Port unter Debian 13 ändern
Ab Debian 13 wird der Port nicht mehr vom SSH-Dienst selbst, sondern vom System (systemd) verwaltet. Daher müssen Sie die Systemeinstellung anpassen. Der Port wird daher am Socket eingestellt, nicht in /etc/ssh/sshd_config.
Achtung
- Lassen Sie Ihre bestehende SSH-Sitzung geöffnet, bis die neue Verbindung funktioniert.
- Wählen Sie einen freien Port zwischen 1024 und 65535 (Beispiel: 22222).
- Öffnen Sie den neuen Port in der internen Firewall sowie in den Firewall-Richtlinien des Cloud Panels
- Stellen Sie sicher, dass ein alternativer Benutzer mit sudo‑Rechten existiert und per SSH funktioniert.
- Entfernen Sie den Zugriff auf Port 22 erst nach erfolgreichem Test.
- Loggen Sie sich auf dem Server als Administrator ein.
Um zu prüfen, ob der Dienst ssh.socket aktiv ist, geben Sie den folgenden Befehl ein:
systemctl is-active ssh.socket
Um zu prüfen, ob der Dienst ssh.service aktiv ist, geben Sie den folgenden Befehl ein:
systemctl is-active ssh.service
Hinweis
Auf Debian 13 ist normalerweise ssh.socket aktiv. Falls ssh.service zusätzlich aktiv ist, bleibt Port 22 offen, bis er deaktiviert wird.
Um den Konfigurations-Editor zu öffnen, geben Sie den folgenden Befehl ein:
systemctl edit ssh.socket
Geben Sie in dem sich öffnenden Texteditor folgende Informationen ein:
[Socket]
ListenStream=
ListenStream=0.0.0.0:NEUER_PORT
ListenStream=[::]:NEUER_PORTBeispiel:
[Socket]
ListenStream=
ListenStream=0.0.0.0:22222
ListenStream=[::]:22222
Der Eintrag ListenStream= (leer) löscht den alten Standard-Port 22. Der Eintrag ListenStream=22222 setzt den neuen Port.Wenn sich der Editor Nano öffnet (Standard): Drücken Sie STRG + O und Enter zum Speichern, dann STRG + X zum Beenden. Geben Sie anschließend ggf. Y ein und drücken Sie die Eingabetaste.
Wenn sich der Editor Vi/Vim öffnet: Drücken Sie Esc, tippen Sie :wq und drücken Sie die Eingabetaste.Um die Änderungen zu übernehmen und sicherzustellen, dass nur der Socket aktiv ist, geben Sie die folgenden Befehle ein:
systemctl daemon-reload
systemctl disable --now ssh.service
Um den Socket neu zu starten, geben Sie die folgenden Befehle ein:
systemctl restart ssh.socket
systemctl enable ssh.socket
Öffnen Sie ein weiteres Terminal- oder PuTTY-Fenster.
Geben Sie im Feld Host Name die IP-Adresse des Servers ein.
Geben Sie im Feld Port den neuen Port ein.
Klicken Sie auf OK.
Loggen Sie sich auf dem Server ein. Wenn die Anmeldung funktioniert, können Sie die alte Sitzung schließen und Port 22 in der Firewall entfernen.
Um zu prüfen, ob nur der neue SSH-Port aktiv ist, geben Sie den folgenden Befehl ein:
ss -lntp | grep -E ':(22|NEUER_PORT)'
Den Socket-Status prüfen Sie mit dem folgenden Befehl:
systemctl status ssh.socket
Um die effektive Socket-Konfiguration anzuzeigen, geben Sie den folgenden Befehl ein:
systemctl cat ssh.socket
Hinweis
Wenn die Anmeldung nicht funktioniert, prüfen Sie Ihre Firewall-Einstellungen und machen Sie die Änderungen ggf. wieder rückgängig.
SSH-Port unter Ubuntu 22.04 ändern
- Loggen Sie sich auf dem Server als Administrator ein.
Öffnen Sie die SSH-Konfigurationsdatei sshd_config mit dem Texteditor vi:
vi /etc/ssh/sshd_config
- Suchen Sie den Eintrag Port 22.
- Ersetzen Sie den Port 22 durch einen Port im Bereich von 1024 bis 65535.
Hinweis
Der Editor vi verfügt über einen Einfügemodus und einen Befehls- oder Kommandomodus. Den Einfügemodus können Sie mit der Taste [i] aufrufen. In diesem Modus werden die eingegebenen Zeichen sofort in den Text eingefügt. Um den Befehlsmodus aufzurufen, drücken Sie anschließend [ESC]. Wenn Sie den Befehlsmodus nutzen, werden Ihre Tastatureingaben als Befehl interpretiert.
Achtung
Stellen Sie sicher, dass der gewählte Port nicht für andere Dienste verwendet wird. Dies können Sie mithilfe der folgenden Portliste tun, die von der Internet Assigned Numbers Authority (IANA) zur Verfügung gestellt wird: Service Name and Transport Protocol Port Number Registry
Alternativ können Sie die Auflistung der Ports in der Datei /etc/services einsehen.
- Um vi zu beenden und die Datei zu speichern, geben Sie den Befehl :wq ein und drücken Sie anschließend die Eingabetaste.
Führen Sie einen Neustart des SSH-Dienstes durch. Geben Sie hierzu den unten stehenden Befehl ein. Falls Sie als root eingeloggt sind, können Sie sudo weglassen.
sudo systemctl restart ssh
Um den Status des Dienstes zu prüfen, geben Sie den unten stehenden Befehl ein. Falls Sie als root eingeloggt sind, können Sie sudo weglassen.
sudo systemctl status ssh
Um nach dieser Änderung eine SSH-Verbindung herzustellen, geben Sie den folgenden Befehl ein:
ssh root@IP-Adresse_des_Servers -p NEUER_PORT