Como desligar um computador com um endereço IP específico?

8

Se tivermos uma coleção de computadores Windows e Linux em uma LAN, é possível desligar um computador com um endereço IP específico, usando o shell do Linux?

Suponha que eu não possua ssh ou telnet em execução nos PCs. Eu tenho a senha de root para todos os computadores.

Rohit Banga
fonte

Respostas:

6

Só para lhe dar uma resposta com base na sua pergunta: "É impossível desligar um PC com base apenas no endereço IP"

Você pode tornar isso possível disponibilizando seus desktops ou shells pela rede. RDP (windows) / SSH ou VNC (linux) serve.

Cova
fonte
4

Use cartões fora da banda (se os computadores ainda não os tiverem).

Não são cartões baratos, mas você atribui um endereço IP a cada cartão e pode ligar / conectar / kvm remotamente qualquer coisa.

Mike Jennings
fonte
2

O Windows possui o shutdown /m \\computernamecomando incorporado, mas para o Linux você provavelmente precisará instalar o ssh e usá-lo ssh root@computername /sbin/shutdown. Por que uma caixa Linux não teria SSH instalado?

Hirvox
fonte
4
acesso SSH root é a última coisa que vou dizer às pessoas para fazer!
LiraNuna 20/10/2009
O serviço sshd foi interrompido por algum motivo. não existe outra maneira de desligar o pc. Eu não quero entrar. só tenho que desligar.
Rohit Banga
11
Quanto à senha root: consulte também "Desligamento sem senha de usuário sudo no Ubuntu" em superuser.com/questions/92925/…
Arjan 27/03
2

Um pouco mais de contexto para o seu problema seria útil. No geral, a resposta é não'.

Desligar remotamente qualquer computador aleatório geralmente não é uma coisa boa a ser feita; portanto, a maioria é configurada para se proteger contra isso. Se o acesso sshd estiver bloqueado, por ser desabilitado ou protegido por firewall, esse computador ficará ainda mais protegido, como deveria ser, e ter root não fará nenhum bem a menos que você esteja na frente do computador.

Por outro lado, existem alguns centros de computação que usam sistemas de gerenciamento para fazer exatamente o que você está pensando. Geralmente, eles são suportados por um daemon especial em execução no computador, escutando em uma porta de rede diferente da sshd ou usando utilitários de firmware de baixo nível embutidos na placa de rede. Esses cenários exigem um pouco de planejamento e não o ajudarão se você tiver um problema repentino agora.

Dependendo da idade do computador e do sistema operacional, pode haver vetores de ataque conhecidos que podem lhe permitir acesso root usando um software de cracking. Não recomendo esta rota, mas ela existe.

Uma última idéia - existem filtros de linha operados remotamente que podem ser usados. Se você souber qual computador é, qual filtro de linha e qual plugue está conectado, basta desligar a energia desse plugue. Novamente, isso requer algum planejamento prévio e você deseja garantir que alguém não conecte o ventilador a essa tomada.

Shannon Nelson
fonte
software de craqueamento. eu quero saber mais sobre isso é apenas um experimento que eu quero fazer no meu ambiente de laboratório controlado.
Rohit Banga
1

Você terá que descobrir o que é o roteador. Depois de descobrir, digite o seguinte em um prompt de comando:

shutdown -s -f -m \\"IP of remote machine" -t xx
Mubarak
fonte
1

Se você instalar o serviço SSH, como mencionado anteriormente, poderá usar o comando ssh, como:

ssh [email protected] shutdown -hy 0

Para que tudo isso seja automatizado, a troca de chaves deve ser feita, para que sua chave privada esteja no seu arquivo ~ / .ssh / identity padrão e a parte pública no arquivo ~ / .ssh / allowed_keys no host remoto.

Se você observar o SSH, verá todas as opções e muito mais.

jfmessier
fonte
Quanto à senha root: consulte também "Desligamento sem senha de usuário sudo no Ubuntu" em superuser.com/questions/92925/…
Arjan 27/03
1
  1. Digite shutdown -ina janela de execução.
  2. Clique no botão "Adicionar" e digite o nome do computador que você deseja desligar ou o endereço IP.
  3. Você pode selecionar o que deseja que o computador faça.
  4. Nesse modo, é necessário adicionar um comentário. Faça isso.
  5. Pressione OK.
Anto279
fonte
0

É possível através do comando como

shutdown -s -f -m \\ "ip da máquina remota" -t xx

mas para isso o sistema deve estar em lan ... -t xxé segundos que você precisa especificar.

Arjan
fonte
Apenas Windows, certo? (Assim como @Hirvox respondidas?)
Arjan
isso funciona no linux
Rohit Banga
shutdownfunciona no Unix (incluindo a maioria dos linuxes), mas as opções são diferentes da versão do Windows. Para o Unix, há também telinit 0, init 0atrasos via atou cronetc. Mas, para a pergunta original, você precisa fazer login no host pela rede. SSH, rsh/rlogin, telnet, Etc, podem fazê-lo (com permissões de usuário apropriadas), mas você precisa de pelo menos um deles disponível.
mpez0
0

Digite o seguinte em um prompt de comando:

shutdown -ip 

Em seguida, adicione o endereço IP e você terá diferentes opções para desligar, reiniciar e assim por diante.

Gaff
fonte
0

Existe um programa para linux chamado winexe que pode enviar remotamente um comando para máquinas Windows remotas, e eu acho que se o samba estiver instalado no linux, ele poderia funcionar com isso também, o melhor é que ele não precisa de alterações nas janelas pcs

mate
fonte
11
Bem-vindo ao superusuário. Para que a sua resposta seja relevante, por favor inclua um link para o programa que você está descrevendo, e talvez ser um pouco mais definitiva sobre como ele funciona, o que suas características são, etc.
MattDMo