Как через cmd перезагрузить/выключить компьютер в локальной сети
Сегодня опишем очень интересный вариант доступа к файлам компьютера в сети, а также как это использовать для управления компьютером через CMD с включенным обнаружением по сети. Итак, приступим:
В Windows, в моем видении, есть огромная дырка доступа к ресурсам ПК, а именно такое понятие как “Управление административными шарами (Admin$, IPC$, C$, D$) в Windows XP/7/8/10/11”. Заполучив логин и пароль администратора ПК, даже удаленно и не подключаясь к нему, например по RDP, мы можем получить доступ к данным с любого ПК в сети через CMD или PowerShell.
Есть правда одно ограничение – получить доступ к административным шарам могут только члены локальной группы администраторов компьютера (и группы Backup Operators) при условии, что у вас включен SMB протокол, общий доступ (Turn on file and printer sharing) и доступ по 445 порту TCP не блокируется Windows Defender Firewall. К слову пользователь с правами админа по умолчанию все это имеет.
Приступим к нашей основной задаче – перезагрузка/выключение ПК
- Нам на локальной машине необходимо запустить CMD от прав администратора и авторизоваться на удаленном ПК в сети под администратором. Для этого будем использовать следующую команду:
net use \\SERVERNAME\admin$ password /USER:username
Расшифровка команды:
net use – эта команда используется для подключение и отключение общих ресурсов и вывод сведений о подключениях. Для своей работы она использует интерфейс NetBios. Для обращения нужно использовать имена NetBios. Более подробно изучить возможности данной команды можно набрав в CMD net use help.
\\SERVERNAME\admin$ – здесь SERVERNAME это IP адрес удаленного компьютера, например, \\192.168.1.10 , а admin$ это наша административная шара, можно вместо нее использовать C$
password – здесь указываем пароль администратора удаленного ПК под которым будем авторизовываться
/USER:username – здесь меняем только username на имя администратора удаленного ПК для которого ранее указывали пароль.
- Если на этом этапе команду удалось выполнить корректно и получить положительное уведомление ее исполнения, можем приступить к самой перезагрузке/выключению удаленного ПК. Для этого можно использовать ранее описанную команду перезагрузки/выключения ПК через CMD.
Перезагрузка ПК с IP адресом \\192.168.1.10 по сети будет выглядеть так:
shutdown -r -f -t 0 -m \\192.168.1.10
Что означают ключи, указанные в команде:
-r – компьютер будет перезагружен
-f – принудительное завершение открытых программ.
-t 0 – время ожидания в секундах, 0 – немедленно (либо указываете необходимое значение).
-m – удалённый компьютер по сети.
\\192.168.1.10 – IP адрес удаленного ПК, который будем перезагружать.
Выключение ПК с IP адресом \\192.168.1.10 по сети будет выглядеть так:
shutdown -s -f -t 0 -m \\192.168.1.10
В данной команде только одно изменение – использование ключа -s – который передаст удаленному ПК команду выключения.
Ну и, конечно, все это можно было использовать одной строчкой:
Перезагрузка ПК:
net use \\192.168.1.10\admin$ password /USER:username & shutdown -r -f -t 0 -m \\192.168.1.10
Выключение ПК:
net use \\192.168.1.10\admin$ password /USER:username & shutdown -s -f -t 0 -m \\192.168.1.10
Отличная статья, мне очень помогла! Спасибо автору!