IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Linux权限管理 -> 正文阅读

[系统运维]Linux权限管理

Linux权限管理

1.权限简介

Linux权限是操作系统用来限制对资源访问的机制,权限一般分为读、写、执行。系统中每个文件都拥有特定的权限:属主、属组以及其他人,通过这样的机制来限制哪些用户或用户组可以对特定文件进行相应的操作。

1.1权限分类

-权限针对文件的三类对象:

全拼翻译简写
owner属主u
group属组g
other其他人o

-权限分类

权限对文件的影响对目录的影响
r(读取)可读取文件内容可列出目录中内容
w(写入)可修改文件内容可在目录中创建删除内容
x(执行)可作为命令执行可访问目录内容
注意:目录必须拥有 x 权限,否则无法查看其内容

-权限的表示方式:

第一种第二种
- - -0
- - x1
- w -2
- w x3
r - -4
r - x5
r w -6
r w -7

1.2 Linux安全上下文

Linux每个进程都是以某个用户身份运行,进程的权限与该用户的权限一样,运行该进程的用户的权限越大,则进程拥有的权限就越大。

文件有属主和属组,进程有属主和属组

  • 任何一个可执行程序文件能不能启动为进程,取决于发起者对程序文件是否拥有可执行权限。
  • 启动为进程后,其进程的属主为发起者,属组为发起者的基本组
    进程访问文件时的权限取决于进程的发起者:
    进程的发起者是文件的属主时,则应用文件属主权限
    进程的发起者是文件的属组时,则应用文件属组权限
    应用文件“其它”权限

2.权限管理

2.1 权限修改命令chmod

//权限修改主要修改三类对象的权限

//语法:chmod MODE file,...
    -R      //递归修改权限

//修改某类对象权限:u,g,o,a

权限修改的三种方式:
chmod 对象类别=MODE file,.....
chmod 对象类别=MODE,对象类别=MODE file,.....
例如:
[root@localhost ~]# chmod u=rwx hwf
[root@localhost ~]# chmod u=rwx,g=rwx hwf 

chmod 对象类别+|-MODE file,.....
chmod 对象类别+|-MODE,对象类别+|-MODE file,.....
chmod +|-MODE file,.....
例如:
[root@localhost ~]# chmod u+rwx hwf
[root@localhost ~]# chmod u-x,g-x hwf
[root@localhost ~]# chmod +x hwf

chmod "mode number" file,.....
例如:
[root@localhost ~]# chmod 777 hwf

2.2 属主和属组修改命令chown

//chown命令只有管理员可以使用。

chown USERNAME file,...
    -R      //修改目录及其内部文件的属主

chown USERNAME:GROUPNAME file,...
chown USERNAME.GROUPNAME file,...
例如:
[root@localhost ~]# chown root.root hwf 
[root@localhost ~]# chown root:root hwf

2.3 特殊权限

linux的权限默认是根据linux安全上下文的方式来控制的,而特殊权限的存在打破了linux安全上下文的规则。

SUID(4)     //运行程序时,这个程序启动的进程的属主是程序文件自身的属主,而不是发起者为属主
    chmod u+s file
    chmod u-s file
    //如果file本身原来就有执行权限,则SUID显示为s,否则显示为S
    
SGID(2)     //运行程序时,这个程序启动的进程的属组是程序文件自身的属组,而不是启动者所属的基本组
            //一旦某目录被设定了SGID,则对此目录有写权限的用户在此目录中创建的文件或目录,其所属的组为此设定了SGID的目录的属组
    chmod g+s DIR
    chmod g-s DIR
    //如果file本身原来就有执行权限,则SGID显示为s,否则显示为S
    
SBIT(1)	    //公共目录,每个人都能创建文件,删除自己的文件,但是不能删除别人创建的文件
    chmod o+t DIR
    chmod o-t DIR
    //如果DIR本身原来就有执行权限,则SBIT显示为t,否则显示为T

特殊权限的数字表示方式:
4755    //有SUID,文件权限为755
2755    //有SGID,文件权限为755
1755    //有Sticky,文件权限为755
//这里前面的4、2、1分别表示SUID、SGID、Sticky

2.4文件系统访问控制列表facl

facl(Filesystem Access Control List),利用文件扩展保存额外的访问控制权限。

//语法:setfacl [-bkndRLP] { -m|-M|-x|-X ... } file ...
    -m      //设定权限条目
        u:UID:perm
        g:GID:perm
    示例:
       setfacl -m u:test:rw file
       setfacl -m g:test:rw file

//如果要为某个目录设定默认的访问控制列表,只需要设定时在u或g前面加上d即可
    示例:
       setfacl -m d:u:test:rw file
//此时在此目录中创建的文件均继承此访问控制列表所设置的权限

    -x      //删除权限条目
        u:UID
        g:GID
    示例:
       setfacl -x u:test file
       setfacl -x g:test file

    -b      //Remove all
    示例:
       setfacl -b file

//查看文件系统访问控制列表getfacl
//语法:getfacl [-aceEsRLPtpndvh] file ...
    示例:
       getfacl file

3.sudo借权

sudo可以实现某个用户能够以另外哪一个用户的身份通过哪些主机执行什么命令

sudo的配置文件:/etc/sudoers

//使用visudo命令进行sudo的配置,每一行就是一个sudo条目,条目格式如下:

示例:
	who which_hosts=(runas) command

who : User,User_Alias			//表示运行命令者的身份
which_hosts : Host,Host_Alias		//通过哪些主机
runas : User,Runas_Alias		//以哪个用户的身份
command : Command,Cmnd_Alias		//运行哪些命令

//别名必须全部而且只能使用大写英文字母的组合,可以使用感叹号取反

//别名分类
1.用户别名:
User_Alias "Alias" =
	用户的用户名
	组名,使用%引导
	还可以其它已经定义的用户别名

2.主机别名:
Host_Alias "Alias" =
	主机名
	IP地址
	网络地址
	其它主机别名

3.命令别名:
Cmnd_Alias =
	命令路径
	目录(此目录内的所有命令)
	其它已定义的命令别名

//sudo命令语法:sudo [options] COMMAND
    -V      //显示版本编号
    -h      //帮助信息,会显示版本编号及指令的使用方式说明
    -l      //列出当前用户可以使用的所有sudo类命令
    -v      //重新做一次密码确认,如果超过N(默认为5)分钟,也会问密码
    -k      //立刻清除认证信息,如果不指定-k,默认认证信息在5分钟后失效
    -b      //将要执行的指令放在后台执行
    -u USERNAME     //以指定的用户名执行命令,默认为root

4.文件特殊属性命令

chattr命令用于改变文件的特殊属性。与chmod命令相比,chmod只是改变文件的读写、执行权限,而chattr是基于内核的更底层的属性控制。

命令格式:
	chattr [选项] [+/-/=属性] [文件或目录]

选项:
	-R	//递归
	-V	//显示过程

模式:
	+	//用于增加属性
	-	//用户删除属性
	=	//用于指定属性
	A	//告诉系统不要修改该文件的最后访问时间
	a	//只能向文件追加数据,不能删除
	i	//设定文件不能被删除,改名,写入或新增内容

示例:
[root@hwf ~]# chattr +a hwf.txt		//为hwf.txt增加a属性

[root@hwf ~]# lsattr hwf.txt		//查看文件特殊属性 
-----a-------e-- hwf.txt
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-07-04 23:22:23  更:2022-07-04 23:23:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/18 20:28:16-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码