tcpdump 安装和文件的s权限

1 安装tcpdump,注意需要使用root用户安装

yum install -y tcpdump

安装到/usr/sbin目录下

2 修改admin用户的profile,把/usr/sbin加入到环境变量 

export PATH=$PATH:$HOME/bin:/usr/sbin


3 运行tcpdump发现无权限执行

tcpdump: socket: Operation not permitted


man

Under Linux:
              You must be root or tcpdump must be installed setuid to root (unless your distri-
              bution has a kernel that supports capability bits such as CAP_NET_RAW and code to
              allow those capability bits to be given to particular accounts and to cause those
              bits to be set on a user's initial processes when they log in, in which case  you
              must  have CAP_NET_RAW in order to capture and CAP_NET_ADMIN to enumerate network
              devices with, for example, the -D flag).

 

发现需要使用setuid,也就是s权限

4 设置s权限位

(1)、s:文件属主和组设置SUID和GUID,文件在被设置了s权限后将以root(文件所有者)身份执行。在设置s权限时文件属主、属组必须先设置相应的x权限,否则s权限并不能正真生效(chmod命令不进行必要的完整性检查,即使不设置x权限就设置s权限,chmod也不会报错,当我们ls -l时看到rwS,大写S说明s权限未生效)。

Linux修改密码的passwd便是个设置了SUID的程序,普通用户无读写/etc/shadow文件的权限确可以修改自己的密码。

ls -al /usr/bin/passwd

-rwsr-xr-x 1 root root 32988 2008-12-08 17:17 /usr/bin/passwd

使用root用户修改tcpdump文件权限

chmod u+s tcpdump

[admin@v035114 sbin]$ ll -a | grep tcpdump 
-rwsr-xr-x  1 root  root    789064 Nov 11  2009 tcpdump

这样非root就可以使用tcpdump了



 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值