Linux下tcpdump遇到的问题
1. 直接tcpdump命令,提示:no suitable device found,于是sudo tcpdump,没问题,可读信息终端输出 2. 但想写入文件,sudo tcpdump -w tmp,提示Permission denied,用strace tcpdump -w tmp 查找原因,后面出现:no suitable device found,怎么chmod都没用,搜了一下,和权限有关,有些说是apparmor搞的鬼(Ubuntu中apparmor已取代selinux),但我不想降低系统权限来让它运行,最后发现,需加"-Z"参数:tcpdump打开设备和输入文件之后,且在打开输出文件之前,用户和组会切换到"-Z"指定用户和对应组,如不指定"-Z",默认是"tcpdump",无权限,所以需强制指定: sudo tcpdump -w tmp -Z alex; 或者在输出文件后面加上后缀".pcap": sudo tcpdump -w tmp.pcap (tcpdump程序本身是不理会什么后缀的,但系统以及其他许多应用能识别) 后记: tcpdump命令在虚拟机挂载的裸磁盘中保存pcap文件,可直接用普通权限用户读取,但在Ubuntu虚拟机自有分区中保存,则属root用户,需root权限才能读取pcap文件
Labels: Linux, Operation and Maintenance
0 Comments:
Post a Comment
Subscribe to Post Comments [Atom]
<< Home