运行tcpdump时遇到问题。我必须以非root用户身份运行tcpdump。在网络上搜索我的问题,并发现我应该:
sudo setcap cap_net_admin=eip /usr/sbin/tcpdump
这使我能够与用户一起运行tcpdump,但随后得到:
you don't have permission to capture on that device
在我尝试捕获的任何设备上。
还进行了一些蛮力操作并执行了以下操作:
sudo chmod +s /usr/sbin/tcpdump
那也没有做到。
Tcpdump需要root特权,您必须为二进制文件设置特定的Linux功能:$ sudo setcap cap_net_raw,cap_net_admin = eip / usr / sbin / tcpdump
—
DreamCoder 2014年
也是这样做的,但我一直得到:
—
Sivan Sigal
tcpdump: eth0: You don't have permission to capture on that device (socket: Operation not permitted
这也是有问题的,因为不想更改正在运行的源代码...而且,DreamCoder建议的内容应该可以工作,但奇怪的是它不能。有人还有其他优惠吗?
—
西万·西格尔