本文介绍Linux中的方法,Windows用户可以参照Wireshark的Wiki
从Linux中第一次启动Wireshark的时候,可能会觉得奇怪,为什么看不到任何一个网卡,比如eth0之类的。这是因为,直接访问这些设备需要 root权限。然后,我就用root权限去用了。当然,这是一个不好的做法。比如Gentoo中就会提示:WIRESHARK CONTAINS OVER ONE POINT FIVE MILLION LINES OF SOURCE CODE. DO NOT RUN THEM AS ROOT.
那怎么办呢?Wireshark的leader Gerald Combs指出,现在多数Linux发行版都开始实现对raw网络设备使用文件系统权限(能力) ,可以用这个途径从普通用户启动Wireshark。
以下是具体步骤:
1.安装setcap。setcap 是libcap2-bin包的一部分,一般来说,这个包默认会已经装好。
sudo apt-get install libcap2-bin
2.创建Wireshark组。这一步在安装Wireshark的时候,也会完成。
# groupadd -g wireshark
# usermod -a -G wireshark <自己的用户名>
# chgrp wireshark /usr/bin/dumpcap
# chmod 4750 /usr/bin/dumpcap
3.赋予权限。
#setcap cap_net_raw,cap_net_admin=eip /usr/bin/dumpcap 完成。
可以使用 getcap /usr/bin/dumpcap验证,输出应当是:/usr/bin/dumpcap = cap_net_admin,cap_net_raw+eip
现在就可以从自己的普通用户启动Wireshark抓包了。
Linux中从普通用户启动Wireshark抓包
转载请注明出处:服务器评测 » Linux中从普通用户启动Wireshark抓包
相关推荐
- 美国专属服务器:英特尔至强处理器,16G内存+双IPv4,半价续费,当日交付
- 限时特惠:多国裸金属服务器,Intel/AMD配置月付€25.60起直达!
- EPYC在新加坡、东京和洛杉矶的交易
- *███ 16C/32T – 64GB RAM – 2x500GB SSD – 10Gbit端口 – 49美元███
- DEDICATED.COM – 英特尔®至强™ E3-1230v2 |8GB – 2 个 2TB 硬盘 |$36.99
- 预算专用服务器 29.99 美元/月起 – 美国、法国、荷兰和加拿大 – HostNamaste
- ███ 16C/32T – 64GB RAM – 2x500GB SSD – 10Gbit端口 – 49美元███
- [促销] DARKVPS – 高级裸机 RDP 15% 经常性折扣 – WHT 独家💥
服务器评测





