Adicione chave a authorized_users sem precisar reiniciar o sshd

2

Estou tentando adicionar uma chave pública a um servidor, mas não quero reiniciar o serviço sshd para que ele tenha efeito. O motivo é que a reinicialização do serviço ssh parece ser prejudicial para outros usuários que poderiam usar o serviço ssh naquele momento. A maioria das documentações sugere adicionar uma chave pública a $HOME/.ssh/authorized_keys e, em seguida, reiniciar o sshd service ( systemctl restart sshd ). O sistema operacional de interesse é o Linux.

Minhas perguntas são:

  1. O reinício de sshd é necessário?
  2. Se sshd for reiniciado, há uma interrupção no serviço nesse horário?
  3. Existe uma maneira de configurar a autenticação sem senha usando o ssh sem a necessidade de reiniciar o serviço sshd após adicionar novas chaves públicas a $HOME/.ssh/authorized_keys ?
por user1952500 26.01.2018 / 05:38

1 resposta

10

Is the restart of sshd needed?

Geralmente não. As distribuições Linux geralmente vêm com uma configuração padrão que permite autenticação de chave pública, então você normalmente nem precisa editar a configuração para ativá-la e, portanto, a reinicialização é desnecessária. Mesmo no caso de você ter que fazer algo com sshd_config , você só teria que reiniciá-lo apenas uma vez depois de editar o arquivo, não para cada edição após o arquivo de chaves autorizado.

Note que você não precisa nem reiniciar o sshd. De man sshd :

sshd rereads its configuration file when it receives a hangup signal, SIGHUP, by executing itself with the name and options it was started with, e.g. /usr/sbin/sshd.

E o típico serviço systemd para sshd reconhece isso, então você pode fazer systemctl reload sshd .

If sshd is restarted, is there a service outage at that time?

Depende da sua definição de interrupção de serviço. Uma simples reinicialização do sshd não irá matar as conexões ssh existentes, mas novas conexões não serão aceitas até que o sshd termine de reiniciar.

    
por 26.01.2018 / 07:05