专栏首页Ryan MiaoLinux用户和组管理,添加修改用户,添加修改组,加入组,移除组

Linux用户和组管理,添加修改用户,添加修改组,加入组,移除组

1.安全介绍3A

Authentication: 认证,用户名和对应口令

Authorization: 授权,不同用户权限不同

Accouting/Audition: 审计

2. 所属者和所属组

user: 用户

用户标识: UserID, UID(16bits二进制,0-65535)

管理员: root, UID=0

普通用户: 1-65535(又分系统用户和登陆用户两种)

系统用户: 1-499(centos6), 1-999(centos7)由系统保留,作为管理账号,对守护进程获取资源进行权限分配;

登陆用户:500-60000(centos6), 1000-60000(centos7)

名称转换: username<>UID,通过/etc/passwd

group: 组

组标识: groupid, gid

管理员组: root, UID=0

用户主要组(主组)

  • 用户必须属于一个且只有一个主组(基本组);
  • 基本组名同用户名,且仅包含一个用户,也叫私有组(即,新建的用户,也会新建要给组,但组里只有用户自己)

用户的附加组: secondary group

基本组以外的组属于用户的附加族。

注意:

  • 一个用户只有一个主组,但可以属于0或者多个附加组。
  • 一般第一个为用户的主组,后面是附加组。
  • 系统识别用户不是看用户名,而是id编号。

配置文件

1. 主要配置文件

/etc/passwd: 用户及其属性信息(名称,UID,主组ID)

/etc/shadow: 用户密码及相关属性。

/etc/group: 组及其属性信息。

/etc/gshadow: 组密码及相关属性。

2. /etc/passwd

格式:

name:password:UID:GID:GECOS:directory:shell

/etc/passwd 由“:”分割成7段,每个字段含义如下:

①login name

登录用户名(wang)

②passwd

密码,口令(x) 现在放在 /etc/shadow 如果要想回到之前的状态用(命令 pwunconv)但是这样的话/etc/shadow文件就没有了,恢复使用(命令 pwconv)

③UID

用户身份编号 管理员:0,系统默认为root,但是可以修改。普通用户:500+;1000+

④GID

组标识号登录默认所在组编号(1000)

⑤GECOS

用户全名或注释;

用命令chfn 可以修改注释信息;

用命令 finger 可以更加详细的查看修改和用户信息;

⑥home directory:

用户主目录(/home/wang)

root 的家目录是/root ,普通用户的家目录则为/home/username,用户家目录可以自己定义。

⑦shell

用户默认使用shell (/bin/bash)

用 chsh命令 可以直接修改用户的shell

示例

[root@localhost home]# getent passwd ryan
ryan:x:500:500:centos6:/home/ryan:/bin/bash
[root@localhost home]# 
[root@localhost home]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync

3. /etc/shadow

/etc/shadow和/etc/passwd类似,由":"分割成9段,只有管理员可以查看。

1.登陆用户名;2.用户密码,一般sha512加密; 3.从1970.1.1起,密码最近一次被更改的时间; 4.密码再过多少天就可以被更改,默认0,即不受限制; 5.密码多少天后过期,默认99999表示永远不用; 6.密码过期前几天提醒用户,默认一周; 7.密码过期几天后被锁定; 8.生命周期,从1970.1.1之后,多少天后账号失效; 9.没有意义,保留。

示例

[root@localhost home]# getent shadow ryan
ryan:$1$w7vV7KvG$kaxEMBMaLna7Iaf59NCQl1:17670:0:99999:7:::
[root@localhost home]# 
[root@localhost home]# cat /etc/shadow
root:$1$w7vV7KvG$kaxEMBMaLna7Iaf59NCQl1:17670:0:99999:7:::
bin:*:15980:0:99999:7:::
daemon:*:15980:0:99999:7:::
adm:*:15980:0:99999:7:::
lp:*:15980:0:99999:7:::
sync:*:15980:0:99999:7:::

4. /etc/group组

1.组群名称; 2.组群密码,通常不设定,密码记录在/etc/gshadow; 3. GID. 组id; 4. 以当前组为附加组的用户列表。

示例

[root@localhost home]# getent group ryan
ryan:x:500:
[root@localhost home]# cat /etc/group
root:x:0:
bin:x:1:bin,daemon
daemon:x:2:bin,daemon
sys:x:3:bin,adm
adm:x:4:adm,daemon
tty:x:5:
disk:x:6:
lp:x:7:daemon

5. /etc/gshadow

1.群组名称; 2.群组密码,一般不设置,如果设置了,普通用户知道口令后可以直接加进来,不设置反而安全; 3. 组管理员列表; 4.以当前组为附加组的用户列表;

示例

[root@localhost home]# cat /etc/gshadow
root:::
bin:::bin,daemon
daemon:::bin,daemon
sys:::bin,adm
adm:::adm,daemon
tty:::
disk:::
lp:::daemon
mem:::
kmem:::
wheel:::
mail:::mail,postfix

添加用户和删除用户user

创建用户

useradd username

-g groupname: 指定用户的基本组(事先存在), 没指定则使用与用户名相同的组名; -G group1,group2: 指定用户所属的附加组,要事先存在; -c "comment": 注释信息; -d HOME_DIR: 家目录; -s SHELL: 指定用户默认的shell,可用的所有shell列表在/etc/shells中;

useradd -D显示默认配置。

创建/修改密码

passwd username

修改自己密码passwd

usermod, userdel用户属性修改和删除用户

修改

usermod username

-u UID: 修改用户id为新的; -g GID: 修改用户基本组为新的; -G group1, group2: 修改用户附加组,原来的被覆盖;

删除

userdel username

-r: 删除用户时,一起删除家目录

添加组和删除组group

创建组

groupadd groupname

修改组

groupmod -n new_name: 修改组名

删除组

groupdel groupname

更改查看组成员

groupmems -g groupname [action]

-a,--add username: 指定用户加入组; -d,--delete username: 从组中删除用户; -p,--purge :从组中清除所有成员; -l,--list: 显示组成员列表;

groups查看当前用户所在全部组。

参考

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Linux 学习笔记

    Linux学习笔记 请切换web视图查看,表格比较大,方法:视图》》web板式视图 博客园不能粘贴图片吗  http://wenku.baidu.com/vie...

    Ryan-Miao
  • linux centos中添加删除修改环境变量,设置java环境变量

    前言 安装完软件必要添加环境变量。指令很少,然而长时间不写就会不自信:我写的对吗?于是百度开始,于是发现又是各有千秋。好吧,好记星不如烂笔头。当然,最重要的是,...

    Ryan-Miao
  • 在centos7中添加一个新用户,并授权

    前言 笔记本装了一个centos,想要让别人也可以登录访问,用自己的账号确实不太好,于是准备新建一个用户给他。 创建新用户 创建一个用户名为:zhangbiao...

    Ryan-Miao
  • ​OpenAI开源机器人模拟Python库——高效处理并行模拟,GPU 加速自动 3D 渲染

    作者 | Open AI 编译 | AI100(rgznai100) 今早,Open AI开源了一个高性能的 Python 库mujoco-py,主要用于使用M...

    AI科技大本营
  • python之python-docx编辑和读取word文档

    如果是想读取其中的图片或是更复杂地编辑,首先我们需要先来认识下docx文档的格式组成:

    菲宇
  • c语言基础学习08_关于内存管理的复习

    ============================================================================= 对于...

    黑泽君
  • DMU在windows下安装测试—外篇1

    64为电脑安装DMUv6-R5-2-EM64T.msi, 32为电脑安装DMUv6-R5-2.msi

    邓飞
  • 使用Rasterio读取栅格数据

    有没有觉得用GDAL的Python绑定书写的代码很不Pythonic,强迫症的你可能有些忍受不了。不过,没关系,MapBox旗下的开源库Rasterio帮我们解...

    卡尔曼和玻尔兹曼谁曼
  • Linux学习_005_Linux下使用命令安装gcc、g++、gdb

    注意:本博文在CentOS7.5版本上进行了测试,不同的版本可能会出现差异。 以下均为root用户下的操作,安装时请确保你的Linux可以上网。

    黑泽君
  • 西瓜书-绪论

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    week

扫码关注云+社区

领取腾讯云代金券