、背景介紹
大家在Linux的日常使用中都曉得如何通過命令行去配置Linux的端口開放規則,但是大家知道如何配置Windows入站出站規則嗎?有哪些常見的危險端口呢?如何解決上述問題呢?接下來讓我們一起學習!
二、資源裝備
1.物理主機一個。
2.整裝待發的小白一個。
三、戰略安排
3.1 打開dos命令行模式,如下圖所示。
步驟:Win+R/cmd/Enter
3.2 打開Windows防火墻,如下圖所示。
命令:firewall.cpl
3.3 如下圖所示,防火墻打開成功。
3.4 配置出入站規則,如下圖所示。
步驟:進入高級設置/根據需求選擇出入站規則
3.5 配置出入站規則,如下圖所示,舉例說明如何新建入站規則。
步驟:右鍵入站規則/新建規則/按照需求選擇規則類型/按照需求選擇協議跟端口(可以同時設置多個端口)/根據需求選擇操作類型/自定義規則名稱&&設置規則描述/規則設置完成
3.6 規則新建完成,如下圖所示。
3.7 對新建的規則進行相應的操作,如下圖所示。
步驟:右鍵相應的規則/選擇相應的操作
3.8 出站規則的設置,參照上述入站規則的設置進行相應的操作,如下圖簡單描述。
3.9 IP安全策略關閉危險端口
3.9.1 打開本地安全策略,如下圖所示。
命令:mscpol
3.9.2 成功打開本地安全策略,如下圖所示。
3.9.3 設置IP安全策略,如下圖所示。
步驟:右鍵IP安全策略/創建IP安全策略/下一步
3.9.4 命名IP安全組策略名稱,如下圖所示。
3.9.5 配置IP篩選列表,如下圖所示。
步驟:IP篩選列表/添加/自定義IP篩選列表名稱/添加
3.9.5.1 添加地址,如下圖所示。
添加原則:根據個人需求進行相應的源地址與目的地址添加。
3.9.5.2 添加協議,如下圖所示,根據個人需求添加相應的協議。
3.9.6 篩選器操作添加,如下圖所示。
步驟:添加/安全方法/根據需求選擇安全方法/應用/確定/在IP篩選器列表選擇剛才新建的IP篩選器/應用/確定
如下圖所示
3.9.7 如下圖所示,配置完成
indows為了方便大家的使用,默認開了很多的端口,不過,還是有安全專家建議關閉幾個端口,稍微了解了下,感覺那幾個端口平時自己也用不上,留在或多或少也是個隱患,還是關掉好。
1、在“控制面板”-“系統和安全”-“Windows防火墻”,里面點擊“打開或關閉Windows防火墻”,保持防火墻開啟狀態。如下圖:
然后點擊左側的“高級設置”,并點擊“新建規則”,如下圖:
然后,我們在這里勾選“端口”,如下圖:
然后在這里選擇協議和端口,如果要禁用UDP則需要重新操作一遍。如下圖:
然后,我們勾選“阻止連接”,如下圖:
然后,繼續點擊下一步。如圖:
然后我們創建一個名稱,如下圖:
至此,我們就成功添加了禁止端口。如下圖:
三、通過IP組策略來關閉Windows不常用端口。
1、檢查端口開放情況(是否開放了137、139、445、3389端口),本機cmd命令netstat –an 查看端口監聽情況,
2、然后在服務器本機以外的電腦telnet 目標主機端口,如:telnet 10.1.16.143 445(你要排查的服務器的IP地址,445表示端口),如果出現無法打開到主機連接,說明在外部無法訪問該端口。
如果處于開放狀態則telnet 進入,必須對該端口進行IP策略限制和防火墻限制。
一、通過Windows防火墻禁用端口:
1、點擊 “控制面板-Windows防火墻”,確保啟用了Windows防火墻。在左邊欄點擊“高級設置”,系統會自動彈出Windows防火墻高級配置窗口。
2、點擊“入站規則”,然后再點“新建規則…”,在向導窗口中選擇要創建的規則類型,這里選“端口”,點擊“下一步”。
3、接下來選擇你要禁用的網絡類型(TCP或者UDP),在“特定本地端口”寫入你要禁用的端口,例如“445”,然后下一步。選擇“阻止連接”,下一步,應用規則看情況修改,可以維持不變,繼續下一步,填寫名稱“禁用445端口”,點擊完成。
4、到這里應該就完成了,默認情況下新建的規則會直接啟用。如果沒有,那么右鍵 “啟用規則”即可。
二、通過IP安全策略禁用端口:
1、首先,Win+R打開運行,輸入gpedit.msc進入組策略編輯器。
2、在左側邊欄中,依次選取 “Windows 設置- 安全設置- IP安全策略,在 本地計算機”
然后單擊“完成”,編輯屬性處“勾選上”。
8、在隨后跳出的封禁端口屬性窗口中,單擊添加。
需要注意的是不要勾選右下角的“使用添加向導”
9、然后在”新規則 屬性”窗口中,單擊左下角的”添加”
在IP篩選器列表窗口中,單擊右側的添加按鈕,需要注意的是這里也不要點擊右下角的”使用添加向導”
在彈出的IP篩選器屬性窗口的地址選項卡中,原地址選擇“任何IP地址”,目標地址選擇“我的IP地址”
12、然后選擇協議選項卡,選擇協議類型為:TCP,設置IP協議端口為”從任意端口”“到此端口”:445,并單擊確定。
13、然后在IP篩選器列表中,修改篩選器名稱為端口號,單擊確定。
重復操作,添加135、137、138、139規則
然后在新規則屬性中,單擊篩選器操作選項卡,單擊下方的添加,并且不要勾選右側的使用添加向導。
在新篩選器操作屬性中,選擇“阻止”,并切換到常規選項卡,將名稱改為阻止。
單擊確定,回到新規則屬性窗口中的篩選器操作,勾選剛才建立的“阻止”。
切換到IP篩選器列表,勾選剛才建立的“445”。單擊“應用”,然后單擊“確定”。
在“封禁端口”頁面再次選擇添加。
選擇IP篩選器列表中的“135”,
21、選擇篩選器操作頁面的“阻止”
22、點擊頁面下方的確定。
22、循環上述操作,把445、135端口都加入進去,如果命令行的端口檢測中137、138、139端口也在監聽,就需要把相應的端口也加入進去,如果沒有開放就不要增加。
這種方法只是阻止了外部的端口訪問,并不是關閉監聽。
所以通過netstat仍然能夠看到該端口。
在IP安全策略處于分配狀態下,通過telnet測試,無法連接該端口。
在IP安全策略處于未分配狀態下,通過telnet測試,可以直接連接該端口。
出于安全的考慮,建議兩種方法都使用了,防火墻禁止了端口,ip組策略也禁止了端口。
大家都知道,IP地址用于標識網絡中的計算機。TCP/IP協議把一個IP地址和另一個IP地址連接起來,形成了網絡。一臺計算機上通常運行著很多服務。例如,允許客戶訪問網頁的Web服務,允許管理員配置服務器的SSH服務,或者用于傳輸文件的FTP服務等。那么,怎么區分同一臺計算機上的不同服務呢?
為此,人們設計了端口的概念。端口由數字指定,即端口號。計算機上每種類型的服務都要提供一個端口,等待通信對端從動態端口發來的數據包。例如,Web服務常用的端口號是80(用于HTTP)或443(用于HTTPS)。當您瀏覽網頁時,您的瀏覽器隨機選擇一個端口,向Web服務器的80端口或者443端口發送數據包。一臺計算機通過端口發送數據包,另一臺計算機通過端口接收數據包。通信雙方的端口是數據包發送和接收的終點。
快遞員投遞包裹時,首先根據街道地址找到小區,然后在這個小區中根據門牌號找到收件人,把包裹送達。街道地址和門牌號構成了完整的投遞地址。在計算機的世界,如果我們把IP地址類比為街道地址,把服務類比為快遞員,那么端口就是門牌號。IP地址和端口構成了完整的通信地址,用于識別數據包的目的地。
開放端口(Open ports)是指主動接收數據包的端口。相應地,拒絕所有數據包的端口是關閉的端口(Closed ports)。如前所述,當計算機需要對外提供服務時,需要開放特定的端口。畢竟,你要接收包裹,就得給快遞員開門。
在特定端口上啟用了某個服務以后,該端口將僅供此服務使用,不能再用于其他目的(服務)。端口號分為三類。
端口號與服務的分配關系,可參考IANA網站。
嚴格意義上講,開放端口并不一定存在風險,任何一個特定的端口也并不一定比其他端口更安全或者更危險。
端口本身是中立的。開放端口是否存在風險,由使用端口的服務、管理服務的人來決定。當使用端口的服務存在漏洞、沒有及時打補丁,或者服務配置錯誤、安全策略不合理時,開放端口是危險的。
網絡攻擊通常從端口掃描開始。攻擊者將從開放端口的服務中尋找安全漏洞,并通過成功的漏洞利用非法訪問未授權的資源。例如:SMB協議用于組織內部共享文件夾、打印機和串行端口。由于協議本身設計存在缺陷,SMB協議被稱為永恒之藍的零日漏洞利用,導致WannaCry勒索病毒大爆發。在互聯網上公開此類服務,必將存在安全風險。除了查找漏洞,攻擊者還經常采用暴力破解。例如,針對RDP的暴力破解經常被用于勒索軟件攻擊,是最常見的入侵手法之一。
如果說開放端口有風險的話,那么這個風險就是,開放端口容易受到攻擊。開放任何端口都會增加攻擊面,并增加由于漏洞、配置錯誤和管理不足而受到威脅的可能性。
端口是為通信而存在的。組織應實施必要的審核程序,以確定是否開放端口。如果有運行某個服務的需求,開放相應的端口是有意義的。這時,應從合法渠道獲取應用軟件、及時檢查安全漏洞并實施安全加固措施,然后再正式開放端口。
如前所述,開放任何端口都會增加攻擊面,并增加受到威脅的可能性。如果沒有合理的通信需求,不要開放端口。
組織內部網絡中有大量計算機,每臺計算機上都可能開放了非必要的端口。你可以逐個計算機去關閉端口,也可以把這項工作交給防火墻。防火墻通常部署在網絡的出口,在防火墻上可以阻斷此類端口與外部網絡的通信。想象你有一個四合院(網絡),你可以關閉每個房間(計算機)的門窗(端口),你也可以依賴院墻,然后守好四合院的大門。
根據風險等級,端口可以簡單分類如下,風險等級依次降低。
常見的高危端口主要有以下五類,表1-1提供了常見高危端口的不完全列表,供參考。
表1-1 常見高危端口(不完全列表)
端口 | 協議 | 服務 | 建議處理動作 |
遠程管理服務 | |||
20、21 | TCP | FTP(文件傳輸協議) | 始終封禁,使用SSHv2替代,或者部署運維審計系統 |
22 | TCP | SSH(安全外殼協議) | 建議封禁,如必須使用,請務必使用SSHv2版本并采用強認證 |
23 | TCP | Telnet(遠程終端協議) | 始終封禁,使用SSHv2替代,或者部署運維審計系統 |
69 | TCP | TFTP(簡單文件傳送協議) | 始終封禁,使用SSHv2替代,或者部署運維審計系統 |
3389 | TCP | RDP(遠程桌面協議) | 始終封禁,如需遠程運維,請部署運維審計系統 |
5900-5902 | TCP | VNC(虛擬網絡控制臺) | 始終封禁,如需遠程運維,請部署運維審計系統 |
512-514 | TCP | Linux rexec(遠程登錄) | 始終封禁,如需遠程運維,請部署運維審計系統 |
873 | TCP | Rsync(數據鏡像備份工具) | 始終封禁,如需遠程運維,請部署運維審計系統 |
局域網服務 | |||
53 | TCP、UDP | DNS(域名系統) | 始終封禁 |
111、2049 | TCP | NFS(網絡文件系統) | 始終封禁 |
135 | TCP、UDP | RPC(遠程過程調用) | 始終封禁 |
137 | TCP、UDP | NBNS(NetBIOS名字服務) | 始終封禁 |
138 | TCP、UDP | NBDS(NetBIOS數據報文服務) | 始終封禁 |
139 | TCP、UDP | NBSS(NetBIOS會話服務) | 始終封禁 |
445 | TCP、UDP | SMB(網絡文件共享協議) | 始終封禁 |
161 | TCP、UDP | SNMP(簡單網絡管理協議) | 始終封禁 |
389 | TCP、UDP | LDAP(輕量目錄訪問協議) | 始終封禁 |
互聯網服務 | |||
25 | TCP | SMTP(簡單郵件傳輸協議) | 始終封禁,使用SMTPS替代 |
110 | TCP | POP3(郵局協議版本3) | 始終封禁,使用POP3S替代 |
143 | TCP | IMAP(郵件訪問協議) | 始終封禁,使用IMAPS替代 |
80、8000、8080、8888 | TCP | HTTP(超文本傳輸協議) | 建議封禁,使用HTTPS替代 |
數據庫 | |||
1433 | TCP | SQL Server(數據庫管理系統) | 始終封禁 |
1521 | TCP | Oracle(甲骨文數據庫) | 始終封禁 |
3306 | TCP | MySQL(數據庫) | 始終封禁 |
5000 | TCP | Sybase/DB2(數據庫) | 始終封禁 |
5432 | TCP | PostgreSQL(數據庫) | 始終封禁 |
6379 | TCP | Redis(數據庫) | 始終封禁 |
27017-27018 | TCP | MongoDB(數據庫) | 始終封禁 |
在封禁端口之前,請務必確認端口上未承載正常運行的服務。如有業務需要,請為該業務設置例外策略,并嚴格限制可訪問的源IP地址和源用戶。
下面以封禁135、137、138、139、445、3389為例,介紹安全策略的配置方法。
任何連接互聯網的服務都需要打開特定的端口才能正常工作。這些端口都可能成為攻擊者的目標。那么,如何保護這些風險端口?您可以從以下幾個方面來實施安全加固措施。
非加密協議使用明文傳輸數據包,攻擊者可以使用Wireshark等工具輕松捕獲網絡流量,查看明文傳輸的密碼等敏感信息。因此,請使用加密協議替代非加密協議,例如,使用SSH替代Telnet、FTP/TFTP,使用SSL加密HTTP、郵件協議,使用VPN保護通信等等。
使用最新的協議和軟件版本。很多協議的早期版本存在安全隱患。例如,SSHv1采用了不安全的密鑰交換算法,應將SSH服務配置為僅接受SSHv2連接。類似的,所有的服務和應用程序都應采用官方發布的正式版本,并保證及時更新。過時的版本、已經停止維護的版本,都可能存在公開的已知漏洞,且得不到及時的修復。
很多入侵是從破解用戶密碼開始的。采用強密碼策略可以防止弱密碼,避免密碼泄露,幫助組織更安全地抵御暴力破解。不同應用軟件支持的密碼策略各不相同,通常包括以下方面。
強認證(strong authentication)是融合了兩種以上不同類型的身份驗證因素的認證策略,可以提高身份驗證的安全性。最常見的強認證策略就是雙因子認證,用戶在登錄時不僅要提供用戶名/密碼,還需要提供與之綁定的物品(比如網上銀行普遍采用USB Key),或者動態口令(比如互聯網應用普遍采用短信驗證碼)。
把網絡劃分為不同等級的安全區域,并部署安全設備來檢查區域之間的通信。例如:
*******************************************************************************************************
防火墻通過協議和端口來定義服務,所以,如果想禁止訪問指定端口,只需在安全策略中配置預定義或自定義服務匹配條件,動作指定為禁止即可。
防火墻通過WEB配置策略限制端口訪問的方法如下:
1. 在防火墻的WEB界面中單擊“策略>安全策略”,然后單擊“新建”,新建安全策略。
2. 選擇“服務”匹配條件。既可以選擇預定義服務,也可以自定義服務然后在安全策略中引用。
3. 根據需要配置其他匹配條件,動作配置為“禁止”。
可通過CLI配置策略限制自定義端口訪問的示例如下:
# 禁止訪問tcp 2000 端口。
system-view
[sysname] ip service-set set1 type object
[sysname-object-service-set-set1] service protocol tcp destination-port 2000 //創建自定義服務
[sysname-object-service-set-set1] quit
[sysname] security-policy
[sysname] rule name policy_sec
[sysname-policy-security-rule-policy_sec] service set1 //安全策略中引用自定義服務
[sysname-policy-security-rule-policy_sec] action deny