sudo
- 1.为什么要有sudo
- 2.使用sudo提权的前提
- 2. 在root下添加普通用户到信任列表
- 3.验证
- 4.总结
1.为什么要有sudo
首先我们要知道,普通用户是受Linux的权限约束的。就比如普通用户对自己的家目录有完全管理的权限,但是不能随意查看其他人的家目录,更不能查看root的家目录。如下图所示
我们想查看root的家目录,但是没有权限。
所以我们就要给ls这条指令提权。
2.使用sudo提权的前提
这里的ffg是我们的普通用户,可以看到,当我们要给ls这条指令提权的时候,居然是要输入我们的密码?那不是可以随便提权吗?
很显然并不是,提示了第一句话是,ffg不在sudoers文件中。意思就是说该用户并没有在root的信任列表里面。
所以,要给某条指令提权,输入该用户的密码是合理的。因为我们不可能在任何情况下都拥有root的密码吧?比如root是你的某个领导。这时候总不能去问root的密码。
所以我们现在要做的是,联系root,把我添加到信任列表里面,就可以使用sudo提权了。
2. 在root下添加普通用户到信任列表
现在我们假设我们就是root,我们要给ffg这名用户添加到我们用户列表里面
在root下,我们输入用vim编辑器打开这个文件
找到第100行,如果没有显示行号的话输入
:set nu ,就显示行号了,不要漏了冒号
我们 “yy”复制第100行,然后“p“粘贴到下一行,把root改成ffg
然后输入
:wq! 强制存盘然后退出,不要忘记冒号和感叹号
之所以要强制退出,这是系统级别的改动,所以要慎重一点,需要强制才能写入。系统级别的配置总不能随便写入吧。
这时候ffg这名用户已经可以使用sudo了。
我们这时候再变成普通用户验证一下。
3.验证
sudo提权ls
并没有报上次的错误,表明给ls提权成功了,我们看看允许访问root的家目录了吗
注意了哈,是sudo ls /root,不是ls /root,加个sudo表示我们已经有权限访问了。
4.总结
使用sudo给某条指令提权要把该用户加到root的sudoers文件里面
sudo给指令提权语法是 sudo + 指令