51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

CentOS 7.4禁止root用户登录并添加sudo权限管理

系统环境:CentOS 7.4

服务器IP:192.168.8.20

目的:不能用root用户直接登录,使用普通用户管理服务器,然后用sudo提权进行操作。

1、创建管理用户,设置密码

[root@localhost ~]# useradd admin

[root@localhost ~]# echo "www.yangxingzhen.com" |passwd --stdin admin

CentOS 7.4禁止root用户登录并添加sudo权限管理-图片1

2、禁止root登录

#编辑/etc/ssh/sshd_config文件

[root@localhost ~]# vim /etc/ssh/sshd_config

#找到PermitRootLogin,把yes改成no即可

CentOS 7.4禁止root用户登录并添加sudo权限管理-图片2

#保存退出

3、sudo授权admin管理

#编辑/etc/sudoers文件,添加以下内容

[root@localhost ~]# vim /etc/sudoers

admin ALL=(ALL) ALL

CentOS 7.4禁止root用户登录并添加sudo权限管理-图片3

#保存退出

含义:

admin LL=(ALL) ALL

用户名 被管理主机的地址=(可使用的身份) 授权命令(绝对路径)

|----------|---------------------------------------------------------------------------------------------------------------------------------------| | 模块 | 含义 | | 用户名或群组名 | 表示系统中的那个用户或群组,可以使用 sudo 这个命令。 | | 被管理主机的地址 | 用户可以管理指定 IP 地址的服务器。这里如果写 ALL,则代表用户可以管理任何主机;如果写固定 IP,则代表用户可以管理指定的服务器。如果我们在这里写本机的 IP 地址,不代表只允许本机的用户使用指定命令,而是代表指定的用户可以从任何 IP 地址来管理当前服务器。 | | 可使用的身份 | 就是把来源用户切换成什么身份使用,(ALL)代表可以切换成任意身份。这个字段可以省略。 | | 授权命令 | 表示 root 把什么命令命令授权给用户,换句话说,可以用切换的身份执行什么命令。需要注意的是,此命令必须使用绝对路径写。默认值是 ALL,表示可以执行任何命令。 |

#重启sshd服务

[root@localhost ~]# systemctl restart sshd

4、验证root登录

#使用远程工具xshell连接服务器

CentOS 7.4禁止root用户登录并添加sudo权限管理-图片4

#出现以上情况,表示root拒绝登录

5、验证sudo提权

#使用远程工具xshell连接服务器,使用admin用户

CentOS 7.4禁止root用户登录并添加sudo权限管理-图片5

#查看root家目录

[admin@localhost ~]$ ls -l /root

#提示权限不够

#试试刚才sudo授权,在执行命令前加入sudo命令,输入密码

[admin@localhost ~]$ sudo ls -l /root

CentOS 7.4禁止root用户登录并添加sudo权限管理-图片6

验证成功,sudo授权成功。
继续阅读 Linux最后更新:2024-1-24

赞(0)
未经允许不得转载:工具盒子 » CentOS 7.4禁止root用户登录并添加sudo权限管理