ssh免密登录服务器

一、免密登录原理

免密登录原理通过RSA公开密钥算法的一种应用。RSA是公开密钥密码体制的一种使用不同的加密密钥与解密密钥,"由已知加密密钥推导出解密密钥在计算上是不可行的"密码体制(非对称加密) 。在公开密钥密码体制中,加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥)SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然解密密钥SK是由公开密钥PK决定的。

通俗的来说就是同时生成公钥和私钥,私钥自己保存,公钥发给其他人。

二、配置ssh

1.生成密钥

进入~目录下,生成一对密钥,使用rsa通用密钥算法,这时需要有三次回车;

复制代码
ssh-keygen -t rsa
2.生成后文件介绍

这时出现几个文件,id_rsa.pub(publilc)公钥,id_rsa私钥,known_hosts是上几步输入ssh 192.168.41.102 产生的文件;

|-----------------|----------------------------|
| known_hosts | 记录ssh访问过计算机的公钥(public key) |
| id_rsa | 生成的私钥 |
| id_rsa.pub | 生成的公钥 |
| authorized_keys | 存放授权过的无密登录服务器公钥(后面会提到) |

3.将公钥复制到远程服务器

复制代码
ssh-copy-id -i ~/.ssh/id_rsa.pub user@localhost

其中user是用户名,localhost是目标服务器ip

4.ssh 效果展示

命令 ssh 连接其他机器,发现不需要密码

如果此时不行,则还需要在服务器电脑上执行指令

复制代码
chmod 600 ~/.ssh/authorized_keys 

再测试即可

相关推荐
DigitalOcean4 分钟前
面向 AI 工作负载,单核性能提升 30%:DigitalOcean v5 Droplets 云服务器正式上线
服务器
2401_8685347814 分钟前
运维工程师大厂 Nginx 面试题(二)
linux·网络协议
M78佐菲33 分钟前
Linux学习笔记:文件IO
linux·笔记·学习·算法
谢亮_vipxieliang38 分钟前
手机号验证技术方案:号段规则与正则表达式
java·服务器·spring boot·正则表达式·hibernate
Vcaker1 小时前
Linux学习22-openstack部署与使用
linux·运维·学习
智购科技自动贩卖机1 小时前
自动售货机嵌入式系统Go语言开发实践:从资源受限设备到RTOS协程调度的工程化之路
大数据·linux·数据库·人工智能·yolo·架构·golang
姓刘的哦1 小时前
STM32的启动流分析
linux·运维·arm开发
Fcy6482 小时前
Linux下 Socket编程 —— UDP网络编程
linux·网络·udp
guo_wen_qiang2 小时前
mac中iTerm有没有类似xshell远程连接服务器的用户名密码方式,不用每次都要输入用户密码
运维·服务器·macos
lajidecrd2 小时前
Ubuntu 24.04 LTS安装
linux·运维·ubuntu