Siv*_*gal 17 permissions 14.04 tcpdump
运行 tcpdump 时遇到问题。我必须用非 root 用户运行 tcpdump。在网上搜索我的问题并发现我应该:
sudo setcap cap_net_admin=eip /usr/sbin/tcpdump
Run Code Online (Sandbox Code Playgroud)
这使我能够与我的用户一起运行tcpdump但后来我得到了:
you don't have permission to capture on that device
Run Code Online (Sandbox Code Playgroud)
在我尝试捕获的任何设备上。
也有点蛮力并做了:
sudo chmod +s /usr/sbin/tcpdump
Run Code Online (Sandbox Code Playgroud)
那也没有做到。
小智 38
有点晚了,但我遇到了同样的问题。您需要授予tcpdump
允许原始数据包捕获和网络接口操作的权限和能力。
添加捕获组并将您自己添加到其中:
sudo groupadd pcap
sudo usermod -a -G pcap $USER
Run Code Online (Sandbox Code Playgroud)
接下来,更改组tcpdump
并设置权限:
sudo chgrp pcap /usr/sbin/tcpdump
sudo chmod 750 /usr/sbin/tcpdump
Run Code Online (Sandbox Code Playgroud)
最后,使用setcap
给予tcpdump
必要的权限:
sudo setcap cap_net_raw,cap_net_admin=eip /usr/sbin/tcpdump
Run Code Online (Sandbox Code Playgroud)
请注意,这将允许pcap组中的每个人操作网络接口并读取原始数据包!
在这里找到:配置 tcpdump 以非 root 用户身份工作
小智 0
也许这可能有效。与已经发布的内容类似。尚未在 ubuntu 上进行测试。
(使用您的用户所属的组) chgrpwireshark /usr/sbin/tcpdump
setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/sbin/tcpdump
使用 getcap /usr/sbin/tcpdump 你应该看到 /usr/sbin/tcpdump = cap_net_admin,cap_net_raw+eip
归档时间: |
|
查看次数: |
93312 次 |
最近记录: |