用户、组、权限

2024-06-23 10:18
文章标签 用户 权限

本文主要是介绍用户、组、权限,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

用户、组、权限
一、权限:r, w, x
1.文件权限:
      r:可读,可以使用类似cat等命令查看文件内容;
      w:可写,可以编辑或删除此文件;
      x: 可执行,eXacutable,可以命令提示符下当作命令提交给内核运行;
2.目录权限:
      r: 可以对此目录执行ls以列出内部的所有文件;
      w: 可以在此目录创建文件;
      x: 可以使用cd切换进此目录,也可以使用ls -l查看内部文件的详细信息;
3.权限三位一体:
      rwx:可读可学可执行
      r--:只读
      r-x:读和执行
      ---:无权限
4.八进制表示: 
      0 000 ---:无权限
      1 001 --x: 执行
      2 010 -w-: 写
      3 011 -wx: 写和执行
      4 100 r--: 只读
      5 101 r-x: 读和执行
      6 110 rw-: 读写
      7 111 rwx: 读写执行
例如:755:rwxr-xr-x
          rw-r-----: 640
          660:rw-rw----
          rwxrwxr-x:775
二、用户和用户组
1.用户和组的文件路径:
    用户:UID, /etc/passwd
    组:GID, /etc/group
2.影子口令:(真正口令文件路径)
    用户:/etc/shadow
    组:/etc/gshadow
3.用户类别:
    管理员:0
    普通用户:1-65535
    系统用户:1-499
    一般用户:500-60000
4.用户组类别:
    管理员组:0
    普通组:1-65535
    系统组:1-499
    一般组:500-60000
5.用户组类别:
      私有组:创建用户时,如果没有为其指定所属的组,系统会自动为其创建一个与用户名同名的组
      基本组:用户的默认组
      附加组,额外组:默认组以外的其它组
6.解释/etc/passwd中7段意义:(用户名:密码:UID:GID:注释:家目录:默认SHELL)
      1).account: 登录名
      2).password: 密码
      3).UID:
      4).GID:基本组ID
      5).comment: 注释
      6).HOME DIR:家目录
      7).SHELL:用户的默认shell
7.解释/etc/group中4段意义: 组名:密码:GID:以此组为其附加组的用户列表
8.解释/etc/shadow中8段意义:(用户名:密码:最近一次修改密码的时间:最短使用期限:最长使用期限:警告时间:非活动时间:过期时间:)
      1).account: 登录名
      2).encrypted password: 加密的密码,$中间的为salt
9.加密方法:
 对称加密:加密和解密使用同一个密码
 公钥加密:每个密码都成对儿出现,一个为私钥(secret key),一个为公钥(public key)
 单向加密,散列加密:提取数据特征码,常用于数据完整性校验
  1、雪崩效应
  2、定长输出
                  MD5:Message Digest, 128位定长输出
                  SHA1:Secure Hash Algorithm, 160位定长输出
三、管理命令
1.用户管理命令:useradd, userdel, usermod, passwd, chsh, chfn, finger, id, chage
  1).useradd  [options]  USERNAME 
      -u UID
      -g GID(基本组)
      -G GID,...  (附加组)
      -c "COMMENT"
      -d /path/to/directory
      -s SHELL
      -m -k
      -M
      -r: 添加系统用户
  2).userdel [option] USERNAME
      -r: 同时删除用户的家目录
  3).id:查看用户的帐号属性信息
      -u
      -g
      -G
      -n
  4).finger: 查看用户帐号信息
      finger USERNAME
  5).usermod:修改用户帐号属性
    -u UID 
    -g GID
    -a -G GID:不使用-a选项,会覆盖此前的附加组;
    -c
    -d -m:
    -s
    -l
    -L:锁定帐号
    -U:解锁帐号
  6).chsh: 修改用户的默认shell
  7).chfn:修改注释信息
  8).passwd:密码管理
    passwd [USERNAME]
      --stdin
      -l
      -u
      -d: 删除用户密码
  9).pwck:检查用户帐号完整性
2.组管理命令:groupadd, groupdel, groupmod, gpasswd
  1).groupadd:创建组 
    -g GID
    -r:添加为系统组
  2).groupmod
    -g GID
    -n GRPNAME
  3).groupdel
  4).gpasswd:为组设定密码
  5).newgrp GRPNAME <--> exit
  6).chage:更改密码使用时间
    -d: 最近一次的修改时间
    -E: 过期时间
    -I:非活动时间
    -m: 最短使用期限
    -M: 最长使用期限
    -W: 警告时间
3.权限管理:chown, chgrp, chmod, umask
  1).chown: 改变文件属主(只有管理员可以使用此命令)
    格式:chown USERNAME file,...
              chown USERNAME:GRPNAME file,...
              chown USERNAME.GRPNAME file,...
    -R: 修改目录及其内部文件的属主
    --reference=/path/to/somefile file,...
  2).chgrp:改变文件属组
    格式:chgrp GRPNAME file,...
    -R:递归
    --reference=/path/to/somefile file,...改正和somefile文件一样的属组
  3).chmod: 修改文件的权限
    格式:chmod MODE file,...
    -R:递归更改
    --reference=/path/to/somefile file,...改正和somefile文件一样的权限
  4).修改某类用户或某些类用户权限:u,g,o,a
    格式:chmod 用户类别=MODE file,...
  5).修改某类用户的某位或某些位权限:u,g,o,a
    格式:chmod 用户类别+|-MODE file,...
 
四、特殊权限
特殊权限也是一个三位的:s,s,t
1.SUID: 运行某程序时,相应进程的属主是程序文件自身的属主,而不是启动者;
 格式:chmod u+s FILE  ,chmod u-s FILE
 注意:如果FILE本身原来就有执行权限,则SUID显示为s;否则显示S;
2.SGID: 运行某程序时,相应进程的属组是程序文件自身的属组,而不是启动者所属的基本组;
 格式:chmod g+s FILE  , chmod g-s FILE
 注意:如果FILE本身原来就有执行权限,则SUID显示为s;否则显示S
3.Sticky: 在一个公共目录,每个都可以创建文件,删除自己的文件,但不能删除别人的文件;
 格式:chmod o+t DIR  , chmod o-t DIR
 注意:如果FILE本身原来就有执行权限,则SUID显示为t;否则显示T
五、umask:遮罩码
    文件默认权限:666-umask
    文件夹默认权限:777-umask
    特殊权限默认为0
    默认遮罩码:umask=0022
    更改遮罩码:umask 0023
注意:文件默认不能具有执行权限,如果算得的结果中有执行权限,则将其权限加1;

这篇关于用户、组、权限的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1086872

相关文章

SpringSecurity显示用户账号已被锁定的原因及解决方案

《SpringSecurity显示用户账号已被锁定的原因及解决方案》SpringSecurity中用户账号被锁定问题源于UserDetails接口方法返回值错误,解决方案是修正isAccountNon... 目录SpringSecurity显示用户账号已被锁定的解决方案1.问题出现前的工作2.问题出现原因各

MySQL 用户创建与授权最佳实践

《MySQL用户创建与授权最佳实践》在MySQL中,用户管理和权限控制是数据库安全的重要组成部分,下面详细介绍如何在MySQL中创建用户并授予适当的权限,感兴趣的朋友跟随小编一起看看吧... 目录mysql 用户创建与授权详解一、MySQL用户管理基础1. 用户账户组成2. 查看现有用户二、创建用户1. 基

如何搭建并配置HTTPD文件服务及访问权限控制

《如何搭建并配置HTTPD文件服务及访问权限控制》:本文主要介绍如何搭建并配置HTTPD文件服务及访问权限控制的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、安装HTTPD服务二、HTTPD服务目录结构三、配置修改四、服务启动五、基于用户访问权限控制六、

SpringBoot整合Sa-Token实现RBAC权限模型的过程解析

《SpringBoot整合Sa-Token实现RBAC权限模型的过程解析》:本文主要介绍SpringBoot整合Sa-Token实现RBAC权限模型的过程解析,本文给大家介绍的非常详细,对大家的学... 目录前言一、基础概念1.1 RBAC模型核心概念1.2 Sa-Token核心功能1.3 环境准备二、表结

Mysql中的用户管理实践

《Mysql中的用户管理实践》:本文主要介绍Mysql中的用户管理实践,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录13. 用户管理13.1 用户 13.1.1 用户信息 13.1.2 创建用户 13.1.3 删除用户 13.1.4 修改用户

详解如何在SpringBoot控制器中处理用户数据

《详解如何在SpringBoot控制器中处理用户数据》在SpringBoot应用开发中,控制器(Controller)扮演着至关重要的角色,它负责接收用户请求、处理数据并返回响应,本文将深入浅出地讲解... 目录一、获取请求参数1.1 获取查询参数1.2 获取路径参数二、处理表单提交2.1 处理表单数据三、

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设

SpringBoot UserAgentUtils获取用户浏览器的用法

《SpringBootUserAgentUtils获取用户浏览器的用法》UserAgentUtils是于处理用户代理(User-Agent)字符串的工具类,一般用于解析和处理浏览器、操作系统以及设备... 目录介绍效果图依赖封装客户端工具封装IP工具实体类获取设备信息入库介绍UserAgentUtils

Mysql用户授权(GRANT)语法及示例解读

《Mysql用户授权(GRANT)语法及示例解读》:本文主要介绍Mysql用户授权(GRANT)语法及示例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql用户授权(GRANT)语法授予用户权限语法GRANT语句中的<权限类型>的使用WITH GRANT

Spring Security+JWT如何实现前后端分离权限控制

《SpringSecurity+JWT如何实现前后端分离权限控制》本篇将手把手教你用SpringSecurity+JWT搭建一套完整的登录认证与权限控制体系,具有很好的参考价值,希望对大家... 目录Spring Security+JWT实现前后端分离权限控制实战一、为什么要用 JWT?二、JWT 基本结构