上次說了端口號相關的內容,這次聊聊「端口限制」的事。
經常看到關于安全的書籍上會說「不要開放多余的端口」,那么,如何限制端口才好呢?
實際,端口限制的方法大體上分的話有2種。
其一,「通過應用程序來處理」。試著一下考慮「打開端口」本來是怎么一回事。比如,啟動Apache之類的Web服務程序的時候,(如果沒有特別的設置)會打開Well known ports中的80號端口,
然后通過80號端口開始等待通信。
所以,如果關閉了服務端應用程序的話,端口也會自動被關閉。「不要開放多余的端口」也就是「不要啟動多余的應用程序」。
其二,「限制通信」。代表性的方法就是「過濾數據包」。通過「過濾數據包」,可以實現關閉特定端口的通信,特定ip的通信。
Linux中的「iptables」命令就可以過濾數據包。通過iptables命令,可以詳細的指定攔截何種通信,所以可以實現「攔截某個主機的特定端口」。
調查「哪個端口是打開的」?可以使用「netstat」,「lsof」,「nmap」等命令。這里不再介紹這些命令的詳細信息,簡單來說:
通過「netstat」和「lsof」可以知道「本機上打開了哪些端口?」
通過「nmap」可以知道「其他主機上打開了哪些端口?」
過濾數據包的時候,需要注意的是通過netstat和lsof命令來看,有時候端口是空閑的。
新聞熱點
疑難解答