Linux 8特殊权限

Linux 8特殊权限


查看passwd命令文件的权限

首先通过which查看passwd命令文件所在位置

# which passwd
我们发现所在位置是:
/usr/bin/passwd

注意区分 /etc/passwd下的passwd文件,此处是配置文件

通过 ll /user/bin/passwd查看详细信息

-rwsr- xr- X.1 root root 27832 1月 30 2014 /usr/bin/passwd

发现这个文件被分配了suid权限,这样,当普通用户使用这个文件来更改密码时,文件将以文件所属用户root的权限来运行,而root用户是能够对/etc/shadow做出修改的

suid权限:

user1用户在自己的家目录([ user1@localhost~])中创建文件file1和file2

分别使用字母和数字的方式给两个文件加上suid权限

首先新建文件 file1, file2

$ touch file1
$ touch file2

查看文件详细信息

-rw-rw-r--.	1 userl	userl 0	xxxxxx file1		
-rw-rW-r--.	1 userl userl 0	xxxxxx file2

添加suid权限

$ chmod u+S file1
$ chmod u+4664 file2

查看文件详细信息

-rwSrW-r--.	1 user1 user1 0	xxxxxx file1
-rwSrW-r--.	1 user1 user1 0	xxxxxx file2

sgid权限

user1用户在自己的家目录中创建文件夹test

切换到超级用户,新建一个测试组testgroup,调整test这个目录的所属组到testgroup

给test添加sgid

切换到普通用户user1,进入test新建一个文件subfile和文件夹subtest,并查看他们所属组

首先在user1家目录中新建test文件夹

# su user1
$ mkdir test 

查看详细信息为:

drwxrwxr- x. 2 user1 user1 6 xxxxxx test

切换超级用户root,新建testgroup

$ exit
# groupadd testgroup

调整test这个目录的所属组到testgroup

# cd /home/user1/
# chown : testgroup test	或 chgrp	testgroup test
drwxrwxr- x. 2 user1 testgroup 4096 xxxxxx test

chown : 改变所属组

给test添加sgid权限

# chmod	g+s test
drwxrwxsr- x. 2 user1 testgroup 4096 xxxxxx test

切换到普通用户user1,进入test新建一个文件subfile和文件夹subtest,并查看他们所属组

# su user1
$ cd test
$ touch subfile
$ mkdir subtest
$ ll
-rw-rw-r--. 1 user1 testgroup 0 xxxxxx subfile
drwxrwsr-x. 2 user1 testgroup 4096 xxxxxx subtest

sticky权限

假设我们有两个用户nash和bob,他们被分配到net组,我们有一个testdir的文件夹属于net组,net组中的成员对这个文件夹拥有读写权限,我们需要使用sticky权限对这个文件夹进行控制,让nash和bob只能查看对方创建的文件,但是不能修改和删除

1.创建net组和bob、nash用户,并将用户分配到net组中

2.创建testdir文件夹并将它的所属组更改为net,给这个组添加可读写权限

3.不加sticky权限时,测试一下nash和bob是否能查看、修改和删除对方创建的文件

4.给testdir目录添加sticky权限,再测试一下nash和bob是否能查看、修改和删除对方创建的文件

首先新建net组

# groupadd net

bob、nash用户,并将用户分配到net组中

# useradd -G net bob
# useradd -G net nash

创建testdir文件夹并将它的所属组更改为net,给这个组添加可读写权限

# cd /home
# mkdir testdir
drwxr- xr-x. 2 root root 4096 xxxxxx testdir

# chown : net testdir

drwxr- xr-x. 2 root net 4096 xxxxxx testdir

# chomod g+w testdir
drwxrwxr- x.2 root net 4096 xxxxxx testdir

不加sticky权限时,测试一下nash和bob是否能查看、修改和删除对方创建的文件

# su bob 
$ cd testdir
$ touch bobfile
$ exit
# su nash
# cd testdir
# rm -f bobfile

可以发现可以正常删除

给testdir目录添加sticky权限,再测试一下nash和bob是否能查看、修改和删除对方创建的文件

# chmod o+t testdir
#ll
drwxrwxr- t. 2 root net 4096 xxxxxx testdir
# su bob 
$ cd testdir
$ touch bobfile
$ exit
# su nash
# cd testdir
# rm -f bobfile

rm: 无法删除"bobfile":不允许的操作
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值