Linux管理权限与账号权限
前言
一个多用户、多服务的服务器操作系统,Linux提供了严格的权限管理机制,主要从用户身份、文件权限两方面对资源的访问进行限制。本文将分别介绍Linux系统中用户和组账号的管理、文件权限和归属的管理、文件和目录的权限管理、文件和目录的归属管理。
一、用户账户和组账号
(1)用户账号
超级用户、普通用户、程序用户。
(2)组账号
基本组<私有组>、附加组<公共组>
UID和GID
- UID,用户标识号 UID范围是:系统用户 1-999, 普通用户 1000-60000。
- GID,组标识号
注:centos6和centos7 的uid范围是不同的,root不一定是管理员,uid=0的才是超级管理员。
1、用户账号文件/etc/passwd
(1)文件位置 /etc/passwd
(2)一行对应一个账户
2、用户账户文件/etc/shadow
(1)存放用户信息密码
(2)一行对应一个密码
3、useradd——创建用户账户
- 基本格式
useradd [选项] 用户名
添加用户:查看是否在 passwd和shadow文件中生成信息
选项 | 说明 |
---|---|
-u | 指定用户的 UID 号,要求该 UID 号码未被其他用户使用。 |
-d | 指定用户的宿主目录位置(当与-M 一起使用时,不生效)。 |
-e | 指定用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。 |
-g | 指定用户的基本组名(或使用 GID 号)。 |
-G | 指定用户的附加组名(或使用 GID 号)。 |
-M | 不建立宿主目录,即使/etc/login.defs 系统配置中已设定要建立宿主目录。 |
-s | 指定用户的登录 Shell /sbin/nologin。 |
例
(1)创建用户、设置密码
(2)给李武指定过期时间
(3)给用户指定uid
4、设置用户更改、锁定密码
- -d:清空指定用户的密码,仅使用用户名即可登录系统。
- -l:锁定用户账户。
- -S:查看用户账户的状态(是否被锁定)。
- -u:解锁用户账户。
例
(1)设置密码 echo “123456” | passwd --stdin zhangsan
(2)锁定用户 passwd -l zhangsan
(3)解锁用户 passwd -u zhangsan
(4)查看用户状态 passwd -S zhangsan
(5)清楚密码 passwd -d zhangsan
5、userdel——删除用户账号
userdel [-r] 用户名
- 添加-r选项时,表示用户的宿主目录一并删除
- 如果不加-r,删除之后在创建用户时会报错
userdel 直接删除用户不加参数,然后再重新创建出相同的用户
6、usermod——对已存在的用户进行修改
基本格式
- usermod [选项] 用户名
选项 | 说明 |
---|---|
-l | 更改用户账号的登录名称(Login Name) |
-L | 锁定用户账户 |
-u | 修改用户的 UID 号 |
-U | 解锁锁用户账户 |
-d | 修改用户的宿主目录位置 |
-e | 修改用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。 |
-g | 修改用户的基本组名(或使用 GID 号) |
-G | 修改用户的附加组名(或使用 GID 号) |
-s | 指定用户的登录 Shell |
注:加粗都是常用选项
二、建立用户组
1、groupadd——命令
格式:groupadd [-g GID] 组账号名
2、gpasswd——添加组成员
格式:gpasswd [选项] 组账号名
选项 | 说明 |
---|---|
-a | 添加用户到组 |
-d | 从组删除用户 |
-M | 批量加,指定组成员 |
3、groupdel——删除组账号
格式: groupdel 组账号名
4、查看账户信息
(1)groups——命令
-
groups 用户名
-
查看用户所属的组
(2)id——命令 -
id 用户名
-
查询身份标识
(3)finger——命令 -
finger 用户名
-
查询账户的详细信息
(4)w、who、users——命令 -
查询已登录到主机的用户信息
三、目录、文件的权限和归属
1、访问权限
- 读r:允许查看文件内容、显示目录列表
- 写入w:可以修改文件内容、可以在目录中新建、移动、删除文件或子目录
- 可执行x:可以运行程序、切换目录
2、归属所有权限
- 属主:有该文件或目录的用户账户,就是这个文件的拥有者
- 属组:有该文件或目录的组账号,就是这个文件拥有者所在的组
3、chmod——命令,设置文件的目录权限
选项 -R : 递归
chmod [ugoa] [+ - =] [rwx] 文件或目录
u:所有者(属主) g:所有组(属组) o:其他人 a:所有、其他
+:增加 -:去除 =:设置权限
r:读 w:写 x:运行权限
1. u=rwx,g=rx,o=x
2. o+w 其它用户增加w权限
3. a-x 所有人减去执行权限
4、chown——命令设置文件和目录的归属
选项 -R: 递归
修改属主 属组
chown 属主:属组 文件
chown 属主 文件
chown :属组 文件
5、umask——权限掩码
umask设置:umask 022
umask作用: (1)控制新建的文件或目录的权限
(2)默认权限去除umask’的权限为新建文件或者目录的权限
总结
用户账号管理(useradd、passwd、usermod、userdel)
组账号管理(groupadd、gpasswd、groupdel)
用户账号文件与组账号文件
查询账号相关信息的命令(groups、id、finger)
设置目录与文件权限(chmod)
设置目录与文件归属(chown)
权限掩码(umask)