Linux组管理&手动创建用户

组管理命令总汇

groupadd
groupmod
groupdel
gpasswd # 设置组密码
newgrp # 切换主组

创建组

参数说明:
-g:指定新建工作组的 id;
-r:创建系统工作组,系统工作组的组ID小于 500-K:覆盖配置文件 "/ect/login.defs"-o:允许添加组 ID 号不唯一的工作组。
-f,--force: 如果指定的组已经存在,此选项将失明了仅以成功状态退出。当与 -g 一起使用,并且指定
的GID_MIN已经存在时,选择另一个唯一的GID(即-g关闭)。
[root@laser ~]# groupadd gg1 #创建基本组,不指定gid
[root@laser ~]# tail -1 /etc/group
gg1:x:2005:
[root@laser ~]# groupadd -g 5555 gg2 #创建基本组, 指定gid为5555

[root@laser ~]# tail -1 /etc/group
gg2:x:5555:
[root@laser ~]# groupadd -r gg3 # 创建系统组,gid从201-999
[root@laser ~]# tail -1 /etc/group
gg3:x:991:

修改组

参数:
-g <群组识别码> 设置欲使用的群组识别码。
-o 重复使用群组识别码。
-n <新群组名称> 设置欲使用的群组名称。
[root@laser ~]# groupmod -g 1111 gg3
[root@laser ~]# tail -1 /etc/group
gg3:x:1111:

[root@laser ~]# groupmod -n new_gg3 gg3 #-n 修改组名称
[root@laser ~]# tail -1 /etc/group
new_gg3:x:1111:

删除组

如果一个组是一个用户的主组,那么该组不能被删除,删掉 用户会默认一起删掉他的主组

[root@laser ~]# useradd cm
[root@laser ~]# groupadd devops
[root@laser ~]# usermod -G devops cm
[root@laser ~]# id cm
uid=1004(cm) gid=1004(cm)
groups=1004(cm),1005(devops)


[root@laser ~]# groupdel devops # 附加组可以删除
[root@laser ~]# id cm # 查看用户,发现他的附加组没有了
uid=1004(cm) gid=1004(cm) groups=1004(cm)
[root@laser ~]# groupdel cm   # 无法删除组cm,因为组cm属于cm用户的主组
groupdel: cannot remove the primary group of user 'chen'

组成员管理

组成员管理

1、一类是基本组或称主组,用户只能有一个基本组, 创建时可通过-g指定,如未指定则创建一个默认的组(与 用户同名)

2、附加组,基本组不能满足授权要求,创建附加组, 将用户加入该组,用户可以属于多个附加组,加入一个 组后就拥有了该组的权限

可选项参数:
-a:添加用户到组;
-d:从组删除用户;
-A:指定管理员;
-M:指定组成员和-A的用途差不多;
-r:删除密码;
-R:限制用户登入组,只有组中的成员才可以用newgrp加入该组。
注意:gpasswd将用户添加到组或从组中删除,只针对已存在的用户


[root@laser ~]# groupadd it
[root@laser ~]# gpasswd -a user07 it  # 将某个用户加入到某个组
[root@laser ~]# gpasswd -M
user02,user03,user04 it # 将多个用户加入到it组
[root@laser ~]# gpasswd -A cm it # 指定cm为组
it的组长,除了root用户外cm用户也可以采用第一条命令往it组里添加成员


[root@laser ~]# grep 'it' /etc/group  # 查看it组中的成员
it:x:505:user02,user03,user04
[root@laser ~]# gpasswd -d user07 it  # 删除用户usr07从it组

我们可以为组设置密码,然后让一些非组成员的用户通 过命令”newgrp 组”临时切换到组内并输入密码的方式获 取用户组的权限和特性,如下

[root@laser ~]# groupadd group1
[root@laser ~]# gpasswd group1
正在修改 group1 组的密码
新密码:
请重新输入新密码:
[root@laser ~]# touch /tmp/a.txt
[root@laser ~]# ll /tmp/a.txt
-rw-r--r-- 1 root root 0 810 21:01
/tmp/a.txt
[root@laser ~]# chown .group1
/tmp/a.txt
[root@laser ~]# !ll
ll /tmp/a.txt
-rw-r--r-- 1 root group1 0 810 21:01
/tmp/a.txt
[root@laser ~]# chmod g+w /tmp/a.txt
[root@laser ~]# gpasswd group1
[root@laser ~]# su - cm
上一次登录:一 810 21:01:46 CST 2020pts/0


[cm@laser ~]$ echo "123" >> /tmp/a.txt
# 此时没有权限
-bash: /tmp/a.txt: 权限不够
[cm@laser ~]$ newgrp group1 # 临时切换到组group1下,拥有其权限


密码:
[cm@laser ~]$ echo "123" >> /tmp/a.txt
[cm@laser ~]$ cat /tmp/a.txt
123

手动创建用户

1、/etc/passwd

[root@laser ~]# vim /etc/passwd # 新加一行
[root@laser ~]# tail -1 /etc/passwd
cm1:x:2002:2002:哈哈哈:/home/cm1:/bin/bash

2、/etc/shadow

[root@laser ~]# openssl passwd -1 -salt 'i have a dream'
Password: $1$i have a$jBGkkhpFu9WPSI1Nv.whT/
[root@laser ~]# vim /etc/shadow
[root@laser ~]# tail -1 /etc/shadow
cm1:$1$i have a$jBGkkhpFu9WPSI1Nv.whT/:18303::::::

制作密码

openssl passwd 手动生成密码
引言:在Linux系统中我们要向手动生成一个密码可以采用 opensll passwd来生成一个密码作为用户账号的密码。
Linux系统中的密码存放在/etc/shadow文件中,并且是以加密的方式存放的,根据加密方式的不同,所产
生的加密后的密码的位数也不同。
openssl passwd的作用是用来计算密码hash的,目的是为了防止密码以明文的形式出现。
语法格式: openssl passwd [option] passwd
openssl passwd常用的选项如下:


-1:表示采用的是MD5加密算法。
-salt:指定salt值,不使用随机产生的salt。在使用加密算法进行加密时,即使密码一样,salt不一
样,所计算出来的hash值也不一样,除非密码一样,salt值也一样,计算出来的hash值才一样。salt为8
字节的字符串。


示例:
[tom@laser ~]$ openssl passwd -1 -salt 'i have a dream' 
注意'i have a dream' 不是密码而是密码的盐,注意密码的盐里不要有中文 
Password: ##这里输入的是密码
$1$12345678$1qWiC4czIc07B4J8bPjfC0   ##这是生成的密文密码
$1$i have a$UEsc7yzrB5DWmTvxRpTsp.

将生成的密码串,手动添加到/etc/shadow中就可用作
用户的登陆密码了。

3、/etc/group

[root@laser ~]# vim /etc/group
[root@laser ~]# tail -1 /etc/group
cm1:x:2002:

4、/etc/gshadow

[root@laser ~]# vim /etc/gshadow
[root@laser ~]# tail -1 /etc/gshadow
cm1:!::

5、创建用户家目录,并用用户老家的模板/etc/skel/ 装 修一下,注意权限

[root@laser ~]# mkdir /home/cm1
[root@laser ~]# cp -r /etc/skel/.[!.]*
/home/cm1/
[root@laser ~]# chmod 700 /home/cm1/
[root@laser ~]# chown -R cm1.cm1
/home/cm1/

6、/var/spool/mail/xxx 用户邮箱文件

[root@laser ~]# touch /var/spool/mail/cm1
[root@laser ~]# chmod 660 !$
chmod 660 /var/spool/mail/cm1
[root@laser ~]# chown cm1.mail
/var/spool/mail/cm1

测试账号的登录

[root@laser ~]# ssh cm1@127.0.0.1
cm1@127.0.0.1's password:
Last login: Mon Aug 10 23:18:55 2020 from
127.0.0.1
Welcome to Alibaba Cloud Elastic Compute
Service !
[cm1@laser ~]$ whoami
cm1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值