首页 > 系统相关 >Linux 特殊权限和 ACL 权限管理

Linux 特殊权限和 ACL 权限管理

时间:2023-07-07 15:12:11浏览次数:41  
标签:文件 set ACL Linux 普通用户 权限 目录

Linux 上有三种特殊权限,分别是 set uid,set gid,sticky。对应权限的数值分别为4,2,1。对应权限的字母分别为 s,s,t。对应的操作分别为 chmod u+s file,chmod g+s dir,chmod o+t dir,对应的操作也支持将字母替换为数字

 

set uid:一般作用于二进制文件,二进制文件在设置了该权限后,用户在执行该文件时会临时获得 root 的权限

以 netstat 命令的 “-p” 参数为例,netstat 命令在设置了 set uid 权限后 sysop 用户也可以使用 “-p” 参数

set gid:作用于目录文件,如果一个目录被设置了 set gid 的权限,那么任何用户在这个目录下创建的文件,都会属于该目录的所属组

sticky:作用于目录文件,sticky 特殊权限设置的目的是为了降低目录的权限。如果一个普通用户对一个目录具备了 rwx 权限,那么任何用户在该目录下的文件,都可以被该用户删除,包括 root 的文件(/tmp 目录的默认权限就包含 sticky)

ACL(Access Control List,访问控制列表)在 Linux 系统内用来控制文件权限,提升系统安全和可靠性

ACL 权限可通过 setfacl 和 getfacl 命令设置和查看(红帽系列基本都自带这两个命令,Debian 系列安装 acl 软件包即可)

sudo 权限委派

由于 Linux 系统大部分都是使用 normal user 进行 ssh 远程 login,所以熟练的使用 sudo 以及配置一个用户的提权就非常重要。

主配置文件:/etc/sudoers

子配置文件:/etc/sudoers.d/*

# 大部分情况我们都不会修改主配置文件,会在 /etc/sudoers.d/ 目录下创建一个以“需要提权的用户”命名的文件,如下所示

# “NOPASSWD” 表示普通用户在执行 root 用户命令操作时不需要输入 sudo 密码

root@debian:~# cat /etc/sudoers.d/sysop 

sysop ALL=(ALL) NOPASSWD:ALL

Debian 或 Ubuntu 系统在创建普通用户时,默认不创建普通用户的家目录(即使使用“-d”参数指定也不行)并且创建普通用户默认的 shell 是 sh

可通过两种办法解决,一种是通过命令参数,一种是修改配置文件

标签:文件,set,ACL,Linux,普通用户,权限,目录
From: https://www.cnblogs.com/demoduan/p/17534945.html

相关文章

  • linux overlay文件系统
    一个overlay文件系统包含两个文件系统,一个upper文件系统和一个lower文件系统,是一种新型的联合文件系统。overlay是“覆盖…上面”的意思,overlay文件系统则表示一个文件系统覆盖在另一个文件系统上面。为了更好的展示overlay文件系统的原理,现新构建一个overlay文件系统。......
  • linux安装nacos设置开机自启动
    1.设置nacos配置文件1.1找到系统中java安装路径java-verbose最后一行就有java安装具体路径[root@master-nodejava]#vi/etc/profile#在末尾增加exportJAVA_HOME=/usr/local/java/openJDK-1.8exportPATH=$JAVA_HOME/bin:$PATHexportCLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$......
  • 解决oracle zhs16gbk和MySQL utf8转换乱码的具体操作步骤
    解决OracleZHS16GBK和MySQLUTF8转换乱码问题作为一名经验丰富的开发者,我将向你解释如何解决OracleZHS16GBK和MySQLUTF8转换乱码问题。我们将按照以下步骤进行操作:步骤说明1导出数据2创建MySQL数据库3创建UTF8编码的表4导入数据接下来,我将详细解释......
  • linux编译PDFium.so
    主要参考https://zhuanlan.zhihu.com/p/37729756这篇文章,不过编译后没有libPDFium.so这个文件。本方法已在龙芯3A5000,统信专业版测试通过。已打包PDFium及gyp的下载地址:链接:https://pan.baidu.com/s/1tG-gf3gehzXjSYnoanIDSg?pwd=xwzv提取码:xwzv一、取主代码pdfium的源码......
  • Linux安装ftp服务(详细)
    1、登录Xshell2、安装vsftpd查看是否已经安装过vsftpd了rpm-qa|grepvsftpd如果没安装过执行如下命令yum-yinstallvsftpd  3.修改vsftpd配置(关闭匿名访问)打开配置文件:vi/etc/vsftpd/vsftpd.conf将文件中 anonymous_enable=YES修改为:(代开后 按......
  • linux系统报错:系统自己弹出诸如 kernel:NMI watchdog: BUG: soft lockup - CPU#2 stuc
    1、https://blog.csdn.net/weixin_41752389/article/details/120777145 内核软死锁(softlockup)Softlockup:这个bug没有让系统彻底死机,但是若干个进程(或者kernelthread)被锁死在了某个状态(一般在内核区域),很多情况下这个是由于内核锁的使用的问题。出现死锁原因1、CPU高负载时......
  • 在Linux环境下通过命令行执行JMeter脚本后查看响应结果的配置
    在Linux环境中进行性能测试时,我们可能会遇到一定程度的报错。如果无法打开JMeter的GUI界面,但又需要查看响应结果,可以按照以下步骤进行配置:1.打开JMeter的安装目录,在`bin/`目录下找到`jmeter.properties`配置文件。2.使用文本编辑器打开`jmeter.properties`文件,并在文件末尾添......
  • 解决“Host key verification failed”远程连接linux服务器 could not establish conn
    在使用vscode远程连接linux服务器时,遇到了个报错:couldnotestablishconnectionto我用的服务器是腾讯云轻应用。查了半天看到阿里云文档里有类似的解决方法,最后得到解决。发现是本地缓存的问题?使用SSH远程连接Linux系统的ECS实例时,提示“Hostkeyverificationfailed”错误怎......
  • Linux下alternatives命令学习总结
    在Linux系统中提供了一个alternatives命令,用于在多个同功能的软件,或软件的多个不同版本间选择、切换。简单来说就是版本切换控制。例如,你的操作系统有多个Python版本,例如python3.6,Python3.9,如果不用alternatives命令,那么你可能需要通过手工修改软链接来实现Python版本的切换。......
  • Linux之shell编程
     1.脚本格式要求2.脚本的执行方式一:输入输出重定向1.输入重定向<将/etc/fstab作为输出重新定向到cat命令上2.输出重定向>>现实当前文件下的项目,创建一个文本txt,ls命令重新定向到txt中并显示出来3.管道grep|二:shell里的特殊字符【$\'''`】1.“[双引号]、’[单......