Linux命令系列之 - 用户组权限操作 - 用户组权限设置基本操作
1、用户和组管理
用户和组相关文件:
/etc/passwd:用户及其属性信息
/etc/shadow:用户密码及其相关属性
/etc/group:组及其属性信息
/etc/gshadow:组密码及其相关属性
/etc/passwd文件格式:
login name:登录用户名称 passwd:密码 UID:用户身份编号 GID:登录默认所在组编号 GECOS:用户全名或注释 home directory:用户主目录,家目录,如 /home/hong shell:用户默认使用shell(如/bin/bash)
/etc/shadow文件格式:
登录用户名称
用户密码:一般用sha512加密
从1970年1月1日起到密码最近一次被更改的时间
用户和组的关系:
用户的主要组:用户必须属于一个且只有一个主组,默认创建用户时会自动创建主组
用户的附加组:一个用户可以属于零个或多个辅助组,附属组
1.1组管理
Linux中可以将一个或多个用户加入用户组中,用户组是通过GID(group identifie)来唯一标识。
管理员组:root - 0
普通组:
系统组:对守护进程获取资源进行权限分配
普通组:给用户使用
用户组命令:
groupadd:添加组
groupmod:修改组
groupdel:删除组
gpasswd:修改组密码
newgrp:临时切换组
groupmems:更改和查看组成员
groups:查看用户组关系
1.2用户管理
linux中每个用户是通过UID(user identifie)来唯一标识的。
管理员UID:root - 0
普通用户UID:1-60000自动分配
系统用户:对守护进程获取资源进行权限分配
1-499(centos6版本以前),1-999(centos7版本之后)
登录用户:给用户进行交互式登录使用
500+(centos6版本以前),1000+(centos7版本之后)
useradd命令 - 可以创建新的Linux用户
#格式 useradd [option] LOGIN #常用选项 -u:UID -o:配合-u选项,不检查UID的唯一性 -g GID:指明用户所属基本组 -c "comment":用户注释信息 -d HOME_DIR:以指定路径为家目录 -s SHELL:指明用户默认shell程序 -G GROUP:为用户指明附加组,组须事先存在 -N:不创建私用组做主组,使用users组做主组 -r:创建系统用户 -m:创建家目录,用于系统用户 -M:不创建家目录,用于非系统用户 -p:指定密码
usermod命令 - 可以修改用户属性
#格式 usermod [option] LOGIN
userdel - 删除Linux用户
userdel [option]... LOGIN #常见选项 -f,--force 强制 -r,--remove 删除用户家目录和邮箱
id - 查看用户的UID,GID信息
id [option]... [user] #常见选项 -u:显示UID -g:显示GID -G:显示用户所属的组ID -n:显示名称,需配合ugG使用
su - switch user:可以切换用户身份,并且以指定用户的身份执行命令
#格式 su [option...] [-] [user [args..]] #常见选项 -l,--login su -l username,相当于su - username -c,--command <command> 把一个简单命令传给shell
切换用户的方式:
su username:非登录模式切换,即不会读取目标用户的配置文件,不改变当前工作目录,为不完全切换
su - username:登录模式切换,会读取目标用户的配置文件,切换至自己家目录,即完全切换
passwd - 可以修改用户密码
#格式 passwd [options] usename #常用选项 -d:删除指定用户密码 -l:锁定指定用户 -u:解锁指定用户 -e:强制用户下次登录修改密码 -f:强制操作 -n mindays -x maxdays -w warndays -i inactivedays:非活动期限 --stdin:从标准输入接收用户密码
用户相关命令:
chfn:指定个人信息
chsh:指定shell
finger:查看用户个人信息
2、用户权限管理
2.1 文件权限
常用命令
chown:设置文件的所有者
chgrp:设置文件的属组
2.1.1 文件权限介绍
文件权限对象定义:
owner:属主,u
group:属组,g
other:其他,o
文件针对访问者的权限
r:Readable 可读
w:Writeable 可写
x:Excutable 可执行
对文件的权限:
r 可使用文件查看工具,如,cat,获取内容
w 可修改其内容
x 可以把此文件提请内核启动为一个进程,即可以执行此文件
对目录的权限:
r 可以使用ls查看此目录中文件列表
w 可在此目录中创建文件,也可以删除此目录中的文件,而和此被删除的文件的权限无关
x 可以cd进入目录,可以使用ls -l看文件元数据,属于目录可访问的最小权限
X 只给目录x权限,不给无执行权限的文件x权限
数学法权限:
r 对应数字4
w 对应数字2
x 对应数字1
2.1.2文件授权
授权方式:
mode:who opt permission who:u,g,o,a opt:+,-,= permission:r,w,x
实例:文件授权
#给文件授予用户写执行,组写执行,其他读执行 [root@local ~]# chmod u+wx,g-r,o=rx file.txt #给目录递归授权,文件属组为读写执行权限 [root@local ~]# chmod -R g+rwx /testdir #数字授权法:给文件授权用户读写,组读,其他用户读权限 [root@local ~]# chmod 644 file.txt
2.2 默认权限
umask - 可以用来保留在创建文件权限
实现方式:
新建文件:默认权限 666-umask,如果所得结果某位存在执行权限(奇数),则将其权限+1,偶数不变
新建目录:默认权限 777-umask
非特权用户umask默认是002
root的umask默认是022
umask用法:
[root@local ~]# umask #模式方式显示 [root@local ~]# umask -S #输出可被调用 [root@local ~]# umask -p #修改umask值 [root@local ~]# umask num
持久保存umask
全局设置: /etc/bashrc
用户设置:~/.bashrc
2.3 特殊权限
r,w,x三种特殊权限:
SUID
SGID
Sticky
二进制的可执行文件上SUID特殊权限功能:
1. 任何一个可执行程序文件能不能启动为进程,取决于发起者对程序文件是否拥有执行权限 2. 启动为进程后,其进程的属主为原程序文件的属主 3. SUID只对二进制可执行程序有效 4. SUID设置在目录上无意义
二进制的可执行文件上的SGID权限功能:
1. 任何一个可执行程序文件能不能启动为进程,取决于发起者对程序文件是否拥有执行权限 2. 启动为进程后,其进程的属组为原程序文件属组
Sticky权限功能:
1. 具有写权限的目录通常用户可以删除目录中的任何文件,无论该文件的权限或拥有权在目录设置Sticky位,只有文件的所有者或root可以删除该文件。 2. sticky设置在文件上无意义
特殊权限用法:
#给文件属主添加SUID权限 [root@local ~]# chmod u+s file.txt #数字授权方式:给文件属主添加SUID权限 [root@local ~]# chmod 6xxx file.txt #取消文件属主SUID权限 [root@local ~]# chmod u-s file.txt #给文件属组添加SGID权限 [root@local ~]# chmod g+s file.txt #数字授权方式:给文件属组添加SGID权限 [root@local ~]# chmod 2xxx file.txt #取消文件属组SGID权限 [root@local ~]# chmod g-s file.txt #给文件其他用户添加Sticky权限 [root@local ~]# chmod o+t dir #数字授权方式:给文件其他用户添加Ssticky权限 [root@local ~]# chmod 1xxx dir #取消文件其他用户Sticky权限 [root@local ~]# chomd o-t dir
设定文件特殊属性:
[root@local ~]# chattr +i file.txt #不能删除,改名,更改 [root@local ~]# chattr +a file.txt #只能追加内容,不能删除,改名 [root@local ~]# lsattr #显示特定属性
2.4 文件访问控制列表ACL
ACL - Access Control List,实现灵活的权限管理
除了文件的所有者,所属组和其他人,可以对更多的用户设置权限
ACL命令用法:
[root@local ~]# setfacl -m u:hong:- file.txt [root@local ~]# getfacl file.txt
ACL备份和还原
主要的文件操作命令,如cp,mv都支持ACL,只是cp命令需要加上-p参数。
但tar等常见的备份工具是不会保留目录和文件的ACL信息
3.相关概念及操作
资源分派
Authentication:认证,验证用户身份
Authorization:授权,不同的用户设置不同权限
Accouting | Audition:审计
转自:https://www.cnblogs.com/hony625/p/15042496.html
|
---|