Вероятно, лучше всего было бы использовать переносимый PowerShell на сервере напрямую (http://site.shelltools.net/Applications/Portable_PowerShell). По сути, он дает вам автономную версию PowerShell без необходимости фактической установки PowerShell.
Что касается того, чтобы сделать его недоступным для редактирования,вы в основном ограничены использованием разрешений NTFS. Другой вариант сделать то, что вы хотите, может быть здесь: http://powershell.com/cs/forums/p/5493/8863.aspx, хотя я никогда не использовал ни один из этих инструментов сам.
Другой альтернативой является использованиепакетный файл и утилита psexec для вызова сценария powershell на удаленном хосте. Вы можете установить запланированное задание на Windows Server следующим образом:
@echo off
setlocal
:: Change HOST to your workstation's IP/DNS hostname
HOST=127.0.0.1
:: Make this your workstation's MAC
MAC=00-00-00-11-22-33
:: Make this the number of seconds it takes your host to boot
BOOTTIME=60
ping %HOST%
if ERRORLEVEL 0 (
REM Ping successful, host is up
GOTO RUNCMD
) else (
:: Ping not successful, wake up host using mc-wol from matcode.com. Server must be in same subnet
mc-wol.exe %MAC%
choice /T %BOOTTIME% /D y >NUL
GOTO RUNCMD
)
:RUNCMD
psexec \\%HOST% {cmd options to run remote powershell}
endlocal