Я изменил конфигурацию в файле
/etc/ssh/sshd_config
, но получил эффект только после перезагрузки сервера. Как принять изменения без перезагрузки сервера?
Просто перезапустите sshd сервис:
sudo service sshd restart
или:
sudo /etc/init.d/sshd restart
sudo service ssh restart
не сделает этого. Необходимо перезапустить sshd, не ssh:
sudo service sshd restart
Как базируются проверка
service --status-all | grep ssh
, я не имел никакого sshd
сервис, но имел ssh
сервис на сервер Ubuntu. Затем
service ssh restart
ro quiet splash nomodeset vt.handoff=7
, которые совпадают с в GRUB.
– paulkernstock
22 November 2015 в 09:04
Существует еще менее навязчивый способ сделать это, не перезапуская сервис SSH.
От man sshd
:
sshd перечитывает свой конфигурационный файл, когда он получает сигнал зависания, SIGHUP, путем выполнения себя с именем и опциями, он был запущен с, например,/usr/sbin/sshd.
Таким образом, можно использовать команду как следующее для отправки SIGHUP в серверный процесс SSH:
sudo kill -SIGHUP $(pgrep -f "sshd -D")
pgrep -f "sshd -D"
часть возвратит только PID sshd процесса демона, который прислушивается к новым соединениям, так как, вероятно, будут другие PIDs для каждой активной сессии, которым не нужен сигнал.
sudo systemctl reload sshd.service
или
sudo systemctl reload sshd
или
sudo /bin/systemctl reload sshd.service
sudo service sshd reload
или
sudo /etc/init.d/sshd reload
Перезагрузка может быть лучшей альтернативой перезапуску
sudo service sshd reload
под капотом это отправляет HUP
предупредите sshd процесс демона почти о том же способе, которым уже ответил Steven K. Различие - то, что этот вариант использует killproc
функция вместо kill
управляйте непосредственно для отправки сигнала еще более точным способом (для сокращения возможных ошибок отправки сигналов к неправильным процессам). Конфигурация перечитана, не перезапуская/останавливая сервис.
Конечно, он ценность, чтобы узнать, как точно SSH deamon называют на самом деле как другие, обсудил.