1绩聘、tcpdump抓包
tcpdump是一個(gè)用于截取網(wǎng)絡(luò)分組,并輸出分組內(nèi)容的工具荞雏。憑借強(qiáng)大的功能和靈活的截取策略胎撤,使其成為類UNIX系統(tǒng)下用于網(wǎng)絡(luò)分析和問題排查的首選工具
tcpdump提供了源代碼,公開了接口府寒,因此具備很強(qiáng)的可擴(kuò)展性魁衙,對(duì)于網(wǎng)絡(luò)維護(hù)和入侵者都是非常有用的工具
tcpdump 支持針對(duì)網(wǎng)絡(luò)層、協(xié)議株搔、主機(jī)剖淀、網(wǎng)絡(luò)或端口的過濾,并提供and纤房、or纵隔、not等邏輯語句來幫助你去掉無用的信息
[root@yangdan]# yum search tcpdump
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile * base: mirrors.yun-idc.com * extras: mirrors.yun-idc.com * updates: mirrors.yun-idc.com ======================================================================= N/S Matched: tcpdump ======================================================================== tcpdump.x86_64 : A network traffic monitoring tool
Name and summary matches only, use "search all" for everything.
[root@yangdan]# which tcpdump /usr/sbin/tcpdump
[root@yangdan]# tcpdump -h
tcpdump version 4.1-PRE-CVS_2015_07_23
libpcap version 1.4.0 Usage: tcpdump [-aAdDefhIJKlLnNOpqRStuUvxX] [ -B size ] [ -c count ]
[ -C file_size ] [ -E algo:secret ] [ -F file ] [ -G seconds ]
[ -i interface ] [ -j tstamptype ] [ -M secret ]
[ -P in|out|inout ]
[ -r file ] [ -s snaplen ] [ -T type ] [ -w file ]
[ -W filecount ] [ -y datalinktype ] [ -z command ]
[ -Z user ] [ expression ]</pre>
[root@yangdan]# yum search wireshark
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile * base: mirrors.yun-idc.com * extras: mirrors.yun-idc.com * updates: mirrors.yun-idc.com ================================================ N/S Matched: wireshark ================================================ wireshark-devel.i686 : Development headers and libraries for wireshark
wireshark-devel.x86_64 : Development headers and libraries for wireshark
wireshark-gnome.x86_64 : Gnome desktop integration for wireshark and wireshark-usermode
wireshark.i686 : Network traffic analyzer
wireshark.x86_64 : Network traffic analyzer
Name and summary matches only, use "search all" for everything.
安裝:
[root@]# yum install wireshark* -y
[root@yangdan]# which wireshark /usr/sbin/wireshark
[root@yangdan]# rpm -qa|grep wireshark
wireshark-devel-1.8.10-17.el6.x86_64
wireshark-1.8.10-17.el6.x86_64
wireshark-gnome-1.8.10-17.el6.x86_64
保存tcpdump抓包結(jié)果
[root@yangdan]# tcpdump -i eth0 -w dump.pcap -i #是指定要抓取的網(wǎng)卡 -w #指定結(jié)果保存的位置
[root@bass Desktop]# tcpdump -i eth0 -w dump.pcap -v
tcpdump: WARNING: eth0: no IPv4 address assigned
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes ^C189 packets captured 189 packets received by filter 0 packets dropped by kernel
-v#主要是為了得到Got 15這個(gè)數(shù),當(dāng)想要停止的時(shí)候炮姨,按下ctrl + c
[root@bass Desktop]# ll -h dump.pcap -rw-r--r--. 1 tcpdump tcpdump 18K Aug 30 13:19 dump.pcap
在wireshark中打開:
[root@yangdan]# wireshark dump.pcap #linux下查看
2捌刮、端口號(hào)
http:80 ftp:21 ssh:22 telnet:23 smtp:25 dns udp:53 ntp udp 123
tcpdump 抓包參數(shù)
- -n 不把ip解析成主機(jī)名
- -nn 不把端口解析成應(yīng)用層協(xié)議
- -c 制定抓包的數(shù)量
- -S 不把隨機(jī)序列和確認(rèn)值解析成絕對(duì)值
[root@rsnc-backup ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet 以太網(wǎng)
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none dhcp自動(dòng),·還是手動(dòng)靜態(tài)ip
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth0 網(wǎng)卡名
DEVICE=eth0 設(shè)備名
ONBOOT=yes 開機(jī)自動(dòng)連接網(wǎng)絡(luò)
IPADDR=10.0.0.41
PREFIX=24
GATEWAY=10.0.0.254
DNS1=10.0.0.254
IPV6_PRIVACY=no
3剑令、ping測試網(wǎng)絡(luò)連通
它是用來檢查網(wǎng)絡(luò)是否通暢或者網(wǎng)絡(luò)連接速度的命令糊啡。作為一個(gè)生活在網(wǎng)絡(luò)上的管理員或者黑客來說,ping 命令是第一個(gè)必須掌握的 DOS 命令吁津,它所利用的原理是這樣的:網(wǎng)絡(luò)上的機(jī)器都有唯一確定的IP地址棚蓄,我們給目標(biāo) IP 地址發(fā)送一個(gè)數(shù)據(jù)包,對(duì)方就要返回一個(gè)同樣大小的數(shù)據(jù)包碍脏,根據(jù)返回的數(shù)據(jù)包我們可以確定目標(biāo)主機(jī)的存在梭依,可以初步判斷目標(biāo)主機(jī)的操作系統(tǒng)等
[root@backup ~]# ping baidu.com
PING baidu.com (220.181.38.148) 56(84) bytes of data.
64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=1 ttl=128 time=41.0 ms
64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=2 ttl=128 time=42.6 ms
64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=3 ttl=128 time=41.4 ms
64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=4 ttl=128 time=42.5 ms
^C
--- baidu.com ping statistics ---
5 packets transmitted, 4 received, 20% packet loss, time 4008ms
rtt min/avg/max/mdev = 41.095/41.908/42.617/0.668 ms
ping命令的參數(shù):
-t 表示將不間斷向目標(biāo) IP 發(fā)送數(shù)據(jù)包,直到我們強(qiáng)迫其停止 試想典尾,如果你使用 100M 的寬帶接入役拴,
而目標(biāo) IP 是 56K 的小貓,那么要不了多久钾埂,目標(biāo) IP 就因?yàn)槌惺懿涣诉@么多的數(shù)據(jù)而掉線河闰,一次攻擊就這么簡單的實(shí)現(xiàn)了科平。
-l 定義發(fā)送數(shù)據(jù)包的大小,默認(rèn)為 32字節(jié)姜性,我們利用它可以最大定義到 65500字節(jié)瞪慧。
結(jié)合上面介紹的 -t 參數(shù)一起使用,會(huì)有更好的效果哦部念。
-n 定義向目標(biāo) IP 發(fā)送數(shù)據(jù)包的次數(shù)弃酌,默認(rèn)為 3次。如果網(wǎng)絡(luò)速度比較慢儡炼,
3次對(duì)我們來說也浪費(fèi)了不少時(shí)間妓湘,因?yàn)楝F(xiàn)在我們的目的僅僅是判斷目標(biāo) IP 是否存在,
那么就定義為 1次吧乌询。說明一下榜贴,如果 -t 參數(shù)和 -n 參數(shù)一起使用,
ping 命令就以放在后面的參數(shù)為標(biāo)準(zhǔn)楣责,比如“ping IP -t -n 3”竣灌,雖然使用了 -t 參數(shù),
但并不是一直 ping 下去秆麸,而是只 ping 3次初嘹。另外,ping 命令不一定非得 ping IP沮趣,
也可以直接 ping 主機(jī)域名屯烦,這樣就可以得到主機(jī)的 IP。
[root@backup ~]# ping 10.0.0.7
PING 10.0.0.7 (10.0.0.7) 56(84) bytes of data.
64 bytes from 10.0.0.7: icmp_seq=1 ttl=64 time=0.417 ms
64 bytes from 10.0.0.7: icmp_seq=2 ttl=64 time=0.246 ms
64 bytes from 10.0.0.7: icmp_seq=3 ttl=64 time=0.252 ms
^C
--- 10.0.0.7 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 0.246/0.305/0.417/0.079 ms
4房铭、TTL生存時(shí)間
TTL 是 IP 協(xié)議包中的一個(gè)值驻龟,它告訴網(wǎng)絡(luò)路由器包在網(wǎng)絡(luò)中的時(shí)間是否太長而應(yīng)被丟棄。有很多原因使包在一定時(shí)間內(nèi)不能被傳遞到目的地缸匪。例如翁狐,不正確的路由表可能導(dǎo)致包的無限循環(huán)。一個(gè)解決方法就是在一段時(shí)間后丟棄這個(gè)包凌蔬,然后給發(fā)送者一個(gè)報(bào)文露懒,由發(fā)送者決定是否要重發(fā)。TTL 的初值通常是系統(tǒng)缺省值砂心,是包頭中的 8位的域懈词。TTL 的最初設(shè)想是確定一個(gè)時(shí)間范圍,超過此時(shí)間就把包丟棄辩诞。由于每個(gè)路由器都至少要把 TTL 域減一坎弯,TTL 通常表示包在被丟棄前最多能經(jīng)過的路由器個(gè)數(shù)。當(dāng)記數(shù)到0時(shí),路由器決定丟棄該包抠忘,并發(fā)送一個(gè) ICMP 報(bào)文給最初的發(fā)送者 撩炊。
- TTL 時(shí)間越長,緩存時(shí)間越長褐桌,更新越不容易及時(shí)生效衰抑。增大 TTL 值象迎,以節(jié)約域名解析時(shí)間荧嵌,給網(wǎng)站訪問加速。
- TTL 設(shè)置的小一些砾淌,生效時(shí)間就會(huì)快一些啦撮。減小 TTL 值,減少更換空間時(shí)的不可訪問時(shí)間汪厨。
|System|TTL Value|
|--|--|
|linux|64|
|win2k/nt|128|
|windows|32|
|unix|255|
5赃春、nc 網(wǎng)絡(luò)的瑞士軍刀
服務(wù)端:nc -l -u 100000
客戶端:nc -u 192.168.11.88 10000
想要連接到某處:nc [-options] hostname port[s] [ports] …
綁定端口等待連接:nc -l port [-options] [hostname] [port]
參數(shù):
-g <網(wǎng)關(guān)>:設(shè)置路由器躍程通信網(wǎng)關(guān),最多設(shè)置8個(gè);
-G <指向器數(shù)目>:設(shè)置來源路由指向器劫乱,其數(shù)值為4的倍數(shù);
-h 在線幫助;
-i <延遲秒數(shù)>:設(shè)置時(shí)間間隔织中,以便傳送信息及掃描通信端口;
-l 使用監(jiān)聽模式,監(jiān)控傳入的資料;
-n 直接使用ip地址衷戈,而不通過域名服務(wù)器;
-o <輸出文件>:指定文件名稱狭吼,把往來傳輸?shù)臄?shù)據(jù)以16進(jìn)制字碼傾倒成該文件保存;
-p <通信端口>:設(shè)置本地主機(jī)使用的通信端口;
-r 指定源端口和目的端口都進(jìn)行隨機(jī)的選擇;
-s <來源位址>:設(shè)置本地主機(jī)送出數(shù)據(jù)包的IP地址;
-u 使用UDP傳輸協(xié)議;
-v 顯示指令執(zhí)行過程;
-w <超時(shí)秒數(shù)>:設(shè)置等待連線的時(shí)間;
-z 使用0輸入/輸出模式,只在掃描通信端口時(shí)使用殖妇。
用法:
(1)刁笙、連接到遠(yuǎn)程主機(jī)
[root@backup ~]# nc -nvv 192.168.1.202 80
(2)、監(jiān)聽本地主機(jī)
[root@backup ~]# nc -l 80
(3)谦趣、超時(shí)監(jiān)控
多數(shù)情況我們不希望連接一直保持疲吸,那么我們可以使用 -w 參數(shù)來指定連接的空閑超時(shí)時(shí)間,該參數(shù)緊接一個(gè)數(shù)值前鹅,代表秒數(shù)摘悴,如果連接超過指定時(shí)間則連接會(huì)被終止。
server
[root@backup ~]# nc -l 2389
client
[root@backup ~]# nc -w 10 localhost 2389
文件傳輸
Server
[root@backup ~]# nc -l 20000 < file.txt
Client
[root@backup ~]# nc -n 192.168.1.1 2000 > file.txt
6舰绘、nmap 掃描端口
Nmap是一款網(wǎng)絡(luò)掃描和主機(jī)檢測的非常有用的工具蹂喻。Nmap是不局限于僅僅收集信息和枚舉,同時(shí)可以用來作為一個(gè)漏洞探測器或安全掃描器除盏。它可以適用于winodws,linux,mac等操作系統(tǒng)
主機(jī)發(fā)現(xiàn):用于發(fā)現(xiàn)目標(biāo)主機(jī)是否處于活動(dòng)狀態(tài)叉橱。Nmap 提供了多種檢測機(jī)制,可以更有效地辨識(shí)主機(jī)者蠕。例如可用來列舉目標(biāo)網(wǎng)絡(luò)中哪些主機(jī)已經(jīng)開啟窃祝,類似于Ping命令的功能。
端口掃描:用于掃描主機(jī)上的端口狀態(tài)踱侣。
Nmap可以將端口識(shí)別為開放(Open)粪小、關(guān)閉(Closed)大磺、過濾(Filtered)、未過濾(Unfiltered)探膊、開放或過濾(Open|Filtered)杠愧、關(guān)閉或過濾(Closed|Filtered)。
默認(rèn)情況下逞壁,Nmap會(huì)掃描1660個(gè)常用的端口流济,可以覆蓋大多數(shù)基本應(yīng)用情況。防火墻/DNS規(guī)避和哄騙:提供多種機(jī)制來規(guī)避防火墻腌闯、IDS的的屏蔽和檢查绳瘟,便于秘密地探查目標(biāo)主機(jī)的狀況。
基本的規(guī)避方式包括:分片姿骏、IP誘騙糖声、IP偽裝、MAC地址偽裝分瘦。-
掃描參數(shù):
-v //顯示掃描過程蘸泻,推薦使用-h //幫助文檔
-p //指定端口號(hào),如[1-65535],[22,135,1433,3306]等格式
-O //啟動(dòng)遠(yuǎn)程操作系統(tǒng)監(jiān)測嘲玫,存在誤報(bào)
-A //全面系統(tǒng)監(jiān)測悦施,使用腳本檢測,掃描等
-iL //批量掃描趁冈,讀取主機(jī)列表歼争,如[-iL C:\ip.txt]
7、iftop 監(jiān)控網(wǎng)絡(luò)流量
(1)渗勘、iftop是什么
iftop類似于top的實(shí)時(shí)流量監(jiān)控工具
(2)沐绒、iftop有什么用
iftop可以用來監(jiān)控網(wǎng)卡的實(shí)時(shí)流量(可以制定網(wǎng)段) 反向解析IP、顯示端口信息旺坠、
(3)乔遮、安裝iftop
安裝方法1:、編譯安裝
安裝前需要已經(jīng)安裝好基本的編譯所需的環(huán)境取刃,比如:make蹋肮、gcc、autoconf等璧疗,安裝iftop還需要安裝libpcap和libcurses坯辩。
centos上安裝所需的依賴包:
[root@backup ~]# yum install flex byacc libpcap ncurses ncurses-devel libpcap-devel
[root@backup ~]# wget http://www.ex-parrot.com/pdw/iftop/download/iftop-0.17.tar.gz
tar zxvf iftop-0.17.tar.gz
cd iftop-0.17
./configure
make && make install
安裝方法2、(懶人辦法崩侠,最簡單)
按[https://www.vpser.net/manage/centos-rhel-linux-third-party-source-epel.html](https://www.vpser.net/manage/centos-rhel-linux-third-party-source-epel.html) 這個(gè)教程安裝好EPEL漆魔,直接yum install iftop
(4)、iftop常用參數(shù)
-i 設(shè)定檢測的網(wǎng)卡。如: iftop -B
-B 以bytes為單位顯示流量(默認(rèn)是
bits)改抡,如:iftop -n
-n 使host信息默認(rèn)直接都顯示IP矢炼。
-N 是端口信息默認(rèn)直接都顯示端口號(hào)。
-F 顯示特定網(wǎng)段的進(jìn)出流量阿纤,如# iftop -F 10.10.1.0/24或# iftop -F 10.10.1.0/255.255.255.0
-h (display this message)句灌,幫助,顯示參數(shù)信息
-p 使用這個(gè)參數(shù)后欠拾,中間的列表顯示的本地主機(jī)信息胰锌,出現(xiàn)了本機(jī)以外的IP信息
-b 使流量圖形條默認(rèn)就顯示;
-f 這個(gè)暫時(shí)還不太會(huì)用,過濾計(jì)算包用的;
-P 使host信息及端口信息默認(rèn)就都顯示;
-m 設(shè)置界面最上邊的刻度的最大值清蚀,刻度分五個(gè)大段顯示匕荸,例:# iftop -m 100M
8、網(wǎng)絡(luò)故障排查
(1)枷邪、xshell 連接不上
第一步:在windows系統(tǒng)上檢查網(wǎng)絡(luò)適儀器Vnet8,是否禁用Vmware的虛擬網(wǎng)卡
第二步: 檢查Vmware net8的地址是和虛擬機(jī)的ip處于同一網(wǎng)段。
第三步:檢查系統(tǒng)的Vmware服務(wù)是否啟動(dòng)
第四步: 檢查虛擬機(jī)的網(wǎng)絡(luò)適配器是否連接
第五步: 在vmware控制臺(tái)登錄Linux诺凡,查看是否有ip地址
(2)东揣、ping不通百度的問題
第一步:是否能ping通外網(wǎng)ip,223.5.5.5腹泌,能ping通嘶卧,說明是dns的配置問題
第二步:是否能ping通網(wǎng)關(guān),ronte -n去查網(wǎng)關(guān)凉袱,如果能ping通網(wǎng)關(guān)芥吟。你可能被上網(wǎng)行為管理限制,還有一種可能专甩,你配置了一個(gè)錯(cuò)誤的網(wǎng)關(guān)钟鸵!
(3)、ping不通vmware 網(wǎng)關(guān)的問題
第一步:重啟vmware nat服務(wù)
第二步:把虛擬機(jī)的網(wǎng)絡(luò)適配器涤躲,先斷開棺耍,在連接
第三步:進(jìn)入vmware Linux系統(tǒng),systemctl restart network(重復(fù)三次)
(4)企業(yè)里面上不了網(wǎng)
第一步:檢查物理是否正常
第二步:ping網(wǎng)關(guān)
第三步:ping公網(wǎng)ip
第四步:ping www.baidu.com
第五步:ping自己的服務(wù)器