Windows 上使用 PowerShell 設定防火牆規則和埠轉發; Windows 上配置埠轉發,將 3389 埠的流量重定向到自定義埠;

suv789發表於2024-08-20

在 PowerShell 中配置 Windows 防火牆的埠轉發涉及幾個步驟。首先,你需要確保你有足夠的許可權來進行這些操作(通常需要管理員許可權)。以下是如何在 PowerShell 中配置埠轉發的示例步驟:

1. 開啟 PowerShell

以管理員身份執行 PowerShell。你可以右鍵點選 PowerShell 圖示,選擇“以管理員身份執行”。

2. 配置防火牆規則

你可以使用 New-NetFirewallRule cmdlet 來建立新的防火牆規則。首先,你需要定義規則來允許透過防火牆的流量。以下是一個示例,建立一個允許特定埠的規則:

powershellCopy Code
New-NetFirewallRule -DisplayName "Allow Port 8080" -Direction Inbound -Protocol TCP -LocalPort 8080 -Action Allow

這個命令建立了一個新的防火牆規則,允許透過 TCP 協議的 8080 埠的入站流量。

3. 配置埠轉發

Windows 防火牆本身不直接支援埠轉發。為了實現埠轉發,你通常需要依賴其他工具或設定,例如使用 netsh 命令。

使用 netsh 命令

在 PowerShell 中,你可以使用 netsh 命令來配置埠轉發。以下是一個示例:

powershellCopy Code
netsh interface portproxy add v4tov4 listenport=8080 listenaddress=0.0.0.0 connectport=80 connectaddress=192.168.1.100

這個命令的作用是將所有到達本地埠 8080 的流量轉發到 IP 地址為 192.168.1.100 的機器的埠 80。

4. 檢視現有的埠轉發規則

你可以使用以下命令檢視現有的埠轉發規則:

powershellCopy Code
netsh interface portproxy show all

5. 刪除埠轉發規則

如果你需要刪除之前設定的埠轉發規則,可以使用:

powershellCopy Code
netsh interface portproxy delete v4tov4 listenport=8080 listenaddress=0.0.0.0

注意事項

  • 確保你要轉發的埠在目標機器上也有相應的服務在執行,否則流量將無法正確處理。
  • 根據你的網路設定和防火牆策略,可能還需要配置其他網路裝置(如路由器)上的埠轉發。

這些步驟應該可以幫助你在 Windows 上使用 PowerShell 設定防火牆規則和埠轉發。


Windows 上使用 PowerShell 將 3389 埠轉發到自定義埠,你可以透過以下步驟來實現。這個過程包括建立防火牆規則以允許流量透過埠,並設定埠轉發規則來將流量重定向到新的埠。

1. 開啟 PowerShell

以管理員身份執行 PowerShell。可以在開始選單中找到 PowerShell,右鍵單擊並選擇“以管理員身份執行”。

2. 建立防火牆規則

首先,確保防火牆允許透過 3389 埠的流量。你可以使用以下 PowerShell 命令來新增防火牆規則:

powershellCopy Code
New-NetFirewallRule -DisplayName "Allow RDP" -Direction Inbound -Protocol TCP -LocalPort 3389 -Action Allow

3. 設定埠轉發

Windows 自帶的 netsh 命令可以用來配置埠轉發。假設你想將本地 3389 埠的流量轉發到自定義埠(比如 9999),可以使用以下命令:

powershellCopy Code
netsh interface portproxy add v4tov4 listenport=3389 listenaddress=0.0.0.0 connectport=9999 connectaddress=127.0.0.1
  • listenport=3389:你希望監聽的本地埠。
  • listenaddress=0.0.0.0:指定所有可用的網路介面。
  • connectport=9999:自定義的目標埠(你希望將流量轉發到此埠)。
  • connectaddress=127.0.0.1:目標 IP 地址(在本地機器上轉發,所以使用 127.0.0.1)。

4. 確認埠轉發設定

你可以檢視現有的埠轉發規則以確保配置正確:

powershellCopy Code
netsh interface portproxy show all

5. 刪除埠轉發規則

如果你需要刪除某個埠轉發規則,可以使用以下命令:

powershellCopy Code
netsh interface portproxy delete v4tov4 listenport=3389 listenaddress=0.0.0.0

注意事項

  • 目標埠設定:確保目標埠(在此示例中為 9999)正在監聽並可以接受連線。如果你使用的是遠端桌面協議(RDP),則需要在目標埠上執行相應的服務。
  • 網路配置:確保你的網路配置和防火牆規則允許流量透過自定義埠(如 9999)。
  • 安全性:使用埠轉發時請確保網路安全,避免將不必要的埠暴露給外部網路。

這些步驟將幫助你在 Windows 上配置埠轉發,將 3389 埠的流量重定向到自定義埠。


相關文章