本文主要记录linux免密登录的原理

前提

有两台机器A和B

A需要免密登录机器B(反之则按照下面步骤从B操作到A)

实现原理

在机器A上生成一对公私钥

A将公钥拷贝给B,在B中重命名为authorized_keys(放在当前用户目录下的.ssh目录下)

A向B发送一个登录链接请求

B得到A的登录请求信息后,在authorized_keys中查找,如果有相应的用户名和IP,则随机生成一个字符串string_text,并且使用A的公钥加密,随后发送给A

A接收到B发送过来的消息后,使用自己的私钥解密,然后将解密后的字符串发送给B

B接收到A解密后的字符串,检查是否与string_text一致,如果一致则允许免密登录

操作步骤

在A机器上生成一对公私钥

dandeliondeMacBook-Pro:~ dandelion$ ssh-keygen -t rsa

Generating public/private rsa key pair.

Enter file in which to save the key (/Users/dandelion/.ssh/id_rsa):

Created directory '/Users/dandelion/.ssh'.

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /Users/dandelion/.ssh/id_rsa.

Your public key has been saved in /Users/dandelion/.ssh/id_rsa.pub.

The key fingerprint is:

SHA256:WOCu7RVGa82QBXWxg44lj6ERZZmjHM9yqcG1klCFCDU dandelion@dandeliondeMacBook-Pro.local

The key's randomart image is:

+---[RSA 2048]----+

| .oEo++==o o. |

| ooo+=o o . |

| +oBB+o o |

| .O**& . |

| +*S = |

| o.o . |

| . . . |

| . . |

| . |

+----[SHA256]-----+

dandeliondeMacBook-Pro:~ dandelion$

dandeliondeMacBook-Pro:.ssh dandelion$ pwd

/Users/dandelion/.ssh

dandeliondeMacBook-Pro:.ssh dandelion$ ls

id_rsa id_rsa.pub

dandeliondeMacBook-Pro:.ssh dandelion$

将公钥拷贝到B机器

方式一:

dandeliondeMacBook-Pro:.ssh dandelion$ ssh-copy-id -i id_rsa.pub root@192.168.3.163

/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "id_rsa.pub"

/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed

/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys

root@192.168.3.163's password:

Number of key(s) added: 1

Now try logging into the machine, with: "ssh 'root@192.168.3.163'"

and check to make sure that only the key(s) you wanted were added.

dandeliondeMacBook-Pro:.ssh dandelion$

方式二:

1.拷贝A机器的公钥id_rsa.pub到B机器: scp id_rsa.pub root@192.168.3.163:/home

2.将A的公钥加到B的授权列表 .ssh/authorized_keys 若不存在,手动创建: cat /home/id_rsa.pub >> ../.ssh/authorized_keys

3..ssh目录的权限必须是700 ,chmod 700 .ssh

4.授权列表authorized_keys的权限必须是600,chmod 600 authorized_keys

免密登录成功

dandeliondeMacBook-Pro:.ssh dandelion$ ssh root@192.168.3.163

Last login: Sat Mar 21 20:37:52 2020 from 192.168.3.26

[root@localhost ~]#

参考网站

linux免密原理,Linux免密登录的原理相关推荐

  1. mac、Linux SSH 阿里云 vultr免密登录服务器

    mac.Linux SSH 阿里云 vultr免密登录服务器 当你拥有了自己云服务器的时候,一定为了每次登录服务器输入密码特别痛苦. 那么福利来了,简单配置一下,免密登录你的服务器,希望能帮到大家 注 ...

  2. 关于Linux中批量配置SSH免密的一些笔记

    写在前面 今天和小伙伴们分享批量配置SSH免密的一些笔记 传统的运维场景可以通过Ansible 等运维工具处理 在安装使用一些运维工具,比如Ansible,或则一些pass组件,需要配置ssh免密,s ...

  3. Windows免密访问linux服务器

    文章目录 1. SSH免密登录 1. Windows上操作 SSH安装 生成公私钥 公钥拷贝到linux服务器 2. Linux上操作(root用户为例) 1. 添加公钥 2. 修改ssh配置 3. ...

  4. xshell 免密连接Linux

    1.在xshell生成公私钥 输入Linux登录密码 2.复制公钥到Linux中 3.在Linux中 /root/.ssh/ 目录下建立authorized_keys文件(要用哪个用户免密登录就在该用 ...

  5. linux系统密码正则,Linux密钥登录原理和ssh使用密钥实现免密码登陆

    目录 1.公私钥简介与原理 公钥和私钥都属于非对称加密算法的一个实现,这个加密算法的信息交换过程是: 1) 持有公钥的一方(甲)在收到持有私钥的一方(乙)的请求时,甲会在自己的公钥列表中查找是否有乙的 ...

  6. linux两台机器间实现无密远程登录(使用证书)

    思路分析: 比如有两台主机,192.168.0.69,192.168.0.70.其中192.68.0.69上安装有ansible,为了使用ansible进行自动化运维,我们需要实现192.168.0. ...

  7. Linux相关配置 集群免密码登录配置

    Linux相关配置 集群免密码登录配置 实验目的要求: 1.完成VMware Workstation安装,会应用相关操作 2.掌握虚拟机中Linux CentOS 7.4操作系统安装 3.完成静态网络 ...

  8. 免秘登陆linux_linux 免密登陆(超简单)

    一.客户端生产公钥 在windwos上 生成公钥私钥前,先下载git哦 ssh-keygen -t rsa # 记住下方方框内公钥保存地址, 二.查看自己用户的登录地址 cat /etc/passwd ...

  9. Kail Linux渗透测试教程之免杀Payload生成工具Veil

    Kail Linux渗透测试教程之免杀Payload生成工具Veil 免杀Payload生成工具--Veil Kail Linux渗透测试教程之免杀Payload生成工具Veil,Veil是一款利用M ...

最新文章

  1. python os.system执行shell 命令
  2. 蓝牙BLE LINK LAYER剖析(二) -- PDU
  3. (61)分析 KiFindReadyThread 函数 —— 线程优先级
  4. 访问DBGRIDEH中的行与列
  5. Jenkins 中如何一次构建多个项目
  6. azdb文件怎么打开_AZDBExplorerSvcs.dll
  7. SwarmKit知多少——来自源码世界的深入解读
  8. BGP 默认路由和OSPF默认路由的异同
  9. easyui蛋疼之二 tabs与accordion
  10. java猜单词游戏_9 java基础综合编程练习---猜单词游戏
  11. 程序员必知:平凡而又神奇的贝叶斯方法
  12. 西数硬盘刷新固件_机械硬盘选购:SMR避坑指南
  13. 如何成为一名推荐系统工程师
  14. 《python股票量化交易从入门到实践》摘要
  15. 802.1x 命令说明以及配置方法
  16. quartz表删除顺序
  17. 杨元庆:税收影响联想电脑国内售价
  18. 《异常检测——从经典算法到深度学习》5 Opprentice——异常检测经典算法最终篇
  19. 正反馈、负反馈傻傻分不清?看这篇电路深度讲解
  20. 前端基础-04-盒子模型

热门文章

  1. u0027代表JAVA_java中最容易犯错的特殊字符
  2. windows服务安装启动报错误1053:服务没有及时响应启动或控制请求
  3. 在页头区域添加logo图像HTML,如何在表格中嵌入企业logo图片?分享两种方法
  4. mu3u8系列(一)练手spider
  5. python|求连续奇偶数的倒数和
  6. 一次JAVA频繁写大文件的记录
  7. 中国第二大传感器企业宝座易主!14家公司新上市!国产传感器风起云涌!(附最新市值排名榜单)
  8. jecat php toolbox,利用JeCat PHP Toolbox 做网站留言板
  9. Java多线程读写锁ReentrantReadWriteLock原理详解
  10. layui打印自定义表格功能