Desligar Windows remotamente pelo Linux

Publicado por Buckminster em 18/10/2021

[ Hits: 601 ]

 


Desligar Windows remotamente pelo Linux



Instale:

sudo apt-get install samba smbclient telnet

NOTA: usei o apt-get, use o comando da tua distribuição.

Na máquina com o Windows abra o prompt como administrador e execute:

sc config RemoteRegistry start=auto
sc start RemoteRegistry


Dependendo da versão do Windows usamos da criatividade e acrescentamos um registro caso der a mensagem WERR_CALL_NOT_IMPLEMENTED.

Por via das dúvidas, já crie o registro para não perder a viagem e evitar a mensagem.

Pressione a tecla Windows e a tecla "r", abrirá o menu Executar, digite regedit. Abrirá o editor de registro do Windows.

Navegue pelo caminho:

HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem

Com System selecionado clique com o botão direito do mouse dentro do espaço branco no lado direito > Novo > Valor DWORD (32 bits) e nomeie como LocalAccountTokenFilterPolicy e depois clique em cima com o botão direito (opção Modificar...) e modifique o valor para "1". Depois, caso quiser desfazer, é só excluir o registro ou colocar em 0 (zero).

Reinicie a máquina Windows e execute na máquina Linux:

# net rpc shutdown -C "Não fui com a tua cara, estou me desligando!" -t 60 -f -I 192.168.1.12 -U usuário%senha

O parâmetro -C é opcional, pois somente envia uma mensagem escrita.

O parâmetro -t 60 coloca o tempo de 60 segundos para o desligamento, sem este parâmetro a máquina é desligada na hora.

O parâmetro -f força o desligamento da máquina remota fechando qualquer programa aberto.

O parâmetro -I (i maiúsculo) é o IP da máquina remota.

O parâmetro -U é o usuário e a senha da maquina remota separados pelo símbolo porcentagem (%).

O comando abaixo desliga na hora:

# net rpc shutdown -f -I 192.168.1.12 -U usuário%senha

O mais aconselhável é omitir a senha porque ela será solicitada na linha de comando, o que é mais seguro, pois ninguém verá a senha:

# net rpc shutdown -f -I 192.168.1.12 -U usuário
Enter usuario's password:

Para abortar o desligamento remoto:

# net rpc abortshutdown -f -I 192.168.1.12 -U usuário%senha

No meio disso tudo, pode usar o telnet para verificar se a conexão está indo:

# telnet 192.168.1.12 445

A resposta de que a conexão está indo é:

Trying 192.168.1.12...
Connected to 192.168.1.12.
Escape character is '^]'.


É óbvio que, nesse esquema, as máquinas precisam estar na mesma rede e você precisa ter acesso físico pelo menos uma vez à máquina remota.

Porém, a partir daí o céu é o limite para acessarmos as máquinas remotamente; lembrando que a internet é uma grande rede.

Outras dicas deste autor

Instalar PHP8 no Debian 9 e 10

Habilitar módulo do kernel (sem o compilar completamente)

Instalar Popcorn-Time no Linux

PostgreSQL 9.1 64 bits - Instalação no Debian Squeeze

Configurar teclado no Linux com Modmap

Leitura recomendada

Ferramentas para administradores de redes

Evitando login simultâneo FreeRADIUS MySQL PPPoE

Alterar o endereço MAC da interface de rede em 3 passos

Systemd - Failed to start Squid caching proxy

Erro de conexão na Internet cabeada do Manjaro [Resolvido]

  

Comentários
[1] Comentário enviado por mauricio123 em 18/10/2021 - 12:44h


Muito bacana.

___________________________________________________________
[code]Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento [/code]

[2] Comentário enviado por linoxman em 18/10/2021 - 18:58h


Ótima dica. Usei muito isso para desligar laboratórios de informática com vários Windows, fazendo um for em bash em uma lista de ips, e depois colocando isso em uma página em php pro pessoal fazer por conta.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts