ubuntu的root用户无法ssh远程连接的一种原因及其解决方法

ubuntu的root用户无法ssh远程连接的一种原因及其解决方法,第1张

环境: ubuntu16.04 LST, 配置了路由器的端口映射

现象: 普通用户可以通过ssh远程连接上服务器, 但是root用户用ssh登陆时始终报Permission Denied, 而且可以百分百确定root的密码是正确的.

一种可能的原因: root用户的密码过于简单, SSH自动检测并关闭了root用户的远程连接许可.

解决方法: (切换到root用户)

1. 首先确定是不是这个原因导致的, 查看ssh的配置文件:

 $ vim /etc/ssh/sshd_config

如果出现如下提示, 则确认了原因.

2. 根据提示的步骤进行故障排除

a. 改用户名

    $ passwd root

后面会输入两次新的密码, 注意要把密码设置的复杂一些, 不然还要重来.

b. 改配置文件

$ vim /etc/ssh/sshd_config

把"DenyUsers root"这一行注释掉, 如下图所示

c. 重启ssh服务

     $ service sshd restart

问题应该可以得到解决, root可以远程登陆了。

- ----------------------------------------------------更新-------------------------------------------------------------------- -

不建议让root用户远程登录,身边发生过root用户被攻破的惨剧。如果确有需求,请务必将密码设置的相当复杂。前事不忘后事之师,谨记!!!

    1.本地生成密钥对:            然后根据提示一步步的按enter键即可(其中有一个提示是要求设置私钥口令passphrase,不设置则为空,这里看心情吧,如果不放心私钥的安全可以设置一下),执行结束以后会在 /home/当前用户 目录下生成一个 .ssh 文件夹,其中包含私钥文件 id_rsa 和公钥文件 id_rsa.pub。     2.将公钥复制到远程主机中:            使用ssh-copy-id命令将公钥复制到远程主机。ssh-copy-id会将公钥写到远程主机的 ~/ .ssh/authorized_key 文件中。     3.建立连接:一、远程服务器问题 远程服务器~/.ssh文件夹及其文件权限不对,包括 1、authorized_keys文件权限 2、.ssh文件夹权限 3、.ssh文件夹所有权 需要设置权限,通过别的方式进入远程主机,然后进行如下操作:     更改文件所有权     更改文件夹权限     更改authorized_keys文件权限 $ chmod 600 ~/.ssh/authorized_keys 二、公钥没有添加 如果服务器端根本就没有添加公钥是断然不可能通过认证的 Solution: 通过其它方式登录到远程服务器,查看~./ssh/authorized_keys文件中是否添加了公钥,若没有可直接手动将公钥内容粘贴到该文件末尾。

有多种可能:(1)、你的客户端参数配置不正确,无法用 SSH 登录到远程服务器;(2)、虽然你的客户端网络参数设置正确,但是远程服务器处于关闭服务,进行维护状态,你也不能够登录;(3)、即使以上两条都是正确的,如果你的局域网除了问题,同样你还是不能够登录。

所以你要逐项进行检查、分析原因才行。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/543731.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-06-27
下一篇2023-06-27

发表评论

登录后才能评论

评论列表(0条)

    保存