Ich habe die Konfiguration in der Datei geändert
/etc/ssh/sshd_config
wurde aber erst nach dem Neustart des Servers wirksam. Wie nehme ich Änderungen vor, ohne den Server neu zu starten?
Ich habe die Konfiguration in der Datei geändert
/etc/ssh/sshd_config
wurde aber erst nach dem Neustart des Servers wirksam. Wie nehme ich Änderungen vor, ohne den Server neu zu starten?
Antworten:
Starten Sie einfach den sshd-Dienst neu:
sudo service sshd restart
oder:
sudo /etc/init.d/sshd restart
sudo service ssh restart
werde es nicht tun. Sie müssen sshd neu starten, nicht ssh:
sudo service sshd restart
sudo service ssh restart
funktioniert sudo service sshd restart
super , während "sshd: unrecognized service" meldet. Nicht sicher, warum dies variiert, obwohl ...
Es gibt eine noch weniger aufdringliche Möglichkeit, dies zu tun, ohne den SSH-Dienst neu zu starten.
Von man sshd
:
sshd liest seine Konfigurationsdatei erneut, wenn es ein Aufhängesignal, SIGHUP, empfängt, indem es sich selbst mit dem Namen und den Optionen ausführt, mit denen es gestartet wurde, z. B. / usr / sbin / sshd.
Sie können also einen Befehl wie den folgenden verwenden, um SIGHUP an den SSH-Serverprozess zu senden:
sudo kill -SIGHUP $(pgrep -f "sshd -D")
Der pgrep -f "sshd -D"
Teil gibt nur die PID des sshd-Dämonprozesses zurück, der auf neue Verbindungen wartet, da es wahrscheinlich für jede aktive Sitzung andere PIDs gibt, die das Signal nicht benötigen.
sudo pkill -HUP sshd
?
sshd
Prozesse sind. sudo pkill -HUP -f "sshd -D"
ist eine verlockende Alternative, aber dann signalisiert pkill seinem eigenen sudo
Elternteil, da seine vollständige Befehlszeile mit seinem eigenen Suchmuster übereinstimmt. Sie können sich ein Muster einfallen lassen, das nicht mit sich selbst übereinstimmt ... -f "sshd -[D]
, das jedoch die Dinge ein wenig verschleiert. Ich denke, dass die pgrep-Methode für die Lernenden einfacher ist, den Kopf herumzureißen.
Als Root-Check
service --status-all | grep ssh
Ich hatte keinen sshd
Service, aber einen ssh
auf dem Ubuntu-Server. Dann
service ssh restart
Ein erneutes Laden ist möglicherweise eine bessere Alternative zum Neustart
sudo service sshd reload
Unter der Haube sendet es ein HUP
Signal an den sshd-Daemon-Prozess, fast auf dieselbe Weise, wie Steven K bereits geantwortet hat . Der Unterschied besteht darin, dass diese Variante die killproc
Funktion anstelle des kill
Befehls direkt verwendet, um das Signal noch präziser zu senden (um mögliche Fehler beim Senden von Signalen an falsche Prozesse zu reduzieren). Die Konfiguration wird erneut gelesen, ohne den Dienst neu zu starten / zu stoppen.
Natürlich lohnt es sich herauszufinden, wie genau SSH-Deamon eigentlich heißt, wie andere besprochen haben.
sudo service ssh restart
den Dienst neu starten, damit er wirksam wird. Denken Sie jedoch daran, dass Ihre Sitzung beendet wird, wenn Sie über SSH verbunden sind.