目的:服務器在啟用遠端桌面預設值為"3389",因為對管理上有風險,所以需要更改遠端桌面的端口號、調整防火牆規則增加安全性。
- PowerShell內容
- GitHub:https://github.com/minyufu/powershell.git
function Pause(){ [System.Console]::Write('按任意鍵繼續...') [void][System.Console]::ReadKey(1) } #用途:更改預設RDP端口號並添加防火牆規則 Write-Output "-----目前RDP使用端口號-----" $Now_RDP_PortNumber = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal*Server\WinStations\RDP-TCP\" -Name PortNumber | Select-Object PortNumber Write-Output "PortNumber: $Now_RDP_PortNumber" #使用者輸入需要修改的端口號: $New_Rdp_PortNumber = Read-Host -Prompt '輸入新的RDP端口號' #設定新的端口號 Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal*Server\WinStations\RDP-TCP\" -Name PortNumber -Value $New_Rdp_PortNumber #加入TCP防火牆規則 New-NetFirewallRule -DisplayName "遠程桌面(TCP-In) $New_Rdp_PortNumber" -Direction Inbound -Protocol TCP -Profile Any -LocalPort $New_Rdp_PortNumber -Action allow Write-Output "遠程桌面(TCP-In)防火牆規則添加完成" #加入UDP防火牆規則 New-NetFirewallRule -DisplayName "遠程桌面(UDP-In) $New_Rdp_PortNumber" -Direction Inbound -Protocol TCP -Profile Any -LocalPort $New_Rdp_PortNumber -Action allow Write-Output "遠程桌面(UDP-In)防火牆規則添加完成" #確認RDP端口修改完成 $Now_RDP_PortNumber = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal*Server\WinStations\RDP-TCP\" -Name PortNumber | Select-Object PortNumber Write-Output "Now Use RDP Port Number: $Now_RDP_PortNumber" Pause
- 執行的過程
- 下一步查看防火牆規則列表,將預設3389端口規則啟用並阻擋。
Set-NetfirewallRule -DisplayName "遠端桌面 - 使用者模式 (TCP-In)" -Enabled True -Action Block Set-NetfirewallRule -DisplayName "遠端桌面 - 使用者模式 (UDP-In)" -Enabled True -Action Block
- 補充-如果執行ps1檔出現"系統上已停用指令碼執行錯誤",請使用管理員權限開啟執行PowerShell輸入以下指令信任腳本檔案。
$ Set-ExecutionPolicy RemoteSigned
留言
張貼留言