一、概要
通過python-nmap實現一個高效的端口掃描工具,與定時作業crontab及郵件告警結合,可以很好地幫助我們及時發現異常開放的高危端口。當然,該工具也可以作為業務服務端口的可用性探測,例如掃描192.168.56.10-25網段Web服務端口80是否處於open狀態。實踐所采用的scan()方法的arguments參數指定為"-v -PE -p +端口",-v表示啟用細節模式,可以返回非up狀態主機清單;-PE表示采用TCP同步掃描(TCP SYN)方式;-p指定掃描端口范圍。程序輸出部分采用三個for循環體,第一層遍歷掃描主機,第二層為遍歷協議,第三層為遍歷端口,最后輸出主機狀態。
二、代碼實現