Способ понравился тем, что позволяет обычному пользователю выполнять команду на удаленном компьютере, требующую административных привилегий, при этом пользователю не выдается каких либо полномочий, и пароль администратора не подвергается риску компрометации.
Для реализации необходимо три командных файла:
set trigger=c:\commandShare\trigger.txt
set action=c:\scripts\action.cmd
set log=c:\scripts\log.txt
:start
if exist %trigger% start %action% & echo %time% %date%>>%log% & del %trigger%
timeout /t 5
goto start
action.cmd
<команда, которую нужно выполнить>
exit
run.cmd
echo test > \\remote_server\commandShare\trigger.txt
Файл server.cmd запускается на удаленном компьютере с административными полномочиями, например с помощью планировщика задач.
server.cmd выполняет следующее:
1. проверяет наличие файла c:\commandShare\trigger.txt;
2. если файл существует trigger.txt, запускает action.cmd, который содержит набор требуемых к запуску команд;
2. пишет текущую дату и время в c:\scripts\log.txt;
3. удаляет trigger.txt;
Параметр timeout /t 5 регулирует период проверки наличия trigger.txt ( данном случае 5 секунд).
Файл run.cmd создает trigger.txt. У пользователя должны быть права на создание файлов в c:\commandShare на удаленном компьютере.
Источник itband.ru.
Для реализации необходимо три командных файла:
- server.cmd, action.cmd на удаленной машине (в данном случае в папке c:\scripts)
- run.cmd на компьютере у пользователя.
set action=c:\scripts\action.cmd
set log=c:\scripts\log.txt
:start
if exist %trigger% start %action% & echo %time% %date%>>%log% & del %trigger%
timeout /t 5
goto start
action.cmd
<команда, которую нужно выполнить>
exit
run.cmd
echo test > \\remote_server\commandShare\trigger.txt
Файл server.cmd запускается на удаленном компьютере с административными полномочиями, например с помощью планировщика задач.
server.cmd выполняет следующее:
1. проверяет наличие файла c:\commandShare\trigger.txt;
2. если файл существует trigger.txt, запускает action.cmd, который содержит набор требуемых к запуску команд;
2. пишет текущую дату и время в c:\scripts\log.txt;
3. удаляет trigger.txt;
Параметр timeout /t 5 регулирует период проверки наличия trigger.txt ( данном случае 5 секунд).
Файл run.cmd создает trigger.txt. У пользователя должны быть права на создание файлов в c:\commandShare на удаленном компьютере.
Источник itband.ru.
Комментариев нет:
Отправить комментарий