yum -y install nmap安全
首先,簡單列舉一個掃描端口的運用:網絡
nmap –sT –sV –p80,443,8080 –P0 –n IPssh
說明:ide
-sT,說明是TCP協議;工具
-sV,說明是顯示詳情測試
-p後面跟指定的掃描端口;spa
-n 後面對應的IP操作系統
一,簡介命令行
nmap是一個網絡鏈接端掃描軟件,用來掃描網上電腦開放的網絡鏈接端。肯定哪些服務運行在哪些鏈接端,而且推斷計算機運行哪一個操做系統(這是亦稱 fingerprinting)。它是網絡管理員必用的軟件之一,以及用以評估網絡系統保安。日誌
正如大多數被用於網絡安全的工具,nmap 也是很多***及駭客(又稱腳本小子)愛用的工具 。系統管理員能夠利用nmap來探測工做環境中未經批准使用的服務器,可是***會利用nmap來蒐集目標電腦的網絡設定,從而計劃***的方法。
二,功能
其基本功能有三個,一是探測一組主機是否在線;其次是掃描 主機端口,嗅探所提供的網絡服務;還能夠推斷主機所用的操做系統 。
Nmap可用於掃描僅有兩個節點的LAN,直至500個節點以上的網絡。Nmap 還容許用戶定製掃描技巧。一般,一個簡單的使用ICMP協議的ping操做能夠知足通常需求;也能夠深刻探測UDP或者TCP端口,直至主機所 使用的操做系統;還能夠將全部探測結果記錄到各類格式的日誌中, 供進一步分析操做。
進行ping掃描,打印出對掃描作出響應的主機,不作進一步測試(如端口掃描或者操做系統探測):
nmap -sP 192.168.1.0/24
nmap -sL 192.168.1.0/24
探測目標主機開放的端口,能夠指定一個以逗號分隔的端口列表(如-PS22,23,25,80):
nmap -PS 192.168.1.234
使用UDP ping探測主機:
nmap -PU 192.168.1.0/24
使用頻率最高的掃描選項:SYN掃描,又稱爲半開放掃描,它不打開一個徹底的TCP鏈接,執行得很快:
nmap -sS 192.168.1.0/24
當SYN掃描不能用時,TCP Connect()掃描就是默認的TCP掃描:
nmap -sT 192.168.1.0/24
UDP掃描用-sU選項,UDP掃描發送空的(沒有數據)UDP報頭到每一個目標端口:
nmap -sU 192.168.1.0/24
肯定目標機支持哪些IP協議 (TCP,ICMP,IGMP等):
nmap -sO 192.168.1.19
nmap -O 192.168.1.19
nmap -A 192.168.1.19
另外,nmap官方文檔中的例子:
nmap -v scanme.
這個選項掃描主機scanme中 全部的保留TCP端口。選項-v啓用細節模式。
nmap -sS -O scanme./24
進行祕密SYN掃描,對象爲主機Saznme所在的「C類」網段 的255臺主機。同時嘗試肯定每臺工做主機的操做系統類型。由於進行SYN掃描 和操做系統檢測,這個掃描須要有根權限。
nmap -sV -p 22,53,110,143,4564 198.116.0-255.1-127
進行主機列舉和TCP掃描,對象爲B類188.116網段中255個8位子網。這 個測試用於肯定系統是否運行了sshd、DNS、imapd或4564端口。若是這些端口 打開,將使用版本檢測來肯定哪一種應用在運行。
nmap -v -iR 100000 -P0 -p 80
隨機選擇100000臺主機掃描是否運行Web服務器(80端口)。由起始階段 發送探測報文來肯定主機是否工做很是浪費時間,並且只需探測主機的一個端口,因 此使用-P0禁止對主機列表。
nmap -P0 -p80 -oX logs/pb-port80scan.xml -oG logs/pb-port80scan.gnmap 216.163.128.20/20
掃描4096個IP地址,查找Web服務器(不ping),將結果以Grep和XML格式保存。
host -l | cut -d -f 4 | nmap -v -iL -
進行DNS區域傳輸,以發現中的主機,而後將IP地址提供給 Nmap。上述命令用於GNU/Linux -- 其它系統進行區域傳輸時有不一樣的命令。
其餘選項:
-p (只掃描指定的端口)
單個端口和用連字符表示的端口範 圍(如 1-1023)均可以。當既掃描TCP端口又掃描UDP端口時,能夠經過在端口號前加上T: 或者U:指定協議。 協議限定符一直有效直到指定另外一個。 例如,參數 -p U:53,111,137,T:21-25,80,139,8080 將掃描UDP 端口53,111,和137,同時掃描列出的TCP端口。
-F (快速 (有限的端口) 掃描)
經常使用掃描類型
解開Nmap命令行版的壓縮包以後,進入Windows的命令控制檯,再轉到安裝Nmap的目錄(若是常常要用Nmap,最好把它的路徑加入到PATH環境變量)。不帶任何命令行參數
。GUI版的功能基本上和命令行版本同樣,鑑於許多人更喜歡用命令行版本,本文後面的說明就以命令行版本爲主。 下面是Nmap支持的四種最基本的掃描方式:
⑴ TCP connect() 端口掃描(-sT參數)。
⑵ TCP同步(SYN)端口掃描(-sS參數)。
⑶ UDP 端口掃描(-sU參數)。
⑷ Ping掃描(-sP參數)。
若是要勾畫一個網絡的總體狀況,Ping掃描和TCP SYN掃描最爲實用。Ping掃描經過發送ICMP (Internet Control Message Protocol,Internet控制消息協議)迴應請求數據包和TCP應答(Acknowledge,簡寫ACK)數據包,肯定主機的狀態,很是適合於檢測指定網段內正在運行的主機數量。
TCP SYN掃描一會兒不太好理解,但若是將它與TCP connect()掃描比較,就很容易看出這種掃描方式的特色。在TCP connect()掃描中,掃描器利用操做系統自己的系統調用打開一個完整的TCP鏈接——也就是說,掃描器打開了兩個主機之間的完整握手過程(SYN,SYN-ACK,和ACK)。一次完整執行的握手過程代表遠程主機端口是打開的。
TCP SYN掃描建立的是半打開的鏈接,它與TCP connect()掃描的不一樣之處在於,TCP SYN掃描發送的是復位(RST)標記而不是結束ACK標記(即,SYN,SYN-ACK,或RST):若是遠程主機正在監聽且端口是打開的,遠程主機用SYN-ACK應答,Nmap發送一個RST;若是遠程主機的端口是關閉的,它的應答將是RST,此時Nmap轉入下一個端口。