Linux用户权限管理

Linux是一个多用户的操作系统,为了实现资源分派及出于安全的考虑,必须对用户进行不同权限的分配。用户组便于更高效地管理用户权限。

用户操作Linux需要经过三个步骤的权限认证:

  • Authentication:认证
  • Authorization:授权
  • Accouting:审计

用户及用户组

用户UID

  • 管理员:root, 0
  • 普通用户:1-65535
    • 系统用户:1-499, 1-999(centos7) 作用:对守护进程获取资源进行权限分配
    • 登录用户:500+, 1000+

用户组GID

  • 管理员组:root, 0
  • 普通组:
    • 系统组:1-499, 1-999(centos7)
    • 普通组:500+, 1000+

Linux安全上下文:

  • 运行中的程序:进程 (process)
  • 以进程发起者的身份运行:
  • 进程所能够访问的所有资源的权限取决于进程的发起者的身份;

Linux组的类别:

  • 用户的基本组(主组):组名同用户名,且仅包含一个用户:私有组
  • 用户的附加组(额外组):

Linux用户和组相关的配置文件:

  • /etc/passwd:用户及其属性信息(名称、UID、基本组ID等等);
  • /etc/group:组及其属性信息;
  • /etc/shadow:用户密码及其相关属性;

root:$6$LQX0XQPn8GGtl.WF$oLtdUxErgZFU7sGPWx9t4xGj/fSvb2IOZV6lp4t 1XfoGL8V/iayOtfqBrpqaOmxncY6RKAPhUouRqYbzilaAH/:16538:0:99999:7: ::
用户名:加密了的密码:最近一次更改密码的日期:密码的最小使用期限(修改之后至少要用多久才能再次修改):最大密码使用期限(超过使用期限必须修改密码):密码警告时间段(提示修改密码):密码禁用期(登录后必须修改密码):账户过期日期(账号被锁定,须找管理员处理):保留字段

  • /etc/gshadow:组密码及其相关属性;

加密机制

相同密码的不同用户其加密串也不同

[root@senlong tmp]# useradd tom
[root@senlong tmp]# useradd jerry
[root@senlong tmp]# echo 'redhat' | passwd --stdin tom
Changing password for user tom.
passwd: all authentication tokens updated successfully.
[root@senlong tmp]# echo 'redhat' | passwd --stdin jerry
Changing password for user jerry.
passwd: all authentication tokens updated successfully.
[root@senlong tmp]# tail -n 2 /etc/shadow
tom:$6$iZ29ET3u$eAxeb87ezlGjkcNPHkvHMievPk.57AinM0vpkI92yxcPY649kWg.2pgGTR01tBeAUDe7wLyWHx9DHVRHdxEeY.:17182:0:99999:7:::
jerry:$6$aSOCF9UE$WYjJi4V6f0hHfx2FkfDWEwFgeROYLrio4e2rhjYdKsI5dtUgCkXmgwCVJ8zvIQ4r/33addrH/5j/o4Mi1S5Yg0:17182:0:99999:7:::

用户和组相关命令

用户创建:useradd

useradd [options] LOGIN

  • -u UID: [UID_MIN, UID_MAX], 定义在/etc/login.defs
  • -g GID:指明用户所属基本组,可为组名,也可以GID;
  • -c "COMMENT":用户的注释信息;
  • -d /PATH/TO/HOME_DIR: 以指定的路径为家目录;
  • -s SHELL: 指明用户的默认shell程序,可用列表在/etc/shells文件中;
  • -G GROUP1[,GROUP2,...[,GROUPN]]]:为用户指明附加组;组必须事先存在;
  • -r: 创建系统用户

默认值设定:/etc/default/useradd文件中
useradd -D
-s SHELL

[root@senlong tmp]# cat /etc/login.defs # 查看用户帐号限制的文件
#
# Min/max values for automatic uid selection in useradd
#
UID_MIN           500
UID_MAX         60000
...

组创建:groupadd

groupadd [OPTION]... group_name

  • g GID: 指明GID号;[GID_MIN, GID_MAX]
  • r: 创建系统组

切换用户或以其他用户身份执行命令:su

su [options...] [-] [user [args...]]

切换用户的方式:

  • su UserName:非登录式切换,即不会读取目标用户的配置文件;
  • su - UserName:登录式切换,会读取目标用户的配置文件;完全切换;

Note:root su至其他用户无须密码;非root用户切换时需要密码;

换个身份执行命令:

su [-] UserName -c 'COMMAND'

用户属性修改:usermod

usermod [OPTION] login

  • -u UID: 新UID
  • -g GID: 新基本组
  • -G GROUP1[,GROUP2,...[,GROUPN]]]:新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使用-a选项,表示append;
  • -s SHELL:新的默认SHELL;
  • -c 'COMMENT':新的注释信息;
  • -d HOME: 新的家目录;原有家目录中的文件不会同时移动至新的家目录;若要移动,则同时使用-m选项;
  • -l login_name: 新的名字;
  • -L: lock指定用户
  • -U: unlock指定用户
  • -e YYYY-MM-DD: 指明用户账号过期日期;
  • -f INACTIVE: 设定非活动期限;

给用户添加密码:passwd

passwd [OPTIONS] UserName: 修改指定用户的密码,仅root用户权限
passwd: 修改自己的密码;

  • -l: 锁定指定用户
  • -u: 解锁指定用户
  • -n mindays: 指定最短使用期限
  • -x maxdays:最大使用期限
  • -w warndays:提前多少天开始警告
  • -i inactivedays:非活动期限;
  • --stdin:从标准输入接收用户密码;
echo "PASSWORD" | passwd --stdin USERNAME

删除用户:userdel

userdel [OPTION]... login

  • -r: 删除用户家目录;

组属性修改:groupmod

groupmod [OPTION]... group

  • -n group_name: 新名字
  • -g GID: 新的GID;

组删除:groupdel

groupdel GROUP

组密码:gpasswd

gpasswd [OPTION] GROUP

  • -a user: 将user添加至指定组中;
  • -d user: 删除用户user的以当前组为组名的附加组
  • -A user1,user2,...: 设置有管理权限的用户列表

修改用户属性:chage

chage [OPTION]... LOGIN

  • -d LAST_DAY
  • -E, --expiredate EXPIRE_DATE
  • -I, --inactive INACTIVE
  • -m, --mindays MIN_DAYS
  • -M, --maxdays MAX_DAYS
  • -W, --warndays WARN_DAYS

权限管理:

文件的权限主要针对三类对象进行定义:

  • owner: 属主, u
  • group: 属组, g
  • other: 其他, o

每个文件针对每类访问者都定义了三种权限:

  • r: Readable
  • w: Writable
  • x: eXcutable

文件:

  • r: 可使用文件查看类工具获取其内容;
  • w: 可修改其内容;
  • x: 可以把此文件提请内核启动为一个进程;

目录:

  • r: 可以使用ls查看此目录中文件列表;
  • w: 可在此目录中创建文件,也可删除此目录中的文件;
  • x: 可以使用ls -l查看此目录中文件列表,可以cd进入此目录;

权限用数字表示

权限 二进制 十进制
--- 000 0
--x 001 1
-w- 010 2
-wx 011 3
r-- 100 4
r-x 101 5
rw- 110 6
rwx 111 7

简化记忆:读(r) = 4 写(w) = 2 执行(x) = 1

如:

640: rw-r-----
rwxr-xr-x: 755

修改文件权限:chmod

chmod [OPTION]... OCTAL-MODE FILE...

  • -R: 递归修改权限

chmod [OPTION]... MODE[,MODE]... FILE...

修改一类用户的所有权限:

  • u=
  • g=
  • o=
  • ug=
  • a=
  • u=,g=

修改一类用户某位或某些位权限

  • u+
  • u-

修改文件的属主:chown

chown [OPTION]... [OWNER][:[GROUP]] FILE...
chown [OPTION]... --reference=RFILE FILE...

  • -R: 递归

修改文件的属组:chgrp

chgrp [OPTION]... GROUP FILE...
chgrp [OPTION]... --reference=RFILE FILE...

  • -R

umask

文件或目录创建时的遮罩码(指定了创建文件/目录的默认权限):umask

  • FILE: 666-umask 如果某类的用户的权限减得的结果中存在x权限,则将其权限+1(仅限文件)
  • DIR: 777-umask
[root@senlong tmp]# umask # 查看掩码
0022
[root@senlong tmp]# umask 3 # 修改掩码
[root@senlong tmp]# umask
0003
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,590评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 86,808评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,151评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,779评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,773评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,656评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,022评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,678评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,038评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,659评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,756评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,411评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,005评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,973评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,053评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,495评论 2 343

推荐阅读更多精彩内容