欢迎各位彦祖与热巴畅游本人专栏与博客
你的三连是我最大的动力
以下图片仅代表专栏特色
专栏跑道一
➡️ MYSQL REDIS Advance operation
专栏跑道二
**➡️ **24 Network Security -LJS
专栏跑道三
➡️HCIP;H3C-SE;CCIP——LJS[华为、华三、思科高级网络]
专栏跑道四
➡️RHCE-LJS[Linux高端骚骚操作实战篇]
专栏跑道五
➡️****数据结构与算法[考研+实际工作应用+C程序设计]
上节回顾https://blog.csdn.net/weixin_74796680/article/details/142724717?sharetype=blogdetail&sharerId=142724717&sharerefer=PC&sharesource=weixin_74796680&spm=1011.2480.3001.8118
Linux文件系统权限
1.ACL 权限
简介:
- ACL 权限分配:给指定的用户指定目录分配指定的权限。
1.ACL权限管理命令
1.1查看ACL权限
#语法格式: [root@localhost ~]# getfacle 文件名
1.2设定ACL权限
#语法格式: setfacl 选项 文件名
常见选项详解说明表:
-m*设定 ACL 权限。如果是给予用户 ACL 权限,则使用 u:用户名:权限 格式赋予;如果是给予组 ACL 权限,则使用 g:组名:权限" 格式赋予; -x删除指定的 ACL 权限*-b**删除所有的 ACL 权限-d设定默认 ACL 权限。只对目录生效,指目录中新建立的文件拥有此默认权限-k删除默认 ACL 权限-R**递归设定 ACL 权限。指设定的 ACL 权限会对目录下的所有子文件生效
示例:
#给用户和用户组添加ACL权限 给用户设定 ACL 权限: setfacl -m u:用户名:权限 指定文件名 给用户组设定 ACL 权限: setfacl -m g:组名:权限 指定文件名 #通过加上选项 -R 递归设定文件的 ACL 权限,所有的子目录和子文件也会拥有相同的 ACL 权限 setfacl -Rm u:用户名:权限 -R 文件名 # 如果给父目录设定了默认的 ACL 权限,那么父目录中所有新建的子文件会继承父目录的 ACL 权限 setfacl -m d:u:用户名:权限 文件名 setfacl -md u:用户名:权限 文件名
** 举例:**
#所有者root用户在根目录下创建一个文件目录/project,然后创建一个QQ群所属组,所属组里面创建两个用户zhangsan和lisi。此文件权限是770。 #然后创建一个旁听用户 pt,给他设定/project目录的 ACL 为 r-x [root@kongd ~]# mkdir /project [root@kongd ~]# useradd zhangsan [root@kongd ~]# useradd lisi [root@kongd ~]# groupadd QQgroup [root@kongd ~]# gpasswd -M zhangsan,lisi QQgroup [root@kongd ~]# chown root:QQgroup /project/ [root@kongd ~]# chmod 770 /project/ [root@kongd ~]# ll -d /project/ drwxrwx---. 2 root QQgroup 6 12月 30 14:15 /project/
目录 /project 的所有者和所属组其他人权限设定为 770。接下来我们创建旁听用户 pt,并赋予 acl 权限 rx
[root@kongd ~]# useradd pt[root@kongd ~]# setfacl -m u:pt:rx /project/注意如下所示,如果某个目录或文件下有 + 标志,说明其具有 acl 权限。[root@kongd ~]# ll -d /project/drwxrwx---+ 2 root QQgroup 6 12月 30 14:15 /project/[root@kongd ~]# getfacl /project/getfacl: Removing leading '/' from absolute path names# file: project/# owner: root# group: QQgroupuser::rwxuser:pt:r-xgroup::rwxmask::rwxother::---
为了验证 pt 用户对于 /project 目录没有写权限,我们用 su 命令切换到 pt 用户,然后进入 /project 目 录,在此目录下创建文件,看是否能成功:
[root@kongd ~]# su - pt[pt@kongd ~]$ cd /project/[pt@kongd project]$ touch test.txttouch: 无法创建 'test.txt': 权限不够
1.3删除acl权限
#删除指定用户的 ACL 权限 setfacl -x u:用户名 文件名 #删除指定用户组的 ACL 权限 setfacl -x g:组名 文件名 #删除文件的所有 ACL 权限 setfacl -b 文件名
2.权限掩码umask
2.1权限掩码umask
简介:
- 在Linux系统中,当用户创建一个新的文件或目录时,系统都会为新建的文件或目录分配默认的权限,该 默认权限与umask值有关
默认权限与umask值的具体关系是:
- 新建文件的默认权限=0666-umask值
- 新建目录的默认权限=0777-umask值
分别查看、修改用户当前默认的umask值。
//查看当前用户的umask权限 [root@localhost ~]# umask 0022 [root@localhost ~]# touch file800 [root@localhost ~]# mkdir dir800 [root@localhost ~]# ll -d dir800 file800 drwxr-xr-x. 2 root root 4096 3月 11 19:40 dir800 -rw-r--r--. 1 root root 0 3月 11 19:40 file800
修改shell umask值(临时)
[root@localhost ~]# umask 000 [root@localhost ~]# mkdir dir900 [root@localhost ~]# touch file900 [root@localhost ~]# ll -d dir900 file900 drwxrwxrwx. 2 root root 4096 3月 11 19:44 dir900 -rw-rw-rw-. 1 root root 0 3月 11 19:44 file900
修改shell umask值(永久)
[root@localhost ~]# vim /etc/profile if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then umask 002 else umask 022 fi [root@localhost ~]# source /etc/profile //立即在当前shell中生效
通过umask决定新建用户家目录的权限
[root@localhost ~]# vim /etc/login.defs UMASK 077[root@localhost ~]# useradd gougou[root@localhost ~]# ll -d /home/gougou/drwx------. 4 gougou gougou 4096 3月 11 19:50 /home/gougou/[root@localhost ~]# vim /etc/login.defsUMASK 000[root@localhost ~]# useradd yangyang[root@localhost ~]# ll -d /home/yangyang/drwxrwxrwx. 4 yangyang yangyang 4096 3月 11 19:53 /home/yangyang/
例如:vsftpd进程 /etc/vsftpd/vsftpd.conf 【了解即可】
anon_umask=007local_umask=000
补充说明[感兴趣可以了解一下]
vsftpd(Very Secure FTP Daemon)是一个流行的 FTP 服务器,因其安全性和高性能而受到广泛使用。/etc/vsftpd/vsftpd.conf 是 vsftpd 的主要配置文件,用于定义 FTP 服务的各种设置。主要配置选项(1)listen作用:控制 vsftpd 以独立模式(非 xinetd 模式)运行。设置为 YES 时,vsftpd 将直接监听端口。示例:listen=YES(2)listen_ipv6作用:如果服务器支持 IPv6,设置为 YES 可以让 vsftpd 监听 IPv6 地址。示例:listen_ipv6=YES(3)anonymous_enable作用:允许匿名用户访问 FTP 服务器。如果设置为 YES,用户可以使用 "anonymous" 登录。示例:anonymous_enable=NO(4)local_enable作用:允许本地用户登录。如果设置为 YES,系统上的本地用户可以通过 FTP 访问。示例:local_enable=YES(5)write_enable作用:控制是否允许写入操作,如上传文件等。如果设置为 YES,则允许写入。示例:write_enable=YES(6)chroot_local_user作用:将本地用户限制在其主目录中,增强安全性。示例:chroot_local_user=YES(7)userlist_enable作用:启用用户列表功能,可以控制哪些用户可以访问 FTP。示例:userlist_enable=YES(8)userlist_deny作用:指定用户列表中用户的访问权限。如果设置为 YES,则列表中的用户被拒绝访问。示例:userlist_deny=NO(9)max_clients作用:限制同时连接到 FTP 服务器的最大客户端数量。示例:max_clients=200(10)max_per_ip作用:限制每个 IP 地址允许的最大连接数。示例:max_per_ip=5(11)pasv_enable作用:启用被动模式。被动模式下,FTP 客户端与服务器的连接方式更适合穿越防火墙。示例:pasv_enable=YES(12)pasv_min_port 和 pasv_max_port作用:指定被动模式下可使用的端口范围。示例:pasv_min_port=10000 pasv_max_port=10100
版权归原作者 肾透侧视攻城狮 所有, 如有侵权,请联系我们删除。