您的位置:首页 > 其它

用户和权限管理

2016-03-12 19:26 218 查看
用户和权限管理
用户、组是计算机实现资源分配和安全的一种机制。

组管理:
添加组:groupadd [选项] group
-g GID:指明GID;
-r, --system:系统组;

修改组信息:groupmod [选项] GROUP
-g GID
-n NEW_NAME:修改组名;

组删除:groupdel [选项] GROUP
组解析库文件:/etc/group
GRPNAME:x:GID:user1, user2, ...
组名:密码点位符:GID:以此组为附加组的用户列表,以逗号分隔
gpasswd命令:为组添加密码 组密码文件:/etc/gshadow

组中用户管理:gpasswd [选项] group
-a USERNAME:把用户添加至组中;
-d USERNAME:从此组中移除此用户;
newgrp命令:登录到一个新组

用户管理
添加用户:useradd [选项] 登录名
-c, --comment COMMENT:注释信息,一般为Full Name;
-d, --home /PATH/TO/HOME_DIR:家目录路径;目标路径不能事先存在,否则会有警告,不会得利skel相关的文件给用户;
-g, --gid GROUP:用户的基本组组名或GID;
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:用户所属的附加组列表,彼此间用逗号隔开,中间没有空格;
-m, --create-home:强制创建家目录;
-M:不创建用户主目录,即使系统在 /etc/login.defs 中的设置 (CREATE_HOME) 为 yes; -r, --system:创建一个系统账户
-s, --shell SHELL:用户的登录 shell 名,默认为留空,让系统根据 /etc/default/useradd 中的 SHELL 变量选择默认的登录shell;
-u, --uid UID:用户 ID 的数字值。此值必须为唯一的,除非使用了 -o 选项。此值必须非负,默认使用大于等于UID_MIN,且大于任何其他用户 ID 最小值。
注意:创建登录用户时,为其自定义的shell程序必须为可登录shell,且要位于/etc/shells文件中;

useradd -D:显示创建用户时的默认设定
-e, --expiredate EXPIRE_DATE:用户账号的过期期限;过期后会被锁定;日期以 YYYY-MM-DD 格式指定
-f, --inactive INACTIVE:密码过期后,账户被彻底禁用之前的天数。0 表示立即禁用,-1 表示禁用这个功能。
为用户提供默认配置的配置文件:/etc/login.defs, /etc/default/useradd

修改用户信息:usermod 选项 用户名
-c, --comment COMMENT
-d, --home HOME_DIR:修改家目录为新的位置,但一般应该同时使用-m选项以保证原家目录中的文件会移动到新目录中;
-g, --gid GROUP
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:修改时会覆盖原有的附加组;一同使用-a选项,表示为用户添加新的附加组;
-l, --login NEW_LOGIN:修改当前用户的用户名;
-s, --shell SHELL
-u, --uid UID
-L, --lock:锁定用户的密码。这会在用户加密的密码之前放置一个“!”
-U, --unlock:解锁用户的密码。这将移除加密的密码之前的“!”

删除用户账号:userdel [选项] 登录名
-r, --remove:用户主目录中的文件将随用户主目录和用户邮箱一起删除

passwd命令:密码管理命令
passwd [-l] [-u [-f]] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [--stdin] [username]

选项:
-l:锁定密码 -e DATE:过期期限 -x DATE:密码的最长使用期限
-u:解锁解密 -i DATE:非活动期限 -w DATE:警告期限
-d:清除密码 -n DATE:密码的最短使用期限 --stdin:标准输入
(1) passwd:修改自己的密码;(2) passwd username:修改其它用户的密码,仅root有此权限;
密码存放位置:/etc/shadow
登录名:密码:最近一次的修改时间:密码的最短使用期限:密码最长使用期限:提前警告的天数:非活动期限:账号的禁用日期:保留字段

权限管理

进程安全上下文:
进程:运行一个程序文件而产生,通常由一个用户发起;进程则以发起者的身份运行;
判断进程的发起者是否与文件属主相同,如果是,则以属主的身份来访问,从而应用属主权限;否则
判断进程的发起者是否属于文件的属组,如果是,则应用属组权限;否则应用“其它”权限。

文件系统文件权限有三类用户owner、group、other,他们分别有r(读)、w(写)、x(执行)可以指派
权限表示: 8进制
owner: rwx 4(r) 2(w) 1(x) 例如:rwxr-xr-x:755
group: rwx
other: rwx

chmod命令:作用:change file mode bits
chmod [OPTION]... MODE[,MODE]... FILE...
chmod [OPTION]... --reference=RFILE FILE...
MODE:赋权表示法:直接操作一类用户的所有权限位rwx;

1、u= g= o= a=

2、两类用户权限相同:ug=, go=
不同类的用户权限不同:u=,g=,o=
授权表示法:操作一类用户一位或多位权限;

3、u+, u- g+, g- o+, o- a+, a-
两类用户权限收授机制相同:ug+, ug-, ...

4、不同类的用户权限不同:u+,g+,o+
--reference=RFILE:RFILE表示参考其权限模型;
常用选项:-R, --recursive:递归修改;

文件属主修改chown命令:
chown [OPTION]... [OWNER][:[GROUP]] FILE...
chown [OPTION]... --reference=RFILE FILE...
常用选项:-R, --recursive:递归修改;

文件属组修改:chgrp命令:
chgrp [OPTION]... GROUP FILE...
chgrp [OPTION]... --reference=RFILE FILE...

umask:显示或设定文件模式掩码 永久生效在/etc/bashrc 中修改
文件:666-umask
目录:777-umask
注意:之所以文件用666去减,表示文件默认不能有执行权限;如果减得的结果中,u,g或o有执行权限时,则需要加1;
显示:umask 设定:umask MASK 注意:此设定仅对当前shell进程有效;

本文出自 “学而思” 博客,转载请与作者联系!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: