目录
1 前言
2 问题的解决
2.1 修改sshd_config文件
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