“Ubuntu禁止root用户通过SSH直接登录”问题的解决

目录

[1 前言](#1 前言)

[2 问题的解决](#2 问题的解决)

[2.1 修改sshd_config文件](#2.1 修改sshd_config文件)

[2.2 重启 SSH 服务](#2.2 重启 SSH 服务)


1 前言

最近在做毕设的时候,由于使用普通用户,在MobaXterm的图形界面上,无法正常查看**/root**文件夹内容,如下图所示:

于是我就想直接想用oot用户通过SSH直接登录,然后就出现了如下的问题:

root@192.168.11.128's password:

Access denied

2 问题的解决

遇事不决,就问gpt,得知**"Ubuntu禁止root用户通过SSH直接登录"**,解决方案如下。

2.1 修改sshd_config文件

切换到root用户

复制代码
su - root

检查 SSH 配置文件

复制代码
sudo nano /etc/ssh/sshd_config

按照gpt说的,应该是**"找到 PermitRootLogin 这一行,看看是否被禁用,即PermitRootLogin no"** ,但是找了一会,硬是没有找到,还发现它在下图①中是被注释的状态(可能默认就是no ),于是我直接,自己加了一行"PermitRootLogin yes",如下图②。

复制代码
PermitRootLogin yes

2.2 重启 SSH 服务

本来到这一步应该就是一行代码的事,但是还是有点小波折,出现了这样的问题:

root@zy-server:/home/zy# sudo systemctl restart sshd

Failed to restart sshd.service: Unit sshd.service not found.

后面发现是ssh在不同版本linux下的差异,原因如下:

①在大多数基于 ​Debian/Ubuntu 的系统上,SSH 服务的名称是 ssh。

②在 ​CentOS/RHEL 系统上,SSH 服务的名称通常是 sshd。

因此,如果在ubuntu上执行的命令应该是:

复制代码
sudo systemctl restart ssh

在centos上执行的命令应该是:

复制代码
sudo systemctl restart sshd
相关推荐
qq_401700412 小时前
Linux设备树详解
linux·运维·服务器
云梦谭3 小时前
让 Linux 主动连接 Windows:配置 Windows 11 SSH 服务端
linux·windows·ssh
刚入门的大一新生3 小时前
Linux-信号
linux·运维·服务器
GeW7 小时前
新质生产力路线图解读:数据库性能优化与Linux调优专场
linux
mounter6258 小时前
深入理解 gccrs:GCC 如何实现 Rust 编译器,以及编译 Linux 内核面临的挑战
linux·驱动开发·rust
垚垚学技术_聚焦云原生8 小时前
Ansible Playbook 进阶:when 条件、loop 循环、handlers 触发器落地
linux·ansible·自动化运维·devops
无足鸟ICT9 小时前
【RHCA+】type命令(判断命令类型)
linux·ssh·bash
咸鱼梦想家π9 小时前
Linux开发工具(下)
linux·运维·服务器
LHICOD9 小时前
Linux-1
linux·ip·vmware·虚拟机·cmd·ping
丰锋ff11 小时前
用户管理命令
linux·运维·服务器