1、安装
root安装:
yum -y install wireshark
yum -y install wireshark-gnome
安装完成会在桌面主菜单Application->Internet生成wireshark快捷方式。
我们也可以在路径/usr/share/applications/Wireshark Network Analyzer.desktop复制一份到桌面。
2、启动
以root用户启动,一切正常!
以普通用户启动wireshark:在Application/internet下。
启动后提示:
Couldn't run /usr/sbin/dumpcap in child process: Permission denied
Are you memeber of 'wireshark' group? Try running 'usermod -a -G wireshark <username>' as root.
同时,也没有interface列出来。
按照提示增加普通用户到组以后,还是提示权限问题。
于是,将/usr/sbin/dumpcap的组改为普用用户的组,再运行,没有那个提示了,但是还是没有interface列出来。
这是由于当前用户没有权限运行/usr/bin/dumpcap造成的。/usr/bin/dumpcap是Wireshark的包捕获引擎。
先用ls命令看一下dumpcap的权限情况:
xy@debian-vm-1:~$ ls -lah /usr/bin/dumpcap
-rwxr-xr-- 1 root wireshark 95K 1月 23 01:03 /usr/bin/dumpcap
可以看到,dumpcap属于wireshark组,而该组是有运行权限的,那么只要将用户book添加到wireshark组即可运行dumpcap。
再看下当前用户book属于哪个组,使用groups命令,
book@debian-vm-1:~$ groups
book root cdrom floppy audio dip video plugdev netdev bluetooth lpadmin scanner
可以看到,用户book属于好几个组,但没有wireshark组。使用以下命令将用户book添加到wireshark组:
sudo usermod -a -G wireshark book
-a表示为用户追加一个组,即将用户book加入一个组,但不从原组移除。
-G参数后面紧跟需追加的组名。
注销再进入系统,Wireshark就可以正常运行了,但groups命令还看不到新追加的wireshark组;重启后,才可用groups命令看到新追加的wireshark组。
再执行:setcap cap_net_raw,cap_net_admin+eip /usr/sbin/dumpcap
这样就ok了。