Альтернатива sudo/su для Windows?

В Windows я не нашёл опции, которая позволяет запустить cmd/powershell от имени администратора, зная пароль администратора. В GUI интерфейсе можно правой кнопкой мыши нажать по ярлыку и выбрать "запуск от имени администратора".
А как то же самое сделать подключившись по telnet/ssh? Какие сть альтернативы для su/sudo в Windows и Windows Server?
  • Вопрос задан
  • 489 просмотров
Пригласить эксперта
Ответы на вопрос 6
zeond
@zeond
dev & ops
В Windows есть механизм runas, чтобы запускать процесс от имени другого пользователя. Ничего добавлять не нужно.
Ответ написан
@res2001
Developer, ex-admin
Параметр в реестре:
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f

отключает действие UAC для процессов запускаемых удаленно. Устанавливать его надо на ПК, на котором будут удаленно запускаться приложения. После установки требуется перезагрузка.
Когда он установлен и вы запускаете что-то удаленно с правами администратора удаленного компьютера, то программа запускается с реальными администраторскими правами, без фильтра UAC.
Например с помощью того же psexec (или wmic) можно будет запускать удаленно приложения.
Не уверен, что это сработает в случае с ssh и telnet, т.к. сервер службы работает на удаленном компьютере.
Ответ написан
@zloy_zaya
С PowerShell локальным все достаточно несложно, например:
Start-Process "C:\Program Files\PowerShell\7\pwsh.exe" -Verb runAs -WorkingDirectory c:\ -wait

С удаленным компьютером все несколько сложнее
1. На удаленном компьютере запускаем
Set-Item -Path WSMan:\localhost\Client\TrustedHosts -Value ''
Вместо можно поставить и * но это чревато сами понимаете чем...
2. На локальном запускаем Invoke-Command -ComputerName $hostname -ScriptBlock { Ваш срипт здесь } -Credential $hostname\ladmin | Format-List
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы