J'ai changé de configuration dans le fichier
/etc/ssh/sshd_config
mais n'a d'effet qu'après le redémarrage du serveur. Comment apporter des modifications sans redémarrer le serveur?
J'ai changé de configuration dans le fichier
/etc/ssh/sshd_config
mais n'a d'effet qu'après le redémarrage du serveur. Comment apporter des modifications sans redémarrer le serveur?
Réponses:
Redémarrez simplement le service sshd:
sudo service sshd restart
ou:
sudo /etc/init.d/sshd restart
sudo service ssh restart
ne le fera pas. Vous devez redémarrer sshd, pas ssh:
sudo service sshd restart
sudo service ssh restart
fonctionne très bien, alors que le sudo service sshd restart
rapport "sshd: service non reconnu". Je ne sais pas pourquoi cela varie cependant ...
Il existe un moyen encore moins intrusif de le faire, sans redémarrer le service SSH.
De man sshd
:
sshd relit son fichier de configuration lorsqu'il reçoit un signal de raccrochage, SIGHUP, en s'exécutant avec le nom et les options avec lesquels il a été démarré, par exemple / usr / sbin / sshd.
Vous pouvez donc utiliser une commande comme la suivante pour envoyer SIGHUP au processus du serveur SSH:
sudo kill -SIGHUP $(pgrep -f "sshd -D")
La pgrep -f "sshd -D"
partie ne renverra que le PID du processus démon sshd qui écoute les nouvelles connexions, car il y a probablement d'autres PID pour chaque session active qui n'ont pas besoin du signal.
sudo pkill -HUP sshd
?
sshd
processus. sudo pkill -HUP -f "sshd -D"
est une alternative tentante, mais alors pkill signale son propre sudo
parent puisque sa ligne de commande complète correspond à son propre modèle de recherche. Vous pouvez trouver un modèle qui ne correspond pas à lui-même ... -f "sshd -[D]
, mais qui obscurcit un peu les choses. Je pense que la méthode pgrep est plus facile pour les apprenants d'envelopper leur tête.
En tant que contrôle racine
service --status-all | grep ssh
Je n'avais aucun sshd
service, mais j'avais un ssh
service sur le serveur Ubuntu. ensuite
service ssh restart
Le rechargement peut être une meilleure alternative au redémarrage
sudo service sshd reload
sous le capot, il envoie un HUP
signal au processus démon sshd presque de la même manière que Steven K l'a déjà répondu . La différence est que cette variante utilise directement la killproc
fonction au lieu de la kill
commande afin d'envoyer le signal de manière encore plus précise (pour réduire les erreurs possibles d'envoi de signaux à de mauvais processus). La configuration est relue sans redémarrer / arrêter le service.
Bien sûr, il vaut la peine de savoir comment le démon SSH est appelé exactement comme d'autres l'ont expliqué.
sudo service ssh restart
pour redémarrer le service pour prendre effet. Mais n'oubliez pas que si vous êtes connecté via SSH, votre session sera terminée.