su命令
命令su是切换用户的,格式su [-] username,命令后面不加username,就是切换到root用户。
-表示彻底切换用户,包括自己的配置、环境变量。
sudo命令
命令sudo可以让普通用户临时以指定用户身份(通常是root)去执行一条命令,输入命令# visudo,实际上打开/etc/sudoers文件
继续往下翻,一直找到root ALL=(ALL) ALL这一行,表示允许root用户在任何地方允许所有命令
然后在这条命令下面添加命令aming ALL=(ALL) /usr/bin/ls, /usr/bin/mv/, /usr/bin/cat,保存退出:wq;注意这里要使用命令的绝对路径并且要用空格隔开;小用法" :set nu"可以查看文件的行数。
如果更改的内容有问题,会提示如下,分别按e,x,Q 进行操作
然后验证普通用户的权限,查看不了root文件
sudo命令用法,第一次使用sudo命令,需要输入密码,第二次就不需要了
继续输入# visudo,在刚才编辑的地方添加一行命令,可以在使用sudo命令时,不需要再输入密码
visudo中还有给命令做别名的用法,用AMING_CMD替代/usr/bin/ls, /usr/bin/mv/, /usr/bin/cat
限制root远程登录
使用root用户登录服务器有一定的危险,为安全起见,我们可以禁止root远程登录,只允许普通用户登录。首先输入#visudo,给普通用户做别名,然后设定规则,让普通用户拥有任何身份,执行su命令无需密码
限制root远程登录,首先修改配置文件/etc/ssh/sshd_config,输入/Root搜索,将#PermitRootLogin yes修改为PermitRootLogin no,保存配置文件,重启sshd服务# systemctl restart sshd.service