Ubuntu 18.04 root 使用ssh密钥远程登陆
前言:
Ubuntu默认是禁止root用户远程登陆
本教程解决Ubuntu 18.04版本 root用户 使用ssh密钥无法远程登陆的问题
问题发生的环境:
腾讯云,重装Ubuntu服务器时选择使用ssh密钥登陆服务器。

问题概括:
重装完成后默认创建了ubuntu用户,使用ssh密钥正常登陆,编辑/etc/ssh/sshd_config文件开启PermitRootLogin yes并重启sshd服务,使用Xshell使用root远程连接失败,提示“所选的用户密钥未在远程主机上注册”。
Google搜索问题发现大多数都是类似以下解决方法:
sshd_config开启运行root远程登陆PermitRootLogin Yes (已配置 但root登陆失败)
root登陆次数太多 账号被锁 重置登陆次数 (不是此条原因)
尝试无果继续搜索 看到一篇文章提到
配置ssh公钥到user/.ssh/authorized_keys
这篇文章给了我思路,腾讯云重装系统只要勾选使用ssh登陆,就会默认帮我们配置好默认的ubuntu用户的ssh配置设置,而root用户因为默认就禁止远程登陆,那么会不会也因此并没有配置上ssh公钥呢。(根据上面的登陆失败提示 心里想应该八九不离十就是这个原因)
解决思路
使用命令查看authorized_keys文件的路径
find -name authorized_keys

发现确实root和ubuntu用户分别对应一个authorized_key文件
对比查看两个authorized_keys文件发现问题所在,ubuntu用户加载了正确的ssh公钥,而root用户下的authorized_keys文件内容则为空。知道问题所在就好解决了
解决步骤
使用命令移动到ubuntu用户下的authorized_keys文件所在目录
cd /home/ubuntu/.ssh/
拷贝authorized_keys文件覆盖root用户下.authorized_keys文件
cp -i authorized_keys /root/.ssh/

sudo service ssh restart
重启ssh服务之后问题就解决了。
Ubuntu 18.04 root 使用ssh密钥远程登陆的更多相关文章
- ubuntu 18.04屏幕共享 -------(转载) ( Windows远程登录Ubuntu )
原文地址: https://my.oschina.net/michaelshu/blog/3018932 ----------------------------------------------- ...
- Ubuntu 18.04 启动root账号并授权远程登录
Ubuntu 18.04 刚刚上市2个月,下载安装,尝尝鲜~ 安装界面看上去舒服许多, 安装的速度也较之前17.04 和16.04 都快了许多.抱歉,未截图. Ubuntu 安装完成后默认不启动roo ...
- Ubuntu 18.04系统中不能ssh外网远程
前言 今天我不小心动了电插板,导致服务器断电,用远程命令开机,居然很长时间没反应,索性就亲自按电源键重启.服务器正常开机启动,ssh可以内网访问,远程命令内网有效果,就是外网不行.经过分析排查,是不是 ...
- How to permit SSH root Login in Ubuntu 18.04
https://www.ubuntu18.com/ssh-permitrootlogin/ SSH root login is disabled by default in Ubuntu 18.04. ...
- SecureCRT通过SSH2协议远程登录Ubuntu 18.04的过程总结
reference: https://blog.csdn.net/ghostar03/article/details/47441715 https://blog.csdn.net/u011186256 ...
- [转帖]Ubuntu 18.04 server安装图形界面及realvnc远程桌面连接
Ubuntu 18.04 server安装图形界面及realvnc远程桌面连接 https://blog.csdn.net/networken/article/details/88938304 转帖 ...
- 在Ubuntu 18.04 下安装mysql,没有初始密码,重设root密码
在Ubuntu 18.04 下安装mysql 不知道是由于mysql更新为新版还是.Ubuntu18.04中的特性,安装过程中没有设置密码的环节,在网络上找了半天,总算解决了!特此记录下来,以便以后查 ...
- 如何在Ubuntu 18.04 LTS上安装和配置MongoDB
MongoDB是一款非关系型数据库,提供高性能,高可用性和自动扩展企业数据库. MongoDB是一个非关系型数据库,因此您不能使用SQL(结构化查询语言)插入和检索数据,也不会将数据存储在MySQL或 ...
- srs部署到ubuntu 18.04 server
srs.txt ubuntu 18.04 安装 srs 1. 上传srs_40.7z和h2ws.7z到linux服务器,然后远程ssh连接 (假设登陆用户名是bob,linux服务器ip是192.16 ...
随机推荐
- 队列读取器代理 遇到错误 Row handle is invalid
原文:队列读取器代理 遇到错误 Row handle is invalid 今天测试在发布中更改表名称,在发布数据库更改后重新发布这个表. 但是原来的表在订阅没有删除,不小心插入数据到原表中,队列读取 ...
- WPF显示html的几种方法
原文:WPF显示html的几种方法 客户希望系统在一些特定的条件下,界面上能显示用户自定义的格式和内容,格式和内容通过html指定. 基本上在wpf中显示html有以下四种方法. 1. W ...
- Delphi调用爷爷类的方法(重新构造TMethod的data和code部分,其中Code指向祖父类的方法)
Delphi通过inherited 可以调用父类的方法,但是没有提供直接调用父类的父类的方法(爷爷类),通过变通的方式实现如下: 假设父类是TFather,爷爷类TGrand,调用爷爷类的Write方 ...
- mysql三种修改密码的方式
[root@MySQL ~]# mysqladmin -uroot -proot -S /data/3307/mysql.sock password '123'; 其中-p是现在的密码,passwor ...
- UWP访问KnownFolders.RemovableDevices时(读取U盘文件)抛出异常UnauthorizedAccessException
读取U盘的文件时: StorageFile file = await folder.GetFileAsync("myfile.txt"); 抛出异常System.Unauthori ...
- 安卓环境下,通过QT调用jar包
在安卓上,许多第三方工具都提供jar包.qt可以通过jni来调用jar包.本文通过一个例子,说明安卓上QT调用jar的方式. 工具/原料 qt android jar包 jar包准备 1 ja ...
- IntelliJ IDEA的jsp中内置对象方法无法被解析的解决办法
主要原因是因为缺乏依赖 可以通过添加依赖的方式 导入servlet-api.jar,jsp-api.jar,tomcat-api.jar 这三个jar即可 这三个jar在tomcat的lib目录下有 ...
- Windows Phone 8加载外部动态链接库DLL(非安装包内的)
Windows Phone 8加载外部动态链接库DLL(非安装包内的) 在<动态加载与插件化>中大概介绍了下,wp8加载非安装包的下动态链接库,这次详细梳理下. 加载外部DLL主要的原理: ...
- "犯罪心理"解读Mybatis拦截器
原文链接:"犯罪心理"解读Mybatis拦截器 Mybatis拦截器执行过程解析 文章写过之后,我觉得 "Mybatis 拦截器案件"背后一定还隐藏着某种设计动 ...
- linux Apache设置https访问以及加载mod_ssl.so模块以及问题解决
开始之前的话: 1.配置好服务器防火墙的443端口规则: 2.购买好证书文件,我是沃通证书,准备好证书,这里不演示证书的购买和安装. 3.根据服务器类型下载文件,apache一共有4个文件 这里提供沃 ...