開啟 Windows 10 的遠端指令權限


前一陣子發現,Windows 10 現在似乎預設沒辦法遠端執行 tasklist 或 shutdown 這類的指令了?

基本上,「tasklist」是 Windows 一個用來看電腦上執行程序的指令(參考、另外還有「taskkill」),而「shutdown」則是透過命令列來控制電腦關機、重開機的指令(參考)。

這兩個指令都是使用命令提示字元的形式來操作的,在某些情況下,算是有它的用途與必要性;而另外,這兩個指令也都可以操作遠端的電腦!

Heresy 以前就曾經在某些狀況下,使用「taskkill」來砍掉遠端沒有反應的程式、甚至用「shutdown」來關閉沒有螢幕顯示的電腦。他的指令是:

shutdown -r -f -m \\192.168.1.x -t 10

上面的指令的意思是強制關閉所有程式(-f)、在 10 秒後(-t 10)讓 192.168.1.x 這台電腦重開機(-r)。

而由於 shutdown 這個指令不能指定使用者帳號,所以如果遠端的電腦帳號和本身的帳號不同的話,會需要先使用 net use 這個指令(參考)來登入。例如:

net use \\192.168.1.x /user:Account

這樣他就會先使用「Account」來登入 192.168.1.x 這台電腦(會問密碼),之後再使用 shutdown 指令就可以了。

基本上,沒需要的話這指令沒什麼用,但是有的時候感覺還是滿方便的~ XD


不過,前一陣子想使用的時候,這才發現不管怎麼測試,他都會出現:

存取被拒。(5)

這樣的錯誤…

後來查了一下,感覺上這似乎是因為微軟 Windows UAC(User Account Control)策略的調整,所以算是被微軟預設關閉了?

沒理解錯的話,這邊存取被拒絕的主要問題,是因為這樣的指令需要系統管理者權限,但是用遠端執行的形式,沒有能跳出 UAC 通知視窗、讓使用者授權的關係。

而如果還要這樣使用的話,要自己改登入機碼、來允許遠端執行的系統管理員權限。

要修改的話,首先就是執行 regedit.exe,然後到

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system

去新增一個「DWORD 值」,並把它命名為「LocalAccountTokenFilterPolicy」、然後再把他的值設定成「1」。

如果覺得一層一層找太麻煩的話,也可以執行下面的命令(需要系統管理者權限):

reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\system /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f

理論上這樣修改後再重開機,應該就可以了。

當然,這樣開啟遠端命令也會有它的風險在,所以就視個人需求吧~


參考:

發表留言

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料