用户和组管理 用户配置文件和密码配置文件  用户组管理 用户管理  usermod命令 用户密码管理 mkpasswd命令 su命令 sudo命令 限制root远程登录

1./etc/passwd

用户和组管理
用户配置文件和密码配置文件
 用户组管理
用户管理
 usermod命令
用户密码管理
mkpasswd命令
su命令
sudo命令
限制root远程登录

passwd文件分为7段

第一段是用户名,第二段是密码,第三段是uid,第四是gid,第五段是用户的注释信息,第六段是用户的家目录,第七段是用户的shell

2./etc/shadow

用户和组管理
用户配置文件和密码配置文件
 用户组管理
用户管理
 usermod命令
用户密码管理
mkpasswd命令
su命令
sudo命令
限制root远程登录

 shadow文件分成九段

第一段是用户名,第二段是用户的密码,第三段是1970年距离今天的天数,第四段是过多少天才可以修改密码,第五段是多少天后过期,第六段是密码过期警告,第七段是密码到期账号无效,第八段是账号在这个日期前可以使用,第九段无实际意义

man shadow

用户和组管理
用户配置文件和密码配置文件
 用户组管理
用户管理
 usermod命令
用户密码管理
mkpasswd命令
su命令
sudo命令
限制root远程登录

给用户设置密码 passwd  用户名

 用户组管理

1./etc/group 用户组  group-文件是group文件的备份文件

2.增加组 groupadd grp1 删除组 groupdel grp1

3.添加GID group -g 1005 grp1

用户管理

1.添加用户 useradd

2.将用户user1添加到grp1组并设置uid=1004 

用户和组管理
用户配置文件和密码配置文件
 用户组管理
用户管理
 usermod命令
用户密码管理
mkpasswd命令
su命令
sudo命令
限制root远程登录

3.给用户指定家目录和/sbin/nologin

用户和组管理
用户配置文件和密码配置文件
 用户组管理
用户管理
 usermod命令
用户密码管理
mkpasswd命令
su命令
sudo命令
限制root远程登录

4.useradd|adduser -M 添加用户不创建家目录

5.userdel 删除用户

6.删除用户的同时删除家目录  userdel -r  用户名

 usermod命令

1.修改用户属性

2.usermod -g  修改用户所属群组

3.usermod -G 修改用户所属的附加群组

4.usermod -d 修改用户的家目录

5.usermod -s 修改用户登录后所使用的shell

用户密码管理

1.passwd命令修改用户密码

2.如果用户没有密码则密码文件里显示两个!号

用户和组管理
用户配置文件和密码配置文件
 用户组管理
用户管理
 usermod命令
用户密码管理
mkpasswd命令
su命令
sudo命令
限制root远程登录

3.密码位置如果是*号是不能登录的

4.passwd -l  username 锁定用户的密码

5.passwd -u username  解锁用户的密码

6.usermod -l  锁定用户密码

7.usermod -U 解锁用户密码

8.passwd  --stdin 用户名 给用户设定密码

用户和组管理
用户配置文件和密码配置文件
 用户组管理
用户管理
 usermod命令
用户密码管理
mkpasswd命令
su命令
sudo命令
限制root远程登录

9. | 管道符的作用是将前面的结果传递到后面的命令

用户和组管理
用户配置文件和密码配置文件
 用户组管理
用户管理
 usermod命令
用户密码管理
mkpasswd命令
su命令
sudo命令
限制root远程登录

mkpasswd命令

1.用户生成密码

2.生成一个10位的没有特殊符号的密码

用户和组管理
用户配置文件和密码配置文件
 用户组管理
用户管理
 usermod命令
用户密码管理
mkpasswd命令
su命令
sudo命令
限制root远程登录

su命令

1.切换用户命令

2.id命令查看当前用户和组信息

3.su - user1  假如现在是root用户加上-会直接切换到user1用户的家目录,切换的彻底。

4.以指定用户执行一条命令

用户和组管理
用户配置文件和密码配置文件
 用户组管理
用户管理
 usermod命令
用户密码管理
mkpasswd命令
su命令
sudo命令
限制root远程登录

sudo命令

1.给普通用户授权root用户的身份

2.visudo  打开sudo配置文件

90 ## Allow root to run any commands anywhere
91 root    ALL=(ALL)       ALL
92 test1   ALL=(ALL)       NOPASSWD: /bin/ls, /bin/mv, /bin/su
[root@ruanwenwu01 ~]# su - test1
上一次登录:一 10月 30 07:36:10 CST 2017pts/0 上
[test1@ruanwenwu01 ~]$ ls /root
ls: 无法打开目录/root: 权限不够
[test1@ruanwenwu01 ~]$ sudo ls /root/
anaconda-ks.cfg

  

限制root远程登录

1.给用户设置Alias  visudo 命令打开sudo的配置文件添加用户alias

用户和组管理
用户配置文件和密码配置文件
 用户组管理
用户管理
 usermod命令
用户密码管理
mkpasswd命令
su命令
sudo命令
限制root远程登录

 2.配置alias意思是给用户su命令,并且用户在用这个命令的时候不需要输入密码

用户和组管理
用户配置文件和密码配置文件
 用户组管理
用户管理
 usermod命令
用户密码管理
mkpasswd命令
su命令
sudo命令
限制root远程登录

3用user1用户执行sudo 命令不需要输入密码直接切换到了root用户 

用户和组管理
用户配置文件和密码配置文件
 用户组管理
用户管理
 usermod命令
用户密码管理
mkpasswd命令
su命令
sudo命令
限制root远程登录

4.限制root远程登录,修改ssh的配置文件 vi /etc/ssh/sshd_config,去掉注释,将yes改成no 重启服务 systemctl restart sshd.service

用户和组管理
用户配置文件和密码配置文件
 用户组管理
用户管理
 usermod命令
用户密码管理
mkpasswd命令
su命令
sudo命令
限制root远程登录

5.重新远程登录,发现不能登录了

用户和组管理
用户配置文件和密码配置文件
 用户组管理
用户管理
 usermod命令
用户密码管理
mkpasswd命令
su命令
sudo命令
限制root远程登录

6.用户user1用户登录系统然后用sudo su - root 切换到root用户 (w 查看当前登录的用户)

login as: user1
user1@192.168.133.88's password:
Last login: Thu Nov 23 22:17:38 2017
[user1@sunyujun01 ~]$ w
 22:41:59 up 11:00,  2 users,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     tty1                      1311月17  2days  0.10s  0.10s -bash
user1    pts/0    192.168.133.1    22:40    7.00s  0.18s  0.13s w
[user1@sunyujun01 ~]$ sudo su -
上一次登录:四 11月 23 22:26:20 CST 2017pts/0 上
最后一次失败的登录:四 11月 23 22:39:00 CST 2017从 192.168.133.1ssh:notty 上
最有一次成功登录后有 1 次失败的登录尝试。
[root@sunyujun01 ~]#

7.恢复root远程登录将sshd的配置文件还原即可