linux12 ~文件访问控制列表
文件访问控制列表
一般权限、特殊权限、隐藏权限其实有一个共性—权限是针对某一类用户设置的。如果希望对某个指定的用户进行单独的权限控制,就需要用到文件的访问控制列表(ACL)了。通俗来讲,基于普通文件或目录设置ACL其实就是针对指定的用户或用户组设置文件或目录的操作权限。另外,如果针对某个目录设置了ACL,则目录中的文件会继承其ACL;若针对文件设置了ACL,则文件不再继承其所在目录的ACL。
setfacl命令
setfacl命令用于管理文件的ACL规则,格式为“setfacl [参数] 文件名称”。文件的ACL提供的是在所有者、所属组、其他人的读/写/执行权限之外的特殊权限控制,使用setfacl命令可以针对单一用户或用户组、单一文件或目录来进行读/写/执行权限的控制。其中,针对目录文件需要使用-R递归参数;针对普通文件则使用-m参数;如果想要删除某个文件的ACL,则可以使用-b参数。
常用参数:
-R:递归参数,针对目录文件时使用;
-m:针对普通文件时使用;
-b:删除文件或目录的ACL;
getfacl命令
getfacl命令用于显示文件上设置的ACL信息,格式为“getfacl 文件名称”。要设置ACL,用的是setfacl命令;要想查看ACL,则用的是getfacl命令。
su命令与sudo服务
Linux系统为了安全性考虑,使得许多系统命令和服务只能被root管理员来使用,但是这也让普通用户受到了更多的权限束缚,从而导致无法顺利完成特定的工作任务。
su命令
su命令可以解决切换用户身份的需求,使得当前用户在不退出登录的情况下,顺畅地切换到其他用户,比如从root管理员切换至普通用户。
su命令与用户名之间有一个减号(-),这意味着完全切换到新的用户,即把环境变量信息也变更为新用户的相应信息,而不是保留原始的信息。强烈建议在切换用户身份时添加这个减号(-)。
sudo命令
sudo命令把特定命令的执行权限赋予给指定用户,这样既可保证普通用户能够完成特定的工作,也可以避免泄露root管理员密码。我们要做的就是合理配置sudo服务,以便兼顾系统的安全性和用户的便捷性。sudo服务的配置原则也很简单—在保证普通用户完成相应工作的前提下,尽可能少地赋予额外的权限。
sudo命令用于给普通用户提供额外的权限来完成原本root管理员才能完成的任务,格式为“sudo [参数] 命令名称”
sudo服务中的可用参数以及作用
参数 作用
-h 列出帮助信息
-1 列出当前用户可执行的命令
-u 用户名或UID值 以指定的用户身份执行命令
-k 清空密码的有效时间,下次执行sudo时需要再次进行密码验证
-b 在后台执行指定的命令
-P 更改询问密码的提示语
sudo命令具有如下功能:
限制用户执行指定的命令:
记录用户执行的每一条命令;
配置文件(/etc/sudoers)提供集中的用户管理、权限与主机等参数;
验证密码的后5分钟内(默认值)无须再让用户再次验证密码。
visudo命令
用于配置用户权限。使用该命令配置用户权限时将禁止多个用户同时修改sudoers配置文件,还可以对配置文件内的参数进行语法检查,并在发现参数错误时进行报错。只有root管理员才能用visudo命令
1).给普通用户passwd命令,并用普通用户修改root密码
进入visudo里,显示行号set nu ,在99行下处添加
- 【TINY4412】LINUX移植笔记:(12)NFS网络文件系统
- Linux 中 grep 命令的 12 个实践例子
- Linux学习日志(12)- 命令echo的一些用法
- Linux学习总结(12)——Linux必须学会的60个命令
- Linux 中 grep 命令的 12 个实践例子
- Linux 如何实现 VLAN - 每天5分钟玩转 OpenStack(12)
- Suse Linux Enterprise 12 配置 eth0 eth1
- CDH 5.9 之 Kylin 安装 (SuSE Linux Enterprise 12 SP1)
- 12 个可替代树莓派的单板机 | Linux 中国
- Linux 学习笔记_12_Windows与Linux文件共享服务_1.1_--Samba(下)Samba经典应用案例
- Linux网管学习笔记(12)Linux内核到底有多安全?
- Linux系统的安装/在VMware workerstation 12的虚拟机上安装CentOS 7.0系统
- linux_学习笔记_12/3/2010
- Linux操作系统:12则经典运用技巧
- 10-12Linux流编程的一些知识点
- SUSE Linux Enterprise Server 12 试用体验
- Linux 中 grep 命令的 12 个实践例子
- 【12】git获取linux kernel stable版本
- 《王保明老师----Linux开发学习笔记》------讲12:守护进程 -----如何分析和理解下面这个创建守护进程的实例
- 在 Linux 命令行中使用和执行 PHP 代码(二):12 个 PHP 交互性 shell 的用法