当前位置: 首页 > article >正文

[随便学学]在doker服务器中实现ssh免密登陆

前言:最近登陆服务器,发现每次都需要输密码。所以想看看有没有一劳永逸的办法,能够不输密码。免密登陆。

ssh(secure shell)是一种网络协议,用于在不安全的网络中建立安全的远程连接。ssh无密码登陆是通过公钥加密技术,实现在ssh连接中无需输入密码即可登陆远程服务器的方法。

加密技术

先讲讲什么是对称加密和非对称加密,我的理解是:
1.对称加密是对信息的上锁和解锁,是同一把钥匙。
2.非对称加密,则是两把不同的锁,分别叫公钥私钥。具体加解密的时候,可以是:
私钥上锁,信息传输过去,对方用对应的公钥解锁。一般用于这表明这个信息来自这个用户。
公钥上锁,信息传输过去,对方用对应的私钥解锁。

SSH无密登陆

1.制作密钥对
在终端执行ssh-keygen -t rsa。会生成私钥文件id_rsa和公钥文件id_rsa.pub(如果用dsa则生成id_dsa,id_dsa.pub)
2.将公钥放到服务器指定位置
由于是docker服务器,所以要写清楚端口。
ssh-copy-id -i id_ras.pub -p 5022 xxx@127.0.0.1,然后输入密码。
3.再次远程登陆就不需要密码了。

原理

我的理解是:
本地生成了私钥和公钥,这是一对。然后本地有私钥,服务器放了公钥(这时候我输入了密码,等于我是合法用户,服务器建立了我是合法用户,并且我对应这个公钥的信息)。
信息在本地经过私钥加密发给服务器,服务器的对应公钥能解开。服务器就知道是我用对应私钥发起的信息,所以就给通过了。


http://www.kler.cn/a/280972.html

相关文章:

  • GAMES202——作业1 实时阴影(ShadowMap,PCF,PCSS)
  • 数据库mysql集群主从、高可用MGR、MHA技术详解
  • Windows 10/11 系统优化工具 Optimizer 16.7
  • 分片上传怎么优化,怎么让存在不同服务器上的分片进行快速合
  • 『 C++ 』线程库
  • Leetcode Hot 100刷题记录 -Day2(哈希表)
  • 数据结构(6.4_3)最短路径问题_Dijkstra算法
  • 有趣的非空判断函数 + ?? 介绍
  • Nginx负载均衡故障转移策略:确保后端服务器高可用性
  • 使用Python 访问Neo4J 数据库
  • 网站上线3个多月了,还没有被百度收录怎么办?
  • 旅游行业怎么利用C#接口发送短信
  • x264 编码器 AArch64汇编系列:运动补偿之MBtree相关汇编函数
  • 较难!第15届蓝桥杯青少组省赛Scratch中级组编程真题
  • 若依后端 MyBatis改为MyBatis-Plus
  • 从单体架构到微服务架构的演变,微服务带来的挑战是什么?
  • 实际项目中Gson的用法,解析对象嵌套list对象的问题
  • CUDA学习笔记一
  • 我如何解决 java.lang.ClassNotFoundException:javax.xml.bind.DatatypeConverter
  • 编写并发的脚本测试服务器的性能