实验:实现openssh key验证

实验前准备:
   两台已经安装了openssh的Centos,主机A的IP地址为172.22.52.16,主机B的IP地址为172.22.52.17。

步骤一:首先在A机器生成密钥对,命令:ssh-keygen,生成的秘钥默认会保存在家目录的.ssh/下id_rsa和id_rsa.pub),设置密钥对密码,这里不设置了全部回车跳过

[19:16:09root@localhost data]#ssh-keygen
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:esARTVf53owszvSNjetiqWF4qcrzSMISX/TB+J0gsAg root@localhost.localdomain
The key's randomart image is:
[19:16:58root@localhost data]#ls -a ~/.ssh
.  ..  id_rsa  id_rsa.pub

步骤二:将客户端的公钥(id_rsa.pub)拷贝到服务端(B主机)上root的家目录(因为我要登录的是root用户)并命名为authorized_keys,方法有好几种,我就使用最方便的一个:ssh-copy-id,这个命令会自己在相应的目录生成authorized_keys文件,当然也可以用scp等等拷贝过去。

[19:56:12root@localhost ~]#ssh-copy-id -i id\_rsa.pub root@172.22.52.17
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/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@172.22.52.17's password:  #输入主机B登录密码以完成公钥拷贝Number of key(s) added: 1Now try logging into the machine, with:   "ssh 'root@172.22.52.17'"
and check to make sure that only the key(s) you wanted were added.

步骤三:当客户端再次发送一个连接请求,包括ip、用户名;服务端得到客户端的请求后,会到authorized_keys中查找,如果有响应的IP和用户,就会随机生成一个字符串,服务端将使用客户端拷贝过来的公钥进行加密,然后发送给客户端,得到服务端发来的消息后,客户端会使用私钥进行解密,然后将解密后的字符串发送给服务端,服务端接受到客户端发来的字符串后,跟之前的字符串进行对比,如果一致,就允许免密码登录了

[19:57:02root@localhost ~]#ssh root@172.22.52.17
Last login: Tue Apr 16 13:03:58 2019 from 172.22.52.16
[18:04:36root@m9l ~]#exit
logout
Connection to 172.22.52.17 closed.

Ps:第二步如果出现下面这个错误是因为id_rsa.pub命令只在当前工作目录寻找公钥文件,进入.ssh/目录或指定公钥绝对路径即可解决

[19:54:29root@localhost ~]#ssh-copy-id -i id_rsa.pub root@172.22.52.17/usr/bin/ssh-copy-id: ERROR: failed to open ID file 'id_rsa.pub': No such file or directory

转载于:https://www.cnblogs.com/m9ll/articles/10747973.html

openssh实现key验证免密码登录相关推荐

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

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

  2. 越狱iPhone手机使用openSSH wifi和usb连接mac电脑再免密码登录再用shell脚本执行教程

    目录 wifi连接手机 登录手机root用户 默认密码 修改openSSH的默认密码 exit 退出root 进入根目录查看文件 usb连接手机 下载usbmuxd 查看ssh默认端口是否是22 使用 ...

  3. SSH代理基于Key免密码登录

    SSH 为 Secure Shell 的缩写,SSH 为建立在应用层基础上的安全协议,SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议, 利用 SSH 协议可以有效防止远程管理过程中 ...

  4. Xshell配置ssh免密码登录-密钥公钥(Public key)与私钥(Private Key)登录

    ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式.其中口令(密码)认证方式是我们最常用的一种,这里介绍密钥认证方式登录到linux/unix的方法. 使用密钥登录分为3步: 1.生成密钥 ...

  5. windows登录linux免密码,Windows使用SSH Secure Shell实现免密码登录Linux的方法以及使用scp2命令免密码下载文件...

    1.   环境信息 SSH Secure Shell Client所在的操作系统: Windows7 Linux服务器以及SSH的版本: [hadoop@gpmaster ~]$ cat /etc/r ...

  6. Windows使用SSH Secure Shell实现免密码登录Linux的方法以及使用scp2命令免密码下载文件

    1.   环境信息 SSH Secure Shell Client所在的操作系统: Windows7 Linux服务器以及SSH的版本: [hadoop@gpmaster ~]$ cat /etc/r ...

  7. 使用ssh公钥实现免密码登录

    使用ssh公钥实现免密码登录     ssh 无密码登录要使用公钥与私钥.Linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS为例. 有机器A(192.168.1.155), ...

  8. CentOS6.9下ssh密钥登录配置步骤(免密码登录)和ssh-keygen 命令常用参数

    密钥登录步骤(免密码登录) ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式.其中口令(密码)认证方式是我们最常用的一种,出于安全方面的考虑,介绍密钥认证方式登录到linux/unix的 ...

  9. Hadoop集群搭建过程中ssh免密码登录(二)

    一.为什么设置ssh免密码登录 在集群中,Hadoop控制脚本依赖SSH来执行针对整个集群的操作.例如,某个脚本能够终止并重启集群中的所有守护进程.所以,需要安装SSH,但是,SSH远程登陆的时候,需 ...

最新文章

  1. legend3---laravel中获取控制器名称和方法名称
  2. QML基础类型之var
  3. md5会重复吗_自媒体平台视频重复审查机制,如何避免自己做的视频和别人的重复...
  4. python杨辉三角函数公式大全_python-1-杨辉三角算法总结
  5. pyqt控件显示重叠_Python编程:一个不错的基于PyQt的Led控件显示库,建议收藏学习...
  6. fastapi 模式的额外信息,示例 / Cookie参数 / Header参数
  7. foobar插件_如何为 caddy 添写自定义插件
  8. Android在string.xml中定义html文档并加载显示,以及拦截WebView链接事件
  9. 数组元素的查找,添加,修改,删除
  10. 2018-2019-2 20175228实验二《面向对象程序设计》实验报告
  11. 计数器verilog代码(quartus II)
  12. 另一种活法之——不要总把自己当千里马
  13. 文件同步工具 GoodSync Enterprise 破解
  14. androd欢迎页播放视频和广告页面
  15. 35岁学python爬虫_学习python12小时后,告诉想学爬虫的你,别怕,爬虫,没那么难抓...
  16. 『HTML5实现人工智能』小游戏《井字棋》发布,据说IQ上200才能赢【算法代码讲解+资源打包下载】...
  17. iptables --algo 字符串匹配算法 bm kmp
  18. 《Python绝技:运用Python成为顶级黑客》的学习笔记
  19. 低功耗微波雷达模组的应用你都知道多少?
  20. 如何从实验室菜鸟如何蜕变成实验巨人?

热门文章

  1. Nginx多域名多Server反向代理配置
  2. [wp7游戏]wp7~~飞行射击精品游戏~~集合贴
  3. leetcode 518. 零钱兑换 II
  4. Lintcode 569解题思路及c++代码
  5. 教育部拟规定:中小学不得公开学生个人的考试成绩名次
  6. “妈妈打工,爸爸是盲人”小学生记错开学时间独自上学,原因心酸
  7. 新鲜出炉!2019年高考语文作文试题来了
  8. 牛津书虫系列双语读物
  9. #ifdef _DEBUG
  10. pdo mysql 建库_一帖让PHP小白彻底了解PDO操作数据库的方法