用户
- 添加用户
[root@MyCloudServer ~]# useradd user1
- 创建目录会自动创建在/home/目录下创建对应的用户目录
[root@MyCloudServer ~]# ls /home/
lost+found user1
使用useradd -M user1可以不创建对应用户目录
- 删除用户
[root@MyCloudServer ~]# userdel user1
[root@MyCloudServer ~]# ls /home/
lost+found user1
查看/home/中的user1目录未删除,可以使用
[root@MyCloudServer ~]# rm -rf /home/user1
或
[root@MyCloudServer ~]# userdel -r user1
用户组
- 添加用户组grp1
[root@MyCloudServer ~]# groupadd grp1
- 用户组配置文件/etc/group
[root@MyCloudServer ~]# cat /etc/group |grep grp1
grp1:x:1001:
- 删除用户组
[root@MyCloudServer ~]# groupdel grp1
用户密码管理
- 用户密码配置文件/etc/passwd
[root@MyCloudServer ~]# cat /etc/passwd | grep user1
user1:x:1000:1000::/home/user1:/bin/bash
用户:密文:天数(距离19700101的天数):要过多少天才可以更改密码,默认为0,不受限制:密码距离多少天后到期,即距离多少天内更改密码:密码到期前警告,距离多少天到期提醒:账号失效期限,账号锁定:账号声明周期,距离19700101有多少天,账号在这个日期前可以使用,到期后账号会锁定:保留字段,没有实际意义
!!为空密码,不能登录,*为密码被锁定,不能登录
- 设置密码
#-l为锁定用户密码
[root@MyCloudServer ~]# passwd -l user1
Locking password for user user1.
passwd: Success
#解锁
[root@MyCloudServer ~]# passwd -u user1
Unlocking password for user user1.
passwd: Warning: unlocked password would be empty.
passwd: Unsafe operation (use -f to force)
#锁定,显示一个'!'
[root@MyCloudServer ~]# usermod -L user1
#解锁
[root@MyCloudServer ~]# usermod -U user1
- 明文输入,只需输入一次密码
[root@MyCloudServer ~]# passwd --stdin user1
Changing password for user user1.
123
passwd: all authentication tokens updated successfully.
- 使用shell脚本
[root@localhost ~]# echo "123456" | passwd --stdin user1
或
[root@localhost ~]# echo -e "123456\n123456" | passwd user1
make passwd
- 使用yum install -y expect安装
#测试
[root@MyCloudServer ~]# mkpasswd
\26fcNecF
#-l指定长度
[root@MyCloudServer ~]# mkpasswd -l 12
riydBVh97sl*
#-s指定特殊符号数量
[root@MyCloudServer ~]# mkpasswd -l 12 -s 3
Novf}[v73;aO
#只生成数字和字母
[root@MyCloudServer ~]# mkpasswd -l 12 -s 0
mbFv0crWskk8
- 使用mkpasswd设置用户密码
[root@MyCloudServer ~]# mkpasswd -l 12 -s 0 | passwd --stdin user1
Changing password for user user1.
passwd: all authentication tokens updated successfully.
[root@MyCloudServer ~]# mkpasswd -l 12 -s 0 > /home/1.txt ; head /etc/home/1.txt >> /home/1.txt | passwd user1
head: cannot open ‘/etc/home/1.txt’ for reading: No such file or directory
Changing password for user user1.
New password: Password change aborted.
passwd: Have exhausted maximum number of retries for service
[root@MyCloudServer ~]# cat /home/1.txt
msPvlcaJsq95
改变文件或目录所有者chown
chown 文件或目录拥有者:文件或目录使用者 文件
[root@MyCloudServer user1]# chown -R user1:user1 /home/user1
使用su切换用户
- su - 用户
[root@MyCloudServer ~]# su - user1
Last failed login: Tue Apr 30 23:42:13 CST 2019 from 106.2.6.143 on ssh:notty
There were 267 failed login attempts since the last successful login.
- 查看当前路径pwd
[user1@MyCloudServer ~]$ pwd
/home/user1
- 若不小心误删了普通用户的配置文件,可以通过新建文件再从通用配置文件中拷贝一份,并且给配置文件赋权
[root@MyCloudServer user1]# rm -rf /home/user1
[root@MyCloudServer user1]# su - user1
Last login: Wed May 1 01:07:39 CST 2019 on pts/0
su: warning: cannot change directory to /home/user1: No such file or directory
-bash-4.2$
无用户目录则会切换到-bash-4.2$,使用ctrl+d退出当前登陆
- 从系统模板/etc/skel/复制一份到/home/user1
[root@MyCloudServer user1]# mkdir /home/user1
[root@MyCloudServer user1]# ls /etc/skel/
[root@MyCloudServer user1]# cp /etc/skel/.bash* /home/user1
[root@MyCloudServer user1]# chown -R user1:user1 /home/user1
[root@MyCloudServer user1]# su - user1
Last login: Wed May 1 01:12:14 CST 2019 on pts/0
- whoami
[user1@MyCloudServer ~]$ whoami
user1
visudo
运维中常限制远程直接登录root
[root@localhost ~]# vi /etc/ssh/sshd_sysconfig
/Root
# PermitRootLogin yes
#设置为不可远程登录root,取消注释'#',并将yes更改为no
PermitRootLogin no
#重启sshd服务
[root@localhost ~]# systemctl restart sshd.service
或
[root@localhost ~]# /etc/init.d/sshd restart