出于安全的考虑,多用户操作系统需要具备保障个人隐私和系统安全的机制。在Linux中,无论是文档还是硬件设备都以文件的形式存在,
相应地,安全机制也主要表现为对文件访问权限的控制。要保证相应的文件被可用的用户操作。
本节就是linux相应的文件权限管理。
1.查看文件权限
ls -l 文件
ls -ld 目录
ll 文件
ll -d 目录
2.文件权限的读取
1)文件类型
- rw- r-- r-- 1 root root 0 Oct 8 07:30 westos
- 空文件,或者文本
d 目录
l 软链接
s socket 套接字
b block 块设备
c 字符设备
2)文件权限
rw- r-- r--
1 2 3
1.[u] 文件拥有者对文件能做什么操作
2.[g] 文件所有组对文件能做什么操作
3.[o] 其他人对文件能做什么操作
3)- rw- r-- r-- 1 root root 0 Oct 8 07:30 westos
对文件:文件硬链接个数(文件内容被记录的次数)
对目录:目录中子目录的个数
4)- rw- r-- r-- 1 root root 0 Oct 8 07:30 westos
文件的所有人
5)- rw- r-- r-- 1 root root 0 Oct 8 07:30 westos
文件所有组
6)- rw- r-- r-- 1 root root 0 Oct 8 07:30 westos
对文件:文件大小
对目录:目录中子文件元数据(matedate可以理解为文件的属性)大小
7)- rw- r-- r-- 1 root root 0 Oct 8 07:30 westos
文件被修改的时间
8)- rw- r-- r-- 1 root root 0 Oct 8 07:30 westos
文件的名称
3.改变文件的所有人和所有组
命令:chown|chgrp
chown username 文件|目录
chown user.group 文件|目录
chown -R user.group 目录
chgrp group 文件|目录
chgrp -R group 目录
注意:R 表示递归,即目录下都改变
4.改变文件的权限
1)rwx三种权限
r
对文件:是否可以查看文件中的内容 --->cat file
对目录:是否可以查看目录中有什么子文件或者子目录 ---> ls dir
w
对文件:是否可以改变文件里面记录的字符
对目录:是否可以对目录中子目录或子文件的元数据进行更改
x
对文件:是否可以通过文件名称调用文件内记录的程序
对目录:是否可以进入目录
2)更改方式
命令:chmod <+|-|=>
例:
chmod u+x /mnt/file1
chmod g-r /mnt/file2
chmod ug-r /mnt/file3
chmod u-r,g+x /mnt/file4
chmod -r /mnt/file5
chmod o=r-x /mnt/file6
另:
rwx
210
r=4
w=2
x=1
rw-|r--|r-- =644
chmod 644 file
5.umask
系统建立文件是默认保留的权力
永久更改umask
vim /etc/profile 系统配置文件
59 if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then
60 umask 002 普通用户的umask
61 else
62 umask 077 超级用户的umask
63 fi
vim /etc/bashrc ##shell配置文件
source /etc/profile
source /etc/bashrc 重新读取文件,可以使改动立即生效
6.特殊权限
1)sticky 粘制位
作用:只针对目录生效,当一个目录上有sticky权限时,在这个目录中的文件智能被文件的所有者删除
设定方式:
chmod o+t 目录
chmod 1xxx 目录
2)sgid 强制位
作用 对文件:只针对与二进制可执行文件当文件上有sgid时任何人执行此文件产成的进程都属于文件的的组
对目录:当目录上有sgid权限时任何人在此目录中建立的文件都属于目录的所有组
设定方式
chmod g+s 文件|目录
chmod 2xxx 文件|目录
3)suid 冒险位
作用:只针对与2进制可执行文件,当文件上有suid时任何人执行这个文件中记的程序产生的进程都属于文件的所有人
设定方式
chmod u+s 文件
chmod 4xxx 文件
7.acl权限
让特定的用户对特定的文件拥有特定的权限
rw-rwxr--+........acl开启
getfacl file 查看acl开启的文件的权限
user::rw- 文件拥有人的权限
user:kiosk:rwx 指定用户的权限
group::r-- 文件拥有组的权力
mask::rwx 能赋予用户的最大权力伐值
other::r-- 其他人的权限
1)acl列表的管理
setfacl -m u:username:rwx file 设定username对file拥有rwx权限
setfacl -m g:group:rwx file 设定group组成员对file拥有rwx权限
setfacl -x u:username file 从acl列表中删除username
setfacl -b file 关闭file上的acl列表
2)mask值
在权限列表中mask标示能生效的权力值
当用chmod减小开启acl的文件权限时mask值会发生改变
chmod g-w westos
如果要恢复mask值
setfacl -m m:rw westos
3)acl的默认权限设定
acl默认权限只针对目录设定
注意:acl权限只针对设定完成之后新建立的文件或目录生效,而已经存在的文件是不会继承默认权限
setfacl -m d:u:student:rwx /mnt/westos
写在最后,如果大家喜欢linux运维方面的知识,欢迎关注本博主,会每周更新与linux运维相关的一些小知识,帮助大家入门
愿你与我一同成长!
往期:
ttps://blog.csdn.net/Stella_Pooter/article/details/82951345 Linux运维入门~1.虚拟机使用
https://blog.csdn.net/Stella_Pooter/article/details/82952307 Linux运维入门~2.命令行使用技巧
https://blog.csdn.net/Stella_Pooter/article/details/82960344 Linux运维入门~3.文件管理
https://blog.csdn.net/Stella_Pooter/article/details/82971516 Linux运维入门~4.输入输出管理与vim管理
https://blog.csdn.net/Stella_Pooter/article/details/82983752 Linux运维入门~5.用户管理
Never say die