平时登录 Linux 系统中,都是使用 root 用户的身份登录的。实际上,使用 root 登录是有一定的危险性。假如 root 用户没有使用密钥而是使用密码登录,密码设置简单容易被破解,设置复杂自己也记不住,存放在第三方还是有被窃取的风险。密码丢失会导致其他用户可以远程登录 root 用户,存在风险。 所以安全起见,可以禁止 root 远程登录,本地 root 登录是禁止不了的。现在可以设置为只允许登录普通用户,普通用户要想拿到一些 root 用户的权限,可以使用 su 和 sudo 命令,来实现临时切换 root 用户,而无法知道 root 用户密码。具体操作是把 su 命令放到 sudo 命令列表里面,之后就可以使用 sudo 命令远程使用 root 权限。 简单来说一下限制 root 远程登录的逻辑: 因为 root 用户无法登录,所以先登录到普通用户里,再 su 切换到 root 用户下面,这时候就需要输入 root 用户密码,而密码又是不知道的。而在 root 用户下面切换到 root 是不需要密码的,见下图, 输入命令 visudo ,进入编辑模式,在 User_Alias 下面增加一条设置,见下图, 然后在下面继续设定一个规则,见下图, 保存退出后,见下图, 先切换到普通用户 lys ,再切换到 root 用户,这时候就可以不输入密码登录了。 以上操作的前提是远程登录 root 。不过这个 ALL 权限有点大,可以直接更改 root 密码,然后直接登录 root 用户。这还是不行的,所以需要限制 root 用户远程登录的功能。输入命令 vi /etc/ssh/sshd_config ,回车,见下图, 这边直接输入“/”,后面加查找内容,就可以查找。输入“/Root”,回车, 我们需要的是上图红色框框的内容,将前面的 # 号删除,yes 改为 no ,见下图, 接着保存后退出。改完配置文件后,需要重启网络服务,输入命令 systemctl restart sshd.service ,回车即可。然后重新打开一个服务器 PuTTY ,看看还能不能登录,见下图, 可以看出不能登录,而且输入了 root 密码也还是不能登录。接着在 PuTTY 上登录用户 lys ,见下图, 可以登录普通用户 lys ,访问目录 /root/ 被拒绝,切换用户 root 的时候,提示需要输入密码,我们这边假定是不知道 root 密码的,所以最后使用 sudo 命令就可以成功登录 root 用户。 以上说明限制 root 远程登录成功了。为了以后方便做实验,还是要把远程登录限制去掉的。 输入命令 vi /etc/ssh/sshd_config ,回车,恢复上图内容,保存后退出,输入命令 systemctl restart sshd.service ,回车即可重启网络。然后 PuTTY 上就可以重新登录 root 了。
限制 root 远程登录
原创
©著作权归作者所有:来自51CTO博客作者JolieLin的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:su 命令及 sudo 命令
下一篇:df 命令及 du 命令
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Linux ssh 允许 root用户 登录
Linux ssh 允许 root用户 登录
Linux ssh 允许 root 登录