【设置】CentOS 7.4禁止root用户登录并添加sudo权限管理
2021年05月02日 09:04:11 作者:Jiaozn 分类:Linux安全 评论(0)系统环境:CentOS 7.4
目的:不能用root用户直接登录,使用普通用户管理服务器,然后用sudo提权进行操作。
1、创建管理用户,设置密码
[root@localhost ~]# useradd admin
[root@localhost ~]# echo "www.yangxingzhen.com" |passwd --stdin admin
2、禁止root登录
#编辑/etc/ssh/sshd_config文件
[root@localhost ~]# vim /etc/ssh/sshd_config
#找到PermitRootLogin,把yes改成no即可
#保存退出
3、sudo授权admin管理
修改sudoers的写权限
这个文件默认是只读的,现在加入写权限,键入命令
chmod -v u+w /etc/sudoers
#编辑/etc/sudoers文件,添加以下内容
[root@localhost ~]# vim /etc/sudoers
admin ALL=(ALL) ALL
然后按键esc 进入命令模式 键入命令 :wq! 保存退出
最后键入命令
chmod -v u-w /etc/sudoers
收回写权限
含义:
admin LL=(ALL) ALL
用户名 被管理主机的地址=(可使用的身份) 授权命令(绝对路径)
模块
含义
用户名或群组名表示系统中的那个用户或群组,可以使用 sudo 这个命令。
被管理主机的地址用户可以管理指定 IP 地址的服务器。这里如果写 ALL,则代表用户可以管理任何主机;如果写固定 IP,则代表用户可以管理指定的服务器。如果我们在这里写本机的 IP 地址,不代表只允许本机的用户使用指定命令,而是代表指定的用户可以从任何 IP 地址来管理当前服务器。
可使用的身份就是把来源用户切换成什么身份使用,(ALL)代表可以切换成任意身份。这个字段可以省略。
授权命令表示 root 把什么命令命令授权给用户,换句话说,可以用切换的身份执行什么命令。需要注意的是,此命令必须使用绝对路径写。默认值是 ALL,表示可以执行任何命令。
#重启sshd服务
[root@localhost ~]# systemctl restart sshd
4、验证root登录
#使用远程工具xshell连接服务器
#出现以上情况,表示root拒绝登录
5、验证sudo提权
#使用远程工具xshell连接服务器,使用admin用户
#查看root家目录
[admin@localhost ~]$ ls -l /root
#提示权限不够
#试试刚才sudo授权,在执行命令前加入sudo命令,输入密码
[admin@localhost ~]$ sudo ls -l /root
验证成功,sudo授权成功。
评论
发表评论