1. 程式人生 > >Windows Server2008通過命令列方式新增防火牆規則

Windows Server2008通過命令列方式新增防火牆規則

Windows Server2008增加了一個名叫netsh的命令列工具,通過它可以用批處理方式新增防火牆出入棧規則:

入棧規則:

set PORT=3389
set RULE_NAME="_遠端連線埠:%PORT% 入棧規則"
netsh advfirewall firewall show rule name=%RULE_NAME% >nul
if not ERRORLEVEL 1 (
    rem 對不起,規則 %RULENAME% 已經存在
) else (
    echo 規則 %RULENAME% 建立中...
    netsh advfirewall firewall add rule name=%RULE_NAME% dir=in

action=allow protocol=TCP localport=%PORT%

出棧規則: set PORT=3389
set RULE_NAME="_遠端連線埠:%PORT% 出棧規則"
netsh advfirewall firewall show rule name=%RULE_NAME% >nul
if not ERRORLEVEL 1 (
    rem 對不起,規則 %RULENAME% 已經存在
) else (
    echo 規則 %RULENAME% 建立中...
    netsh advfirewall firewall add rule name=%RULE_NAME% dir=out
action=allow protocol=TCP localport=%PORT%

參考:http://stackoverflow.com/questions/15171255/how-to-open-ports-on-windows-firewall-through-batch-file