標籤:ports prot 執行 protocol udp協議 open col service 掃描
import nmap # 匯入 nmap.py 模組 nm = nmap.PortScanner() # 執行個體化nmap.PortScanner對象 nm.scan(‘127.0.0.1‘, ‘22-443‘) # 掃描127.0.0.1,連接埠號碼從22至443 nm.command_line() # 擷取當前執行掃描的命令列: nmap -oX - -p 22-443 127.0.0.1 nm.scaninfo() # 擷取nmap掃描資訊 {‘tcp‘: {‘services‘: ‘22-443‘, ‘method‘: ‘connect‘}} nm.all_hosts() # 擷取所有已經掃描的主機 nm[‘127.0.0.1‘].hostname() # 擷取一個主機127.0.0.1的主機名稱,通常為使用者記錄 nm[‘127.0.0.1‘].hostnames() # 擷取主機127.0.0.1的主機名稱列表,返回一個字典類型 # [{‘name‘:‘hostname1‘, ‘type‘:‘PTR‘}, {‘name‘:‘hostname2‘, ‘type‘:‘user‘}]nm[‘127.0.0.1‘].state() # 擷取主機127.0.0.1的狀態 (up|down|unknown|skipped) nm[‘127.0.0.1‘].all_protocols() # 擷取執行的協議 [‘tcp‘, ‘udp‘] 包含 (ip|tcp|udp|sctp) nm[‘127.0.0.1‘][‘tcp‘].keys() # 擷取tcp協議所有的連接埠號碼 nm[‘127.0.0.1‘].all_tcp() # 擷取tcp協議所有的連接埠號碼 (按照連接埠號碼大小進行排序) nm[‘127.0.0.1‘].all_udp() # 擷取udp協議所有的連接埠號碼 (按照連接埠號碼大小進行排序) nm[‘127.0.0.1‘].all_sctp() # 擷取sctp協議所有的連接埠號碼 (按照連接埠號碼大小進行排序) nm[‘127.0.0.1‘].has_tcp(22) # 主機127.0.0.1是否有關於22連接埠的任何資訊 nm[‘127.0.0.1‘][‘tcp‘][22] # 擷取主機127.0.0.1關於22連接埠的資訊 nm[‘127.0.0.1‘].tcp(22) # 擷取主機127.0.0.1關於22連接埠的資訊 nm[‘127.0.0.1‘][‘tcp‘][22][‘state‘] # 擷取主機22連接埠的狀態 (open)
python下nmap的庫的基本使用方法