Como enviar o comando shutdown para os servidores

0

Eu tenho 3 servidores, um Qnap NAS e 2 Rpi3 que controlam vigilância por vídeo, alguns domóticos básicos e assim por diante.

Acabei de configurar um servidor para monitorar o no-break, a fim de ser capaz de perceber quando é hora de desligar os servidores, porque a bateria do no-break está acabando.

Minhas perguntas são simples: existe uma maneira de enviar um comando de desligamento para servidores sem efetuar login através do SSH?

Eu gostaria que o servidor que monitora o no-break envie, quando necessário, o desligamento para os outros dois servidores sem fazer o login.

É possível? Qualquer protocolo ou de qualquer outra forma?

Obrigado por ajudar, Daniele

    
por Daniele 17.11.2017 / 15:39

2 respostas

0

Na minha opinião ssh é a melhor maneira de fazer isso. Você pode configurá-lo para que você não precise enviar uma senha no momento do login. Você pode copiar a chave ssh local para o servidor para que, quando você enviar o comando ssh, não exija senha. NOTA: Isso funciona com qualquer login no host remoto, incluindo root.

ssh-copy-id user@server

Você alteraria user no comando acima para qualquer usuário que possa executar o desligamento. Para fazer root, seria ssh-copy-id root@server .

Quando a cópia do ssh estiver completa, você deverá ser capaz de enviar os comandos sem um login solicitando uma senha.

Em seguida, no seu script ou o que enviar o comando para o servidor remoto, ele será assim:

ssh root@server 'shutdown -h now'

Não haveria senha obrigatória e o servidor seria encerrado.

Espero que isso ajude!

    
por Terrance 17.11.2017 / 15:45
0

Você poderia (é uma simples questão de programação Perl) escrever um script Perl para ouvir uma porta específica, e ao receber a mensagem certa, faça o desligamento. Comece com os exemplos no livro "Programming Perl" (o Livro de Camelos!), Veja o Capítulo 15.

    
por waltinator 17.11.2017 / 16:05