前言
近期由于特殊原因需要对线上CentOS 7
环境添加一个新的用户并赋予sudo
权限,配置方法记录如下:
过程
新建用户
创建一个用户名为:soarli
的用户
[root@localhost ~]# adduser soarli
为这个用户初始化密码,linux
会判断密码复杂度,不过可以强行忽略:
[root@localhost ~]# passwd soarli
更改用户 soarli 的密码 。
新的 密码:
无效的密码: 密码未通过字典检查 - 过于简单化/系统化
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
删除用户
删除用户而不删除用户文件:
sudo userdel soarli
删除用户的Home
目录和邮件,需使用-r
选项:
sudo userdel -r soarli
成功后,userdel
命令不会产生任何输出。如果你授予了用户sudo权限,它将从wheel
以及该用户所属的任何其他组中删除。
授权用户
个人用户的权限只可以在本home
下有完整权限,其他目录要看别人授权。而经常需要root
用户的权限,这时候sudo
可以化身为root
来操作。如果使用sudo
创建了文件,自己并不会有读写权限,因为权限所有者为root
。
新创建的用户并不能使用sudo
命令,需要给他添加授权。
sudo
命令的授权管理是在sudoers
文件里的。
查看sudoers
:
[root@localhost ~]# sudoers
bash: sudoers: 未找到命令...
[root@localhost ~]# whereis sudoers
sudoers: /etc/sudoers /etc/sudoers.d /usr/libexec/sudoers.so /usr/share/man/man5/sudoers.5.gz
找到这个文件位置之后再查看权限:
[root@localhost ~]# ls -l /etc/sudoers
-r--r----- 1 root root 4251 9月 25 15:08 /etc/sudoers
是的,只有只读的权限,如果想要修改的话,需要先添加w权限:
[root@localhost ~]# chmod -v u+w /etc/sudoers
mode of "/etc/sudoers" changed from 0440 (r--r-----) to 0640 (rw-r-----)
然后就可以添加内容了,在下面的一行下追加新增的用户:
[root@localhost ~]# vim /etc/sudoers
## Allow root to run any commands anywher
root ALL=(ALL) ALL
#这个是新增的用户,切记下一行不能写注释内容,否则本文件会报错不生效
soarli ALL=(ALL) ALL
wq
保存退出,这时候要记得将写权限收回:
[root@localhost ~]# chmod -v u-w /etc/sudoers
mode of "/etc/sudoers" changed from 0640 (rw-r-----) to 0440 (r--r-----)
这时候使用新用户登录,使用sudo
:
[soarli@localhost ~]$ sudo cat /etc/passwd
[sudo] password for soarli:
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
第一次使用会提示你,你已经化身超人,身负责任。而且需要输入密码才可以下一步。如果不想需要输入密码怎么办,将最后一个 ALL
修改成 NOPASSWD: ALL
。
参考资料:
https://cloud.tencent.com/developer/article/1721167
https://www.myfreax.com/how-to-add-and-delete-users-on-centos-7/
版权属于:soarli
本文链接:https://blog.soarli.top/archives/663.html
转载时须注明出处及本声明。