设为首页 收藏本站
查看: 525|回复: 0

[经验分享] linux基本权限和归属、附加权限控制

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-7-31 09:30:37 | 显示全部楼层 |阅读模式
                      一、基本权限和归属
1. 访问权限
读取:允许查看、显示目录列表
写入:允许修改,允许在目录中新建、移动、删除文件或子目录
可执行:允许运行程序、切换目录
2. 查看文件的权限
# ls -l install.log
-|rw-|r--|r-- 1  root  root  26195 Dec 17 10:42  install.log
① ② ③ ④ ⑤   ⑥    ⑦       ⑧           ⑨                   ⑩
①. 文件类型
-代表普通文件
d代表目录
l代表连接
②. rw-:代表文件所有者的权限(u)
r=读=4
w=写=2
x=执行=1
③. r--:代表文件所属组的权限(g)
r=读=4
w=写=2
x=执行=1
④. r--:其他用户的权限(o)
r=读=4
w=写=2
x=执行=1
a=ugo
⑤. 文件  硬链接数
     目录  该目录下有多少子目录包括.和..
⑥. 文件所有者
⑦. 文件所属组
⑧. 文件大小
⑨. 文件修改时间
⑩. 文件名

3. 命令 (R表示递归)
chmod 改变权限
chmod ugoa [+-=] [rwx] 文件
chmod 数字 文件

文件最大权限666
目录最大权限777
默认创建文件的权限644
默认创建目录的权限755
umask
最大权限的rwx-umask的rwx=默认权限
补充:
对于目录来说没有x权限,无论有没rw,都不能进入该目录

chown 改变所有者与所属组
chown 所有者:所属组  对象
chgrp 组 文件        更改文件的属组

二、附加权限控制
1. 特殊权限介绍
Set UID:        4        User+x
Set GID:        2        Group+x
Sticky Bit:        1        Other+x
2. 特殊权限作用
Set UID:
        只能对可执行程序设置,当其他用户执行带SUID标记的程序时,将会使用程序所有者的身份去执行

Set GID:
        可以对可执行程序设置,当其他用户执行带SGID标记的程序时,将会使用程序所属组的身份去执行
        可以对目录设置,当对目录设置SGID后,任何人在该目录下创建文件和目录的所属组自动继承该目录的所属组

Sticky Bit:
        对目录设置,任何人在该目录下创建文件和目录,只有root与文件创建者有删除权限

3. ACL策略
getfacl        文件        查看ACL策略
setfacl        [选项] u:用户名:权限 文件       
setfacl        [选项] g:组名:权限 文件       
        -m        定义一条ACL策略
        -x        删除指定的ACL策略
        -b        清除所有已设置的ACL策略
        -R        递归设置
        -d        为目录设置默认权限




一、基本权限和归属
公司技术部有一台Linux开发服务器,根据部门内项目组的构成情况,需要建立相应的用户账号,并对开发数据相关目录配置访问权限。
1.文件夹/tech/nsdhome、/tech/jsdhome,分别归属于nsd组、jsd组,禁止其他用户进入。
2.创建部门公共目录/public,技术部的所有员工(tech组)对其拥有可读、可写、可执行,其他用户禁止访问此目录。

[iyunv@localhost /]# mkdir -p /tech/nsdhome
[iyunv@localhost /]# mkdir -p /tech/jsdhome
[iyunv@localhost /]# mkdir /public
[iyunv@localhost /]# groupadd nsd
[iyunv@localhost /]# groupadd jsd
[iyunv@localhost /]# groupadd tech
[iyunv@localhost /]# useradd -g nsd nsd01
[iyunv@localhost /]# useradd -g nsd nsd02
[iyunv@localhost /]# useradd -g jsd jsd01
[iyunv@localhost /]# useradd -g jsd jsd02
[iyunv@localhost /]# useradd -g tech yg01
[iyunv@localhost /]# useradd yg02
[iyunv@localhost /]# chown :nsd /tech/nsdhome
[iyunv@localhost /]# ls -l /tech/nsdhome
总计 0
[iyunv@localhost /]# ls -ld /tech/nsdhome
drwxr-xr-x 2 root nsd 4096 07-30 11:36 /tech/nsdhome
[iyunv@localhost /]# chmod o-rx /tech/nsdhome
[iyunv@localhost /]# chown :jsd /tech/jsdhome
[iyunv@localhost /]# ls -ld /tech/jsdhome
drwxr-xr-x 2 root jsd 4096 07-30 11:36 /tech/jsdhome
[iyunv@localhost /]# chmod o-rx /tech/jsdhome
[iyunv@localhost /]# chown :tech /public
[iyunv@localhost /]# ls -ld /public
drwxr-xr-x 2 root tech 4096 07-30 11:36 /public
[iyunv@localhost /]# chmod g+w /public
[iyunv@localhost /]# ls -ld /public
drwxrwxr-x 2 root tech 4096 07-30 11:36 /public
[iyunv@localhost /]# chmod o-rx /public
[iyunv@localhost /]# ls -ld /public
drwxrwx--- 2 root tech 4096 07-30 11:36 /public
[iyunv@localhost /]# ls -ld /tech/nsdhome
drwxr-x--- 2 root nsd 4096 07-30 11:36 /tech/nsdhome
[iyunv@localhost /]# ls -ld /tech/jsdhome
drwxr-x--- 2 root jsd 4096 07-30 11:36 /tech/jsdhome
[iyunv@localhost /]#


二、附加权限控制
1、Suid实验
只能针对程序(命令)设置,当任何人在执行具有suid权限的命令时,将使用该命令的所有者身份执行
[iyunv@localhost ~]# ls -l /etc/shadow
[iyunv@localhost ~]# which passwd
[iyunv@localhost ~]# ls -l /usr/bin/passwd
[iyunv@localhost ~]# umask 022
[iyunv@localhost ~]# which touch
[iyunv@localhost ~]# cp /bin/tosuuch /bin/suidtouch
[iyunv@localhost ~]# ls -l /bin/*touch
[iyunv@localhost ~]# useradd lily
[iyunv@localhost ~]# su - lily
[lily@localhost ~]$ suidtouch suid-file1.txt
[lily@localhost ~]$ ls -l suid-file1.txt
[lily@localhost ~]$ exit
[iyunv@localhost ~]# ls -l /bin/suidtouch
[iyunv@localhost ~]# chmod u+s /bin/suidtouch
[iyunv@localhost ~]# ls -l /bin/suidtouch
[iyunv@localhost ~]# su - lily
[lily@localhost ~]$ suidtouch suid-file2.txt
[lily@localhost ~]$ ls -l suid-file*
[lily@localhost ~]$ exit
[iyunv@localhost ~]# rm -rf /bin/suidtouch

2、Sgid实验
能对程序(命令)设置,也可以对目录设置
当任何人在执行具有sgid权限的命令时,将使用该命令的所属组身份执行
[iyunv@localhost ~]# which mkdir
[iyunv@localhost ~]# cp /bin/mkdir /bin/sgidmkdir
[iyunv@localhost ~]# ls -l /bin/*mkdir
[iyunv@localhost ~]# su - lily
[lily@localhost ~]$ sgidmkdir test1
[lily@localhost ~]$ ls -ld test1
[lily@localhost ~]$ exit
[iyunv@localhost ~]# chmod g+s /bin/sgidmkdir
[iyunv@localhost ~]# ls -l /bin/sgidmkdir
[iyunv@localhost ~]# su - lily
[lily@localhost ~]$ sgidmkdir test2
[lily@localhost ~]$ ls -ld test*
[lily@localhost ~]$ exit
[iyunv@localhost ~]# rm -rf /bin/sgidmkdir

对目录设置Sgid,任何人在该目录下创建的文件或子目录的所属组都自动继承该目录本身所属组
[iyunv@localhost ~]# mkdir /testgid
[iyunv@localhost ~]# ls -ld /testgid/
drwxr-xr-x 2 root root 4096 Jan  6 16:53 /testgid/
[iyunv@localhost ~]# chmod 0757 /testgid/
[iyunv@localhost ~]# su - lily
[lily@localhost ~]$ mkdir /testgid/lilytest1
[lily@localhost ~]$ touch /testgid/lilyfile1.txt
[lily@localhost ~]$ ls -l /testgid/
[lily@localhost ~]$ exit
[iyunv@localhost ~]# chmod 2757 /testgid/
[iyunv@localhost ~]# ls -ld /testgid/
[iyunv@localhost ~]# su - lily
[lily@localhost ~]$ mkdir /testgid/lilytest2
[lily@localhost ~]$ touch /testgid/lilyfile2.txt
[lily@localhost ~]$ ls -l /testgid/

3、t位权限echo
针对公共目录设置,目录设置t位权限后,该目录下的文件或子目录只有root与文件所有者能够删除
[iyunv@localhost ~]# mkdir /soft
[iyunv@localhost ~]# ls -ld /soft/
[iyunv@localhost ~]# chmod o+w /soft/
[iyunv@localhost ~]# ls -ld /soft/
[iyunv@localhost ~]# useradd wbb
[iyunv@localhost ~]# useradd lhq
[iyunv@localhost ~]# su - lhq
[lhq@localhost ~]$ cat /soft/lhq.txt
hello,byebye
[lhq@localhost ~]$ exit
[iyunv@localhost ~]# su - wbb
[wbb@localhost ~]$ ls -ld /soft/
[wbb@localhost ~]$ ls -l /soft/
[wbb@localhost ~]$ rm -rf /soft/lhq.txt
[wbb@localhost ~]$ ls -l /soft/
[iyunv@localhost ~]# chmod o+t /soft/
[iyunv@localhost ~]# ls -ld /soft/
[iyunv@localhost ~]# su - lhq
[lhq@localhost ~]$ cat /soft/lhq.txt
hello,byebye
[lhq@localhost ~]$ exit
[iyunv@localhost ~]# su - wbb
[wbb@localhost ~]$ ls -l /soft/
[wbb@localhost ~]$ ls -ld /soft/
[wbb@localhost ~]$ rm -rf /soft/lhq.txt

[iyunv@localhost ~]# find / -type f -a -perm +6000        //查找系统中suid/sgid的程序

4、ACL权限设置
创建账户:mike  john  kaka
创建文件:/data/file1.txt
·mike对文件有读写权限,john只有读权限。其他用户没有任何权限
·kaka具有与john相同权限
·创建lily,lily对file1.txt具有读执行权限,其他用户没有任何权限

[iyunv@localhost ~]# tune2fs -l /dev/sda2 | grep acl
Default mount options:    user_xattr acl
[iyunv@localhost ~]# tune2fs -l /dev/sda1 | grep acl
Default mount options:    user_xattr acl
[iyunv@localhost ~]# ls -ld /data/
drwxrwxrwx 3 root root 4096 12-09 16:21 /data/
[iyunv@localhost ~]# rm -rf /data/
[iyunv@localhost ~]# mkdir /data
[iyunv@localhost ~]# getfacl /data/
getfacl: Removing leading '/' from absolute path names
# file: data
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

[iyunv@localhost ~]# ls -ld /data/
drwxr-xr-x 2 root root 4096 12-09 16:27 /data/
[iyunv@localhost ~]# setfacl -m u:mike:rwx /data/
[iyunv@localhost ~]# ls -ld /data/
drwxrwxr-x+ 2 root root 4096 12-09 16:27 /data/
[iyunv@localhost ~]# getfacl /data/
getfacl: Removing leading '/' from absolute path names
# file: data
# owner: root
# group: root
user::rwx
user:mike:rwx
group::r-x
mask::rwx
other::r-x
[iyunv@localhost ~]# setfacl -m u:john:r-- /data/
[iyunv@localhost ~]# setfacl -m u:kaka:r-- /data/
[iyunv@localhost ~]# setfacl -m u:lily:r-x /data/
wKiom1PY9y_xyI_7AAX4XkJDzFk155.jpg
wKioL1PY-ErglQTVAAJ9qB1Ry9c419.jpg
wKioL1PY-EvTdZlWAAOjYMs4Lpw549.jpg
wKioL1PY-E2hzGj_AAKuYdIBx-Y636.jpg
wKioL1PY-E7g1bJYAAJlRbqKH2o564.jpg
wKiom1PY9zWRFJuSAAHPRTcjumY105.jpg
wKiom1PY9zfxuGiSAAK_yrVtCMU079.jpg
wKioL1PY-FKQF02-AALrSHqF6Ck345.jpg
wKiom1PY9zrA4p8gAAKivHESxc8693.jpg
wKiom1PY9zrTca20AAGFVgYo02U630.jpg
wKioL1PY-FWAt-6vAAFedESh2ww161.jpg
wKiom1PY9zzx_FLxAAGaF5GXSRs767.jpg
wKiom1PY9z6T-DvWAATNJNv8zLs566.jpg
wKiom1PY90DAbbAEAAOS5GqnxKo436.jpg
wKioL1PY-FvTiFCnAANYOLh-6bE112.jpg

                   


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-22990-1-1.html 上篇帖子: Redhat Yum配置网易镜像源 下篇帖子: PXE服务配置 linux
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表