眾所周知,計(jì)算機(jī)之間通信是通過端口進(jìn)行的,例如你訪問一個(gè)網(wǎng)站時(shí),Windows就會在本機(jī)開一個(gè)端口(例如1025端口),然后去連接遠(yuǎn)方網(wǎng)站服務(wù)器的一個(gè)端口,別人訪問你時(shí)也是如此。默認(rèn)狀態(tài)下,Windows會在你的電腦上打開許多服務(wù)端口,黑客常常利用這些端口來實(shí)施入侵,因此掌握端口方面的知識,是安全上網(wǎng)必備的技能
一、常用端口及其分類
電腦在Internet上相互通信需要使用TCP/IP協(xié)議,根據(jù)TCP/IP協(xié)議規(guī)定,電腦有256×256(65536)個(gè)端口,這些端口可分為TCP端口和UDP端口兩種。如果按照端口號劃分,它們又可以分為以下兩大類
1.系統(tǒng)保留端口(從0到1023)
這些端口不允許你使用,它們都有確切的定義,對應(yīng)著因特網(wǎng)上常見的一些服務(wù),每一個(gè)打開的此類端口,都代表一個(gè)系統(tǒng)服務(wù),例如80端口就代表Web服務(wù)。21對應(yīng)著FTP,25對應(yīng)著SMTP、110對應(yīng)著POP3等。
2.動態(tài)端口(從1024到65535)
當(dāng)你需要與別人通信時(shí),Windows會從1024起,在本機(jī)上分配一個(gè)動態(tài)端口,如果1024端口未關(guān)閉,再需要端口時(shí)就會分配1025端口供你使用,依此類推。
但是有個(gè)別的系統(tǒng)服務(wù)會綁定在1024到49151的端口上,例如3389端口(遠(yuǎn)程終端服務(wù))。從49152到65535這一段端口,通常沒有捆綁系統(tǒng)服務(wù),允許Windows動態(tài)分配給你使用。
二、如何查看本機(jī)開放了哪些端口
在默認(rèn)狀態(tài)下,Windows會打開很多“服務(wù)端口”,如果你想查看本機(jī)打開了哪些端口、有哪些電腦正在與本機(jī)連接,可以使用以下兩種方法。
1.利用netstat命令
Windows提供了netstat命令,能夠顯示當(dāng)前的 TCP/IP 網(wǎng)絡(luò)連接情況,注意:只有安裝了TCP/IP協(xié)議,才能使用netstat命令。
操作方法:單擊“開始→程序→附件→命令提示符”,進(jìn)入Dos窗口,輸入命令 netstat -na 回車,于是就會顯示本機(jī)連接情況及打開的端口。其中Local Address代表本機(jī)IP地址和打開的端口號(圖中本機(jī)打開了135端口),F(xiàn)oreign Address是遠(yuǎn)程計(jì)算機(jī)IP地址和端口號,State表明當(dāng)前TCP的連接狀態(tài),圖中LISTENING是監(jiān)聽狀態(tài),表明本機(jī)正在打開135端口監(jiān)聽,等待遠(yuǎn)程電腦的連接。
如果你在DOS窗口中輸入了netstat -nab命令,還將顯示每個(gè)連接都是由哪些程序創(chuàng)建的。上圖2中本機(jī)在135端口監(jiān)聽,就是由svchost.exe程序創(chuàng)建的,該程序一共調(diào)用了5個(gè)組件(WS2_32.dll、RPCRT4.dll、rpCSS.dll、svchost.exe、ADVAPI32.dll)來完成創(chuàng)建工作。如果你發(fā)現(xiàn)本機(jī)打開了可疑的端口,就可以用該命令察看它調(diào)用了哪些組件,然后再檢查各組件的創(chuàng)建時(shí)間和修改時(shí)間,如果發(fā)現(xiàn)異常,就可能是中了木馬。
2.使用端口監(jiān)視類軟件
與netstat命令類似,端口監(jiān)視類軟件也能查看本機(jī)打開了哪些端口,這類軟件非常多,著名的有TcpvIEw、Port Reporter、綠鷹PC萬能精靈、網(wǎng)絡(luò)端口查看器等,推薦你上網(wǎng)時(shí)啟動Tcpview,密切監(jiān)視本機(jī)端口連接情況,這樣就能嚴(yán)防非法連接,確保自己的網(wǎng)絡(luò)安全.
三、關(guān)閉本機(jī)不用的端口
默認(rèn)情況下Windows有很多端口是開放的,一旦你上網(wǎng),黑客可以通過這些端口連上你的電腦,因此你應(yīng)該封閉這些端口。主要有:TCP139、445、593、1025 端口和 UDP123、137、138、445、1900端口、一些流行病毒的后門端口(如 TCP 2513、2745、3127、6129 端口),以及遠(yuǎn)程服務(wù)訪問端口3389。關(guān)閉的方法是
①137、138、139、445端口:它們都是為共享而開放的,你應(yīng)該禁止別人共享你的機(jī)器,所以要把這些端口全部關(guān)閉,方法是:單擊“開始→控制面板→系統(tǒng)→硬件→設(shè)備管理器”,單擊“查看”菜單下的“顯示隱藏的設(shè)備”,雙擊“非即插即用驅(qū)動程序”,找到并雙擊NetBios over Tcpip,在打開的“NetBios over Tcpip屬性”窗口中,單擊選中“常規(guī)”標(biāo)簽下的“不要使用這個(gè)設(shè)備(停用)”,單擊“確定”按鈕后重新啟動后即可。
②關(guān)閉UDP123端口:單擊“開始→設(shè)置→控制面板”,雙擊“管理工具→服務(wù)”,停止Windows Time服務(wù)即可。關(guān)閉UDP 123端口,可以防范某些蠕蟲病毒。
③關(guān)閉UDP1900端口:在控制面板中雙擊“管理工具→服務(wù)”,停止SSDP Discovery Service 服務(wù)即可。關(guān)閉這個(gè)端口,可以防范DDos攻擊。
④其他端口:你可以用網(wǎng)絡(luò)防火墻來關(guān)閉,或者在“控制面板”中,雙擊“管理工具→本地安全策略”,選中“IP 安全策略,在本地計(jì)算機(jī)”,創(chuàng)建 IP 安全策略來關(guān)閉。
四、重定向本機(jī)默認(rèn)端口,保護(hù)系統(tǒng)安全
如果本機(jī)的默認(rèn)端口不能關(guān)閉,你應(yīng)該將它“重定向”。把該端口重定向到另一個(gè)地址,這樣即可隱藏公認(rèn)的默認(rèn)端口,降低受破壞機(jī)率,保護(hù)系統(tǒng)安全。
例如你的電腦上開放了遠(yuǎn)程終端服務(wù)(Terminal Server)端口(默認(rèn)是3389),可以將它重定向到另一個(gè)端口(例如1234),方法是
1.在本機(jī)上(服務(wù)器端)修改
定位到下列兩個(gè)注冊表項(xiàng),將其中的 PortNumber,全部改成自定義的端口(例如1234)即可
2.在客戶端上修改
依次單擊“開始→程序→附件→通訊→遠(yuǎn)程桌面連接”,打開“遠(yuǎn)程桌面連接”窗口,
杭州代開發(fā)票單擊“選項(xiàng)”按鈕擴(kuò)展窗口,填寫完相關(guān)參數(shù)后,單擊“常規(guī)”下的“另存為”按鈕,將該連接參數(shù)導(dǎo)出為.rdp文件。用記事本打開該文件,在文件最后添加一行:server port:i:1234 (這里填寫你服務(wù)器自定義的端口)。以后,直接雙擊這個(gè).rdp 文件即可連接到服務(wù)器的這個(gè)自定義端口了。,