微軟釋出 Windows XP Service Pack 2 (SP2) 後,不少使用者發現原本正常的網路伺服器、遠端桌面、檔案共享、FTP 用戶端、多媒體串流、電子郵件、防毒工具、網管軟體甚至遊戲等應用程式都無法正常運作。罪魁禍首其實是 SP2 大幅強化的「Windows 防火牆」——它預設封鎖了電腦與網路之間的通訊,導致用戶端無法從伺服器接收資料(如 FTP、串流軟體),或是安裝 SP2 的伺服器無法回應用戶端請求(如 Web 伺服器、遠端桌面、檔案共享)。部分程式或遊戲必須透過網路接收資訊才能運作,但防火牆卻關閉了它們的通訊連接埠,造成程式異常。
當 Windows 防火牆攔截某個程式時,會跳出「安全性警示」對話方塊,提供「持續封鎖」、「解除封鎖」與「稍後再詢問」三個選項。點選「解除封鎖」即可讓程式連線收發資料,同時自動將該程式加入防火牆的「例外」清單,之後防火牆將不再攔截它的網路存取。若點選其他兩個按鈕,程式將持續被封鎖。

圖 1:「解除封鎖」可讓程式正常存取網路
Windows 防火牆允許預先指定特定程式不受封鎖。若某程式因被封鎖而無法執行,可依下列步驟加入例外(以 CuteFTP 5.0 XP 為例):
wscui.cpl 按確定,開啟「安全性中心」並點選「Windows 防火牆」。將程式加入例外清單有兩大優點:
1. 不需知道程式使用的連接埠號。
2. 例外清單中的程式僅在執行時才開放對應連接埠(開放連接埠如同在防火牆鑿洞,大量開放會增加攻擊風險)。

圖 2:加入例外的程式即可自由存取網路
若加入例外後程式仍無法運作,或找不到程式執行檔,可手動開放該程式所需的連接埠。確認連接埠的可靠方法是查閱產品說明書;若無文件,可在命令提示字元下用 netstat.exe 觀察目前程式請求的連接埠。以下以 CuteFTP 為例說明開放連接埠步驟:

圖 3:手動開放特定連接埠供程式使用
結合上述方法並依各軟體實際情況調整,即可解決安裝 SP2 後程式與遊戲無法正常執行的問題。