前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >通过非对称加密算法配置云主机免密登录

通过非对称加密算法配置云主机免密登录

原创
作者头像
Zhi Yan
修改2022-05-21 12:59:46
1.2K0
修改2022-05-21 12:59:46
举报
文章被收录于专栏:千里之行始于足下

本文会涉及如下内容: 对称加密和非对称加密的区别是什么? .ssh/known_hosts 文件中是什么信息,有什么作用? 如何在A主机和B主机配置单向ssh免密登录?

ssh登录报错Permission Denied都有哪几种原因?

背景

之前买的云服务器到期了,今天新买了2个,计划搭个k8s集群。

之前使用率很低,用的时候基本也是登录到云服务商网站,再进入云主机。今天想,干嘛不配置一个ssh免密登录,这样直接在本地电脑就可以直接登录云主机,多方便。

原理

对称加密与非对称加密

区别在于加密与解密用的是否为同一个密钥,同一个即“对称加密”,不是同一个即“非对称加密”。

本文所做的配置两台主机的单向免密登录,本质就是使用rsa加密算法生成公钥和私钥,通过将A主机的公钥复制到B主机,实现A主机在ssh远程登录B主机时免输密码。

操作过程

这个过程,涉及到了如下命令和文件:

命令

ssh-copy-id:将指定文件copy到远程主机的.ssh/authorized_keys文件中

ssh-keygen:生成公钥和私钥

文件

(用户根目录下)

.ssh/known_hosts:A主机首次ssh连接到B主机,会将B主机的公钥存放到该文件中,下次再ssh连接B主机时,会核对公钥,如果不同会报错。作用:提升安全性。如果公钥不同,OpenSSH会发出警告,避免受到DNS Hijack之类的攻击。相当于“输入密码后,又要根据姓名核对之前预留的身份信息”

.ssh/id_rsa:ssh-keygen命令生成的私钥

.ssh/id_isa.pub:ssh-keygen命令生成的公钥

具体操作步骤

1. 在A主机生成公钥和私钥

代码语言:javascript
复制
$ ssh-keygen
$ cd /home/<username>/.ssh/
$ ls
id_rsa		id_rsa.pub	known_hosts	known_hosts.old

2. 将上一步生成的公钥复制到B主机

代码语言:javascript
复制
$ ssh-copy-id -i id_rsa.pub root@B主机ip

## 登录到B主机,可以看到.ssh/authorized_keys 中有了A主机的公钥

3. A主机ssh登录到B主机成功。

代码语言:javascript
复制
$ ssh root@B主机

Permisision Denied 可能原因

原文来源:

https://docs.digitalocean.com/support/when-i-try-to-log-into-ssh-i-get-a-permission-denied-error./

密码不对

sshd_config文件中是否限制了密码登录、是否限制了root登录

代码语言:txt
复制
$ cat /etc/ssh/sshd_config 

### 如果为no则会ssh登录报错
### 修改后可以通过service sshd reload 使其生效
PermitRootLogin yes
PasswordAuthentication yes

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景
  • 原理
    • 对称加密与非对称加密
    • 操作过程
      • 命令
        • 文件
          • 具体操作步骤
            • Permisision Denied 可能原因
            相关产品与服务
            云服务器
            云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档