用户组和权限管理
来源:互联网 发布:哪个软件小额贷款快 编辑:程序博客网 时间:2024/05/22 02:13
用户user
Linux用户:Username/UID
管理员:root, 0
普通用户:1-65535
系统用户:1-499, 1-999(CentOS7)
对守护进程获取资源进行权限分配
登录用户:500+, 1000+(CentOS7)
交互式登录
组group
Linux组:Groupname/GID
管理员组:root,0
普通组:
系统组:1-499, 1-999(CENTOS7)
普通组:500+, 1000+(CENTOS7)
Linux组的类别
用户的主要组(primary group)
用户必须属于一个且只有一个主组
组名同用户名,且仅包含一个用户,私有组
用户的附加组(supplementary group)
一个用户可以属于零个或多个辅助组
Linux用户和组的主要配置文件:
/etc/passwd:用户及其属性信息(名称、UID、主组ID等)
/etc/group:组及其属性信息
/etc/shadow:用户密码及其相关属性
/etc/gshadow:组密码及其相关属性
Passwd内容字段
daoke:x:500:500:daoke:/home/daoke:/bin/bash
用户:密码:uid:gid:描述:家目录:shell类型
login name:登录用名(wang)
passwd:密码(x)
UID:用户身份编号(1000)
GID:登录默认所在组编号(1000)
GECOS:用户全名或注释
home directory:用户主目录(/home/wang)
shell:用户默认使用shell (/bin/bash)
Shadow 内容字段
abcabc:xxx:17486:0:99999:7:::
ddkkddkk:!!:17485:10:20:7:5:17486:
用户名:密码:创建时的时间:最短有效时间:最大有效时间:提前几天提醒:宽限期:锁定时间
登录用名
用户密码:一般用sha512加密
从1970年1月1日起到密码最近一次被更改的时间
密码再过几天可以被变更(0表示随时可被变更)
密码再过几天必须被变更(99999表示永不过期)
密码过期前几天系统提醒用户(默认为一周)
密码过期几天后帐号会被锁定
从1970年1月1日算起,多少天后帐号失效
vipw 和 vigr 直接编辑passwd和shadow文件
pwck和grpck 检查passwd和shadow格式是否正确
用户与组常用创建和删除命令
useradd usermod userdel 用户创建、用户权限、用户删除
groupadd groupmod groupdel 组创建、组权限、组删除
/etc/default/useradd 创建帐号模板规则
# useradd defaults file
GROUP=100 默认users组
HOME=/home 默认用户的创建的家目录在哪
INACTIVE=-1 帐号创建后是否有宽限期修改密码
EXPIRE= 帐号的有效期
SHELL=/bin/bash 默认shell类型
SKEL=/etc/skel 默认的家目录配置文件
CREATE_MAIL_SPOOL=yes 是否创建邮箱
/etc/skel/* 家目录产生的配置文件内容
/etc/login.defs 可修改的用户ID产生范围,家目录是否生成,创建文件默认权限,密钥加密类型
newusers passwd格式文件批量创建用户
chpasswd 批量修改用户口令
批量创建用户
首先要把需要建立的用户复制出来保存为userlist.lst格式必须保持一致如:
natasha:x:501:502::/home/natasha:/bin/bash
harry:x:502:503::/home/harry:/bin/bash
sarah:x:503:504::/home/sarah:/bin/nologin
在需要创建的服务器上 敲 newusers userlist.lst 就可导入到系统
批量创建口令密码
把用户和密码格式保存为文件pass.lst
natasha:centos
harry:centos
sarah:centos
在需要创建的服务器上 敲 cat pass.lst | chpasswd 就可导入到系统
如何修改uaeradd创建用户时的默认规则
默认值设定:/etc/default/useradd文件中
显示或更改默认设置
useradd-D 显示当前模板
useradd–D -s SHELL 修改创建用户时的shell类型
useradd–D –b BASE_DIR 修改创建用户时所产生的家目录
useradd–D –g GROUP 修改创建用户时加入到的组
pwunconv 将密码信息转移到passwd
pwconv 取消密码信息恢复到shadow
建立用户
useradd[options] LOGIN
-u UID
-o 配合-u 选项,不检查UID的唯一性
-g GID:指明用户所属基本组,可为组名,也可以GID
-c "COMMENT":用户的注释信息
-d HOME_DIR:以指定的路径(不存在)为家目录
-s SHELL: 指明用户的默认shell程序
可用列表在/etc/shells文件中
-G GROUP1[,GROUP2,...]:为用户指明附加组,组须事先存在
-N 不创建私用组做主组,使用users组做主组
-r: 创建系统用户CentOS 6: ID<500,CentOS 7: ID<1000
-m 创建家目录,用于系统用户
-M 不创建家目录,用于非系统用户
一般创建模式 useradd -r -m -d /home/daoke -s /bin/nologin daoke
id daoke 查看用户信息
uid=500(daoke) gid=500(daoke)groups=500(daoke)
getent passwd daoke 查看用户详细信息
daoke:x:500:500:daoke:/home/daoke:/bin/bash
建立组
usermod[OPTION] login
-u UID: 新UID
-g GID: 新主组
-G GROUP1[,GROUP2,...[,GROUPN]]]:新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使用-a选项
-s SHELL:新的默认SHELL
-c 'COMMENT':新的注释信息
-d HOME: 新家目录不会自动创建;若要创建新家目录并移动原家数据,同时使用-m选项
-l login_name: 新的名字;
-L: lock指定用户,在/etc/shadow 密码栏的增加!
-U: unlock指定用户,将/etc/shadow 密码栏的! 拿掉
-e YYYY-MM-DD: 指明用户账号过期日期
-f INACTIVE: 设定非活动期限
usermod -g admins daoke 将daoke的主组改为admins
usermod -G xiaoming daoke 将xiaoming成为daoke的附加组
特别注意如果添加多个附加组 一定要用 usermod -aG aaa,bbb,ccc daoke
选项添加
如需要删除附加组 使用 usermod -G " " daoke 或者
usermod -G admins daoke 或者
gpasswd -d daoke admins
如需迁移家目录到/app/sdaoke usermod -d /app/sdaoke-m daoke 迁移家目录时一定要加-m选项连同数据一块迁移
删除用户及家目录 userdel -r daoke 连同mail下的目录 一同删除
su 切换账户
su daoke 切换的时候是在root的家目录除非用 su - daoke 才会进到daoke的家目录
su[options...] [-] [user [args...]]
切换用户的方式:
suUserName:非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录
su-UserName:登录式切换,会读取目标用户的配置文件,切换至家目录,完全切换
root su至其他用户无须密码;非root用户切换时需要密码
换个身份执行命令:
su[-] UserName-c 'COMMAND'
选项:-l --login
su-l UserName相当于su-UserName
查看用户相关ID信息
id [OPTION]... [USER]
-u: 显示UID
-g: 显示GID
-G: 显示用户所属的组的ID
-n: 显示名称,需配合ugG使用
passwd[OPTIONS] UserName: 修改指定用户的密码,仅root用户权限
passwd: 修改自己的密码
常用选项:
-l:锁定指定用户
-u:解锁指定用户
-e:强制用户下次登录修改密码 ***************
-n mindays: 指定最短使用期限
-x maxdays:最大使用期限
-w warndays:提前多少天开始警告
-iinactivedays:非活动期限
--stdin:从标准输入接收用户密码 ***************
echo "PASSWORD" | passwd--stdinUSERNAME
修改用户密码策略
chage[OPTION]... LOGIN
-d LAST_DAY 上一次修改时间
-E --expiredateEXPIRE_DATE 修改账户那天失效
-I --inactive INACTIVE 宽限期
-m --mindaysMIN_DAYS 最小有效时间
-M --maxdaysMAX_DAYS 最大有效时间
-W --warndaysWARN_DAYS 提前多少天警告
–l 显示密码策略
示例:
chage-d 0 tom 下一次登录强制重设密码
chage-m 0 –M 42 –W 14 –I 7 tom
chage-E 2016-09-10 tom
chfn指定个人信息
-f<真实姓名>或--full-name<真实姓名>:设置真实姓名;
-h<家中电话>或--home-phone<家中电话>:设置家中的电话号码;
-o<办公地址>或--office<办公地址>:设置办公室的地址;
-p<办公电话>或--office-phone<办公电话>:设置办公室的电话号码;
-u或--help:在线帮助;
-v或-version:显示版本信息。
chsh指定shell
-s或--shell:更改系统预设的shell环境。;
-l或--list-shells:列出目前系统可用的shell清单;
-u或--help:在线帮助;
-v或-version:显示版本信息。
finger
查看用户的描述信息等
创建组
groupadd[OPTION]... group_name
-g GID: 指明GID号;[GID_MIN, GID_MAX]
-r: 创建系统组
CentOS 6: ID<500
CentOS 7: ID<1000
groupadd daoke
groupadd -r -g 300 daoke
修改和删除组
组属性修改:groupmod
groupmod[OPTION]... group
-n group_name: 新名字
-g GID: 新的GID
groupmod -n daoke daoke111
groupmod -n daoke -g 400
组删除:groupdel
groupdelGROUP
groupdel daoke
更改组密码
组密码:gpasswd
gpasswd[OPTION] GROUP
-a user 将user添加至指定组中
-d user 从指定组中移除用户user
-A user1,user2,... 设置有管理权限的用户列表
gpasswd -a daoke admins 将daoke添加到admins组
gpasswd -d daoke admins 将daoke从admins组里删除
newgrp命令:临时切换主组
如果用户本不属于此组,则需要组密码
更改和查看组成员
groupmems[options] [action]
options:
-g, --group groupname更改为指定组(只有root)
Actions:
-a, --add username 指定用户加入组
-d, --delete username 从组中删除用户
-p, --purge 从组中清除所有成员
-l, --list 显示组成员列表
groups [OPTION].[USERNAME]... 查看用户所属组列表
groupmems -l -g admins 列出当前admins组的所有成员有哪些
groupmems -p -g admins 清空当前admins组里的所有成员,清的是辅助组成员
groups daoke 查看用户是属于什么组
groupmems -l -g admins 查看admins组里都有谁
- 用户组和权限管理
- Linux-用户组和权限管理
- 用户组与权限管理
- 用户组与权限管理
- linux修改文件权限和用户组管理小结
- 【TFS权限管理】TFS用户组说明和用户权限配置过程
- linux用户组和权限
- 用户,用户组和权限
- seaskyer剖析:用户组权限管理
- linux用户组与权限管理
- Linux 用户 用户组权限管理
- 用户和用户组管理
- 用户和用户组管理
- 用户和用户组管理
- Linux的用户组和权限管理之特殊权限及ACL的使用
- 1文件权限和用户组
- 用户,用户组,角色和权限
- linux用户组和权限分配
- Windbg查看调用堆栈(k*)
- vnc 出现问题Authentication Failure
- Java异常体系unchecked异常check异常
- Android UI性能优化案例
- node.js基础API(一):Path
- 用户组和权限管理
- PHP正则表达式(2)
- 02.输出提示信息,读取信息并发送
- mybits拦截器实现分页
- Matlab绘图高级部分
- color admin_color admin bootstrap 4_color admin 文档-本人非常喜欢的 angular ui
- aodv.cc
- 分布式爬虫搜索
- 天海投资股东名单发生变化 或因看好公司转型