您的位置:首页 > 运维架构 > Linux

详解Linux用户及权限管理

rengzhixin 2019-06-18 22:17 645 查看

用户标识(userID):范围是0~65535

管理员:0
普通用户:1~65535
系统用户:1~499(CentOS 6)、1~999(CentOS 7)
登录用户:500~60000(CentOS 6)、1000~60000(CentOS 7)

人能够快速识别字符,而电脑能够快速识别数字(用户标识),然而系统存在一个名称解析库/etc/passwd。能快速从username转换成userID

登录系统时,需要输入账号和密码。与事先存储的信息做比较。需要在/etc/passwd查找到userID,再去/etc/shadow比对密码。

密码的使用策略:
使用随机密码
最短长度不要低于8位
应该使用大写字母、小写字母、数字和标点符号四类字符中至少三类
定期更换

详解/etc/passwd每个冒号之间的含义

name:passwork:UID:GID:GECOS:directory:shell
name:用户名
password:可以是加密密码,也可是占位符(x)
UID:用户ID
GID:组ID
GECOS:注释信息
directory:家目录
shell:用户的默认shell,登录时默认shell程序

详解/etc/shadow每个冒号之间的含义

sp_namp:sp_pwdp:sp_lstchg:sp_min:sp_max:sp_warn:sp_inact:sp_expire:sp_flag
sp_namp:用户名
sp_pwdp:加密的密码
sp_lstchg最后一次修改密码的时间(从1970-1-1开始到此时此刻的时间)
sp_min:最短使用期限
sp_max:最长使用期限
sp_warn:警告期限
sp_inact:过期期限
sp_expire:禁用期限
sp_flat:保留字段

讲解useradd命令选项
useradd - create a new user or update default new user information

命令使用格式:useradd [options] LOGIN
-u, --uid UID:指定UID
-g, --gid GROUP:指定基本组ID,此组得事先存在
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:指明用户所属的附加组,多个之间用逗号分隔
-c, --comment COMMENT:指明注释选项
-d, --home-dir HOME_DIR:以指定的路径为用户的家目录,通过复制/etc/skel此目录并重命名实现
-s, --shell SHELL:指定用户的默认shell,可用的所有shell列表存储在/etc/shalls文件中
-r, --system:创建系统用户

为什么默认创建一个用户都会有一个家目录,shell用的是/bin/bash等?又有何修改默认选项呢?

是创建用户默认配置,useradd –D显示创建用户的默认配置。想修改默认配置的话,可以useradd –D 选项=___  即可。修改的结果保存于/etc/default/useradd文件中。
**注意:shell修改是必须要在/etc/shells文件中出现的shell才可以正常运行**

**注:想看更多用户配置的话,查看/etc/login.defs**

讲解usermod命令常用选项
usermod - modify a user account

命令使用格式:userdel [options] LOGIN
-u, --uid UID:修改用户的ID为此处指定的新UID
-g, --gid GROUP:修改用户所属的基本组
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:修改用户所属的附加组,原来附加则被覆盖
-a, --append:与-G一同使用,用于为用户追加新的附加组
-c, --comment COMMENT:指明注释选项
-d, --home-dir HOME_DIR:修改用户的家目录,用户原有的文件不会被转移
-m, --move-home:只能与-d选项一同使用,用于将原来的家目录移动为新目录
-l, --login NEW_LOGIN:修改用户名
-s, --shell SHELL:修改用户的默认shell
-L, --lock:锁定用户密码,即在用户原来的密码字符串之前添加一个“!”
-U, --unlock:解锁用户的密码

讲解userdel命令常用选项
userdel - delete a user account and related files

命令使用格式:userdel [options] LOGIN
-r:删除用户时,一并删除家目录

讲解passwd命令常用选项
passwd - update user's authentication tokens

命令使用格式:
passwd [options] [username]
(1)passwd:修改用户自己的密码
(2)passwd username:修改指定用户密码
-l,-u:锁定和解锁用户
-d:清除用户密码串
-e DAYS:过期期限
-i DAYS:非活动期限
-n DAYS:密码的最短使用期限
-x DAYS:密码的最长使用期限
-w DAYS:警告期限

权限管理:
ls –l左边能看见这样的一串rwxrwxrwx:

r:read,读
w:write,写
x:excute,执行
左三位:定义user的权限
中三位:定义group的权限
右三位:定义other的权限

讲解chmod命令常用选项
chmod - change file mode bits

命令使用格式:
chmod [OPTION]... MODE[,MODE]... FILE...
chmod [OPTION]... OCTAL-MODE FILE...
chmod [OPTION]... --reference=RFILE FILE..

(1)chmod [OPTION]... MODE[,MODE]... FILE..
mode表示法:
赋权表示法:直接操作一类用户u=,g=,o=,a=
授权表示法:直接操作一类用户的一个权限位u,g,o,a

(2)chmod [OPTION]... OCTAL-MODE FILE…
chmod [num,num,num] file

(3)chmod [OPTION]... --reference=RFILE FILE..(参考rfile文件)
chmod –reference=/PATH/TO/FILE  filename

-R, --recursive:递归修改
**注意:用户仅能修改属主为自己的那些文件的权限**

讲解chown命令选项
chown - change file owner and group

命令使用格式
chown [OPTION]... [OWNER][:[GROUP]] FILE...
chown [OPTION]... --reference=RFILE FILE...
-R, --recursive:递归修改

讲解chgrp命令常用选项
chgrp - change group ownership

命令使用格式
chgrp [OPTION]... GROUP FILE...
chgrp [OPTION]... --reference=RFILE FILE...
-R, --recursive:递归修改
**注意:仅管理员可修改文件的属主和属组**
标签: