Você pode usar sudo service ssh restartpara reiniciar o serviço para entrar em vigor. Mas lembre-se, se você estiver conectado através do SSH, sua sessão será encerrada.
nada ... saltando sshd é inteligente o suficiente para permitir conexões SSH para continuar alegremente inabalável
Scott Stensland
4
Não recomendo executar nada no /etc/init.d diretamente. Use o comando "service". A maioria dos serviços não se importa, mas há alguns que o fazem porque são impactados por variáveis de ambiente. "serviço" garante que o ambiente seja limpo. Por exemplo, a execução de "sudo" deixa a variável de ambiente HOME no diretório inicial não raiz.
Chris Cogdon
5
sudo service ssh restart
não vai fazer isso. Você precisa reiniciar o sshd, não o ssh:
Depende da configuração do sistema. No Lubuntu 14.04 sudo service ssh restartfunciona muito bem, enquanto o sudo service sshd restartrelatório "sshd: serviço não reconhecido". Não sei por que isso varia ...
schulwitz 15/01
3
Há uma maneira ainda menos invasiva de fazer isso, sem reiniciar o serviço SSH.
De man sshd:
O sshd relê seu arquivo de configuração quando recebe um sinal de interrupção, SIGHUP, executando-se com o nome e as opções com as quais foi iniciado, por exemplo, / usr / sbin / sshd.
Portanto, você pode usar um comando como o seguinte para enviar SIGHUP ao processo do servidor SSH:
sudo kill -SIGHUP $(pgrep -f "sshd -D")
A pgrep -f "sshd -D"parte retornará apenas o PID do processo daemon sshd que escuta novas conexões, pois provavelmente haverá outros PIDs para cada sessão ativa que não precisem do sinal.
Esta é a maneira mais segura ( stribika.github.io/2015/01/04/secure-secure-shell.html ) de recarregar a configuração: "Seja extremamente cuidadoso ao configurar o SSH em um host remoto. Sempre mantenha uma sessão ativa, nunca reinicie o sshd. Em vez disso, você pode enviar o sinal SIGHUP para recarregar a configuração sem interromper sua sessão. Você pode ter ainda mais cuidado iniciando uma nova instância do sshd em uma porta diferente e testando isso. "
Adriano Lucas
Existe alguma diferença significativa para sudo pkill -HUP sshd?
AdamKalisz 24/06
@ Adam Você quer apenas o processo de escuta do HUP, não os clientes ativos que também são sshdprocessos. sudo pkill -HUP -f "sshd -D"é uma alternativa tentadora, mas o pkill sinaliza seu próprio sudopai, já que sua linha de comando completa corresponde ao seu próprio padrão de pesquisa. Você pode criar um padrão que não combina com ele ... -f "sshd -[D], mas que ofusca um pouco as coisas. Eu acho que o método pgrep é mais fácil para os alunos entenderem.
Steven K
2
Como verificação de raiz
service --status-all | grep ssh
Eu não tinha sshdserviço, mas tinha sshserviço no servidor Ubuntu. Então
Recarregar pode ser uma alternativa melhor para reiniciar
sudo service sshd reload
sob o capô, ele envia um HUPsinal para o processo sshd daemon quase da mesma maneira que Steven K já respondeu . A diferença é que essa variante usa a killprocfunção em vez do killcomando diretamente para enviar o sinal de maneira ainda mais precisa (para reduzir possíveis erros de envio de sinais para processos errados). A configuração é relida sem reiniciar / parar o serviço.
É claro que vale a pena descobrir como exatamente o deamon SSH é chamado realmente como os outros discutiram.
sudo service ssh restart
para reiniciar o serviço para entrar em vigor. Mas lembre-se, se você estiver conectado através do SSH, sua sessão será encerrada.Respostas:
Simplesmente reinicie o serviço sshd:
ou:
fonte
não vai fazer isso. Você precisa reiniciar o sshd, não o ssh:
fonte
sudo service ssh restart
funciona muito bem, enquanto osudo service sshd restart
relatório "sshd: serviço não reconhecido". Não sei por que isso varia ...Há uma maneira ainda menos invasiva de fazer isso, sem reiniciar o serviço SSH.
De
man sshd
:Portanto, você pode usar um comando como o seguinte para enviar SIGHUP ao processo do servidor SSH:
A
pgrep -f "sshd -D"
parte retornará apenas o PID do processo daemon sshd que escuta novas conexões, pois provavelmente haverá outros PIDs para cada sessão ativa que não precisem do sinal.fonte
sudo pkill -HUP sshd
?sshd
processos.sudo pkill -HUP -f "sshd -D"
é uma alternativa tentadora, mas o pkill sinaliza seu própriosudo
pai, já que sua linha de comando completa corresponde ao seu próprio padrão de pesquisa. Você pode criar um padrão que não combina com ele... -f "sshd -[D]
, mas que ofusca um pouco as coisas. Eu acho que o método pgrep é mais fácil para os alunos entenderem.Como verificação de raiz
Eu não tinha
sshd
serviço, mas tinhassh
serviço no servidor Ubuntu. Entãofonte
Para sistemas Systemd - Ubuntu padrão
ou
ou
Para sistemas Sysvinit
ou
fonte
Recarregar pode ser uma alternativa melhor para reiniciar
sob o capô, ele envia um
HUP
sinal para o processo sshd daemon quase da mesma maneira que Steven K já respondeu . A diferença é que essa variante usa akillproc
função em vez dokill
comando diretamente para enviar o sinal de maneira ainda mais precisa (para reduzir possíveis erros de envio de sinais para processos errados). A configuração é relida sem reiniciar / parar o serviço.É claro que vale a pena descobrir como exatamente o deamon SSH é chamado realmente como os outros discutiram.
fonte