Desligar Windows remotamente pelo Linux

Publicado por Buckminster em 18/10/2021

[ Hits: 6.357 ]

 


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

Criar QR Code pelo navegador

Firmware Realtek - Ativação na instalação do Debian Squeeze 64 bits

Resolvendo o problema de acentuação em Português no VIM

Dica básica para escrever um Artigo.

Leitor de Teclas em Javascript e PHP

Leitura recomendada

Forçando sites HTTPS a passar fora do Squid 3

Ingressar (join) CentOS 7 em domínio Samba 4 + SSH + sudo

Bitnami - Configure aplicações no servidor com poucos cliques

Compartilhando diretórios em rede com Linux Mint + MATE Desktop

Verificando IPs ativos em determinada rede com fping

  

Comentários
[1] Comentário enviado por maurixnovatrento 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

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts