shallow丿ovebash
[root@localhost ~]# su - user1 [user1@localhost ~]# pwd /home/user1 [root@localhost ~]# su user1 [root@localhost ~]# pwd /root [root@localhost ~]# ls -la #查看当前用户的配置文件 [root@localhost ~]# su - -c "touch /tmp/1.txt" user1 [root@localhost ~]# ls -lt /tmp/ | head [root@localhost ~]# id user1 #查看特定用户的的uid和所属组
若不当心误删了普通用户的配置文件,能够经过新建文件再从通用配置文件中拷贝一份,而且给配置文件赋权ssh
[root@localhost ~]# rm -rf /home/user1 [root@localhost ~]# su - user1 -bash-4.2$ #没有任何的配置文件 Ctrl+d [root@localhost ~]# mkdir /home/user1 [root@localhost ~]# chown user5:user5 /home/user1/ [root@localhost ~]# ls /etc/skel/ #系统模板文件 [root@localhost ~]# cp/etc/skel/.bash* /home/user1 [root@localhost ~]# chown -R user1:user1 !$ #将配置文件的全部者和全部组赋权 [root@localhost ~]# su - user1 [user1@localhost ~]# pwd /home/user1
[root@localhost ~]# visudo root ALL=(ALL) ALL #运行root用户运行任何目录 ser1 ALL=(ALL) ALL或/usr/bin/ls,/usr/bin/mv,/usr/bin/cat #ser1 用户 主机=(用户) 全部命令,单个命令 :set nu #编号
使用visudo能够检测出语法是否输入错误,若在第100行处输入错误,则会提示ui
visudo: >>> /etc/sudoers: syntax error near line 100 <<< #提示在第100行处有误 What now? Options are: (e)dit sudoers file again #按e从新编辑 e(x)it without saving changes to sudoers file #按x退出,不保存修改 (Q)uit and save changes to sudoers file (DANGER!) #按q保存并退出! What now?
[root@localhost ~]# ls /root/ #权限不够 [root@localhost ~]# sudo /usr/bin/ls /root/ #能够访问 而且第一次执行时须要输入密码 ser2 ALL=(ALL) NOPASSWD:/usr/bin/ls,/usr/bin/cat #添加了NOPASSWD:能够不用输入密码就能够直接操做 [root@localhost ~]# su - user2 [root@localhost ~]# ls /root/ [root@localhost ~]# sudo ls /root/ 建立一个用户,而且赋予它与root用户同样的权限 Host_Alias Cmnd_Alias Host_Alias ??? Cmnd_Alias USER1_CMD=/usr/bin/ls,/usr/bin/cat ser2 ALL=(ALL) USER1_CMD [root@localhost ~]# sudo ls /root/ [root@localhost ~]# sudo cat /home/1.txt %wheel ALL=(ALL) NOPASSWD:ALL #用户组
使用某个用户登陆后能够直接切换到root用户,而并不须要输入密码rest
[root@localhost ~]# visudo #User_Aliases User_Alias USERS = user1,user2 USERS ALL=(ALL) NOPASSWD:/usr/bin/su [root@localhost ~]# su - user1 [user1@localhost ~]# su - user2 [user1@localhost ~]# sudo su - user2 [user2@localhost ~]# su - Ctrl+C [user2@localhost ~]# sudo su - [root@localhost ~]# whoami /root
限制某些用户不能使用/usr/bin/su -和/usr/bin/su - root切换到root用户下的方法code
USERS ALL=(ALL) NOPASSWD: !/usr/bin/su -,!/usr/bin/su - root
防止知道root密码后,恶意使用远程登陆主机it
[root@localhost ~]# vi /etc/ssh/sshd_sysconfig /Root # PermitRootLogin yes #容许远程登陆root 改 PermitRootLogin no #不可远程登陆root [root@localhost ~]# systemctl restart sshd.service #重启sshd服务