Linux运维*一.Linux基础---23、网络分析(链接、嗅探、抓包)

一、网络链接分析工具:

1、netstat命令

netstat 选项

常用选项:

-t # --tcp,显示TCP协议链接

-u # --udp,显示UDP协议连接

-w # --raw,raw socket裸套接字链接

-l # --listening,显示侦听状态的连接

-a # --all,显示所有状态的连接

-n # --numeric,不反解,以数字形式显示端口

-e # --extend,显示扩展格式信息(user、inode)

-p # --program,显示相关进程及PID

-r # --route,显示内核路由表

-i # --interface,显示所有接口统计数据

-I 指定接口 # 显示指定接口统计数据

 

常用组合:

-tan

-uan

-tnl

-tlnp

 

示例:

[root@localhost ~]# netstat -tanp

Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1333/sshd

tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1628/master

tcp 0 52 192.168.254.136:22 192.168.254.1:4935 ESTABLISHED 1856/sshd: root@pts

tcp6 0 0 :::22 :::* LISTEN 1333/sshd

tcp6 0 0 ::1:25 :::* LISTEN 1628/master

[root@localhost ~]# netstat -r

Kernel IP routing table

Destination Gateway Genmask Flags MSS Window irtt Iface

default gateway 0.0.0.0 UG 0 0 0 ens33

default gateway 0.0.0.0 UG 0 0 0 ens33

192.168.254.0 0.0.0.0 255.255.255.0 U 0 0 0 ens33

 

[root@localhost ~]# netstat -Iens33

Kernel Interface table

Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg

ens33 1500 22949 0 0 0 4708 0 0 0 BMRU

 

[root@localhost ~]# netstat -i

Kernel Interface table

Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg

ens33 1500 22971 0 0 0 4721 0 0 0 BMRU

lo 65536 2 0 0 0 2 0 0 0 LRU

 

2、ss命令

ss 选项

常用选项:

-t # 查看tcp协议相关链接

-u # 查看udp协议相关链接

-w # 查看裸套接字相关链接

-x # 查看unix sovk相关链接

-l # 查看listening侦听状态相关

-a # 显示所有状态链接

-n # 不返解,数值格式显示接口

-p # 显示相关进程PID

-e # 显示连接的扩展信息

-m # 显示连接占用的内存

-o # 显示计时器信息

dport = 目的端口号 # 显示目的端口号相关链接

sport = 源端口号 # 显示源端口号相关链接

 

示例:

[root@localhost ~]# ss sport = 22 -tanp

State Recv-Q Send-Q Local Address:Port Peer Address:Port

LISTEN 0 128 *:22 *:* users:(("sshd",pid=1333,fd=3))

ESTAB 0 0 192.168.254.136:22 192.168.254.1:4935 users:(("sshd",pid=1856,fd=3))

LISTEN 0 128 :::22 :::* users:(("sshd",pid=1333,fd=4))

 

 

二、nmap:网络嗅探工具

作用:

1、扫描网络中的主机端口,嗅探其提供的服务

2、探测网络中的主机在线情况

3、探测网络中的主机的操作系统类型

4、探测达到主机经过的路由

 

常见网络端口服务:

服务 端口号

HTTP 80

HTTPS 443

Telnet 23

FTP 21

SSH(安全登录)、SCP(文件传输)、端口重定向 22

SMTP 25

POP3 110

WebLogic 7001

TOMCAT 8080

WIN2003远程登录 3389

Oracle数据库 1521

MS SQL* SEVER数据库sever 1433

MySQL 数据库sever 3306

Redis 6379

zookeeper/kafka 2181

clickhouse 9000/8123

 

nmap命令:

nmap 指定IP或域名 选项

-pn-m # 扫描指定IP的n~m范围的端口

-pn,m # 扫描指定IP的指定端口

-sT # 指定为TCP端口扫描

 [-sS|-sF|-sX|-sN] # TCP的半开放扫描,即SYN扫描,

效率高于-sT,并且能躲过一些防火墙的阻挠

-sU   # 指定为UDP扫描

-Pn   # 不进行平测试,直接进行扫描

-e 网卡 -S 伪IP -Pn # 以指定网卡并以伪IP进行扫描

示例:

[root@bcc /]# nmap 192.168.207.135 -e eno16777736 -S 192.168.1.199 -Pn

-iL /path/to/file # 从指定文件或许需要扫描的IP

-A # 嗅探主机的操作系统

-O # 嗅探主机的操作系统

-sP # Ping扫描指定网段在线的主机

不做进一步端口扫描

-sN # Ping扫描指定网段在线的主机

不做进一步端口扫描

-sA # 使用TCP的ack进行在线主机探测

对端禁Ping任然能够探测

 

注意:指定IP可以为网段如下:

192.168.207.10-199

192.168.207.0/24

 

 

三、tcpdump抓包工具的使用

1、tcpdump的源码安装

(1、安装必要的库

yum install -y flex

yum install -y bison

yum install -y gcc

 

(2、到http://www.tcpdump.org下载tcpdump和libpcap程序包

[root@localhost tcpdump]# wget http://www.tcpdump.org/release/tcpdump-4.9.2.tar.gz

[root@localhost tcpdump]# wget http://www.tcpdump.org/release/libpcap-1.8.1.tar.gz

[root@localhost tcpdump]# ls

libpcap-1.8.1.tar.gz tcpdump-4.9.2.tar.gz

[root@localhost tcpdump]# tar xf libpcap-1.8.1.tar.gz

[root@localhost tcpdump]# tar xf tcpdump-4.9.2.tar.gz

[root@localhost tcpdump]# ls

libpcap-1.8.1 libpcap-1.8.1.tar.gz tcpdump-4.9.2 tcpdump-4.9.2.tar.gz

 

(3、源码安装tcpdump包和libpcap包

[root@localhost tcpdump]#cd libpcap-1.8.1

[root@localhost tcpdump]#./configure

[root@localhost tcpdump]#make & make install

[root@localhost tcpdump]#cd tcpdump-4.9.2

[root@localhost tcpdump]#./configure

[root@localhost tcpdump]#make & make install

 

2、tcpdump命令

tcpdump 选项 指定网络接口

-i 指定接口 port 指定端口 # 抓取指定接口,指定端口的数据包(端口可以不指定)

-c n # 指定抓取n个数据包

-t # 不显示时间戳

-w 指定文件 # 将数据包储存到指定文件(供包分析器使用)

 

四、wireshark包分析器的使用

实际生产环境中可以将tcpdump报文放到windows环境中使用wireshark分析

 

安装wireshark:

yum install -y gtk2

yum install -y wireshark                      #tshark命令包

yum install -y wireshark-gnome         #wireshark命令包

 

tshark命令:

tshark 选项 指定网口

常用选项:

-s 512                            # 只抓取包的前512字节

-i 指定接口                     # 抓取指定接口的数据包

-n                                  # 禁止反解析

-f 'tcp dst port 80'   # 只捕捉tcp协议及目标端口为80的数据包

-f 'tcp src port 80'   # 只捕捉tcp协议及源端口为80的数据包

-R ‘http.host and http.request.uri’  #过滤出http.host and http.request.uri

-I                                    # 输出到标准输出

示例:

[root@localhost ~]# tshark -i ens33 -f 'tcp src port 22'

Running as user "root" and group "root". This could be dangerous.

Capturing on 'ens33'

1 0.000000000 192.168.254.136 -> 192.168.254.1 SSH 106 Encrypted response packet len=52

2 0.520190106 192.168.254.136 -> 192.168.254.1 SSH 202 Encrypted response packet len=148

3 1.023533404 192.168.254.136 -> 192.168.254.1 SSH 202 Encrypted response packet len=148

4 1.526818261 192.168.254.136 -> 192.168.254.1 SSH 202 Encrypted response packet len=148

5 2.032567925 192.168.254.136 -> 192.168.254.1 SSH 202 Encrypted response packet len=148

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值