Standardmäßig lauscht SSH auf Port 22. Das Ändern des Standard-SSH-Ports fügt Ihrem Server eine zusätzliche Sicherheitsebene hinzu, indem es das Risiko automatisierter Angriffe verringert.
In dieser Anleitung wird erklärt, wie Sie den Standard-SSH-Port in Linux ändern. Außerdem zeigen wir Ihnen, wie Sie Ihre Firewall so konfigurieren, dass sie den Zugriff auf den neuen SSH-Port zulässt.
Ändern des SSH-Ports
Das Ändern des SSH-Ports eines Images ist eine einfache Aufgabe. Alles, was Sie tun müssen, ist, die SSH-Konfigurationsdatei zu bearbeiten und den Dienst neu zu starten.
Die folgenden Abschnitte erklären, wie Sie den SSH-Port auf einem Linux-System ändern.
Eine neue Portnummer auswählen #
In Linux sind Portnummern unter 1024 für bekannte Dienste reserviert und können nur von root gebunden werden. Obwohl Sie für den SSH-Dienst einen Port innerhalb eines Bereichs von 1-1024 verwenden können, um Probleme mit der Port-Zuordnung in der Zukunft zu vermeiden, wird empfohlen, einen Port über 1024 zu wählen.
In diesem Beispiel wird der SSH-Port auf 5522 geändert, Sie können aber jeden beliebigen Port wählen.
Anpassen der Firewall
Bevor Sie den SSH-Port ändern, müssen Sie Ihre Firewall so anpassen, dass der Verkehr auf dem neuen SSH-Port zugelassen wird.
Wenn Sie UFW, das Standard-Firewall-Konfigurationswerkzeug für Ubuntu, verwenden, führen Sie den folgenden Befehl aus, um den neuen SSH-Port zu öffnen:
sudo ufw allow 5522/tcp
In CentOS ist das Standard-Firewall-Verwaltungswerkzeug FirewallD. Um den neuen Port zu öffnen, führen Sie aus:
sudo firewall-cmd --permanent --zone=public --add-port=5522/tcp
sudo firewall-cmd --reload
CentOS-Benutzer müssen auch die SELinux-Regeln anpassen:
sudo semanage port -a -t ssh_port_t -p tcp 5522
Wenn Sie iptables als Firewall verwenden, führen Sie aus, um den neuen Port zu öffnen:
sudo iptables -A INPUT -p tcp --dport 5522 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
SSSH konfigurieren
Öffnen Sie die SSH-Konfigurationsdatei /etc/ssh/sshd_config
mit Ihrem Texteditor:
sudo vim /etc/ssh/sshd_config
Suchen Sie nach der Zeile, die mit Port 22
beginnt. In den meisten Fällen beginnt diese Zeile mit einem Rautenzeichen (#
). Entfernen Sie die Raute #
und tragen Sie die neue SSH-Portnummer ein:
Port 5522
Sein Sie besonders vorsichtig, wenn Sie die SSH-Konfigurationsdatei ändern. Eine falsche Konfiguration kann dazu führen, dass der SSH-Dienst nicht gestartet werden kann.
Speichern Sie anschließend die Datei und starten Sie den SSH-Dienst neu, um die Änderungen zu übernehmen:
sudo systemctl restart ssh
In CentOS heißt der ssh-Dienst sshd
:
sudo systemctl restart sshd
Um zu überprüfen, dass der SSH-Daemon auf dem neuen Port 5522 lauscht, geben Sie ein:
ss -an | grep 5522
Die Ausgabe sollte etwa so aussehen:
tcp LISTEN 0 128 0.0.0.0:5522 0.0.0.0:*tcp ESTAB 0 0 192.168.121.108:5522 192.168.121.1:57638tcp LISTEN 0 128 :5522 :*
Nutzung des neuen SSH-Ports
Um den Port anzugeben, rufen Sie den ssh
Befehl auf, gefolgt von der Option -p <port_number>
:
ssh -p 5522 username@remote_host_or_ip
Wenn Sie sich regelmäßig mit mehreren Systemen verbinden, können Sie Ihren Arbeitsablauf vereinfachen, indem Sie alle Ihre Verbindungen in der SSH-Konfigurationsdatei definieren.
Abschluss #
In diesem Tutorial haben Sie gelernt, wie Sie den SSH-Port auf einem Linux-Server ändern können. Außerdem sollten Sie eine SSH-Schlüssel-basierte Authentifizierung einrichten und sich mit Ihren Linux-Servern verbinden, ohne ein Passwort einzugeben.