1 前提条件

  • 主机A,用户名为aris,IP地址为192.168.1.1
  • 主机B,用户名为leon,IP地址为192.168.1.2
  • 这两台主机上均安装了SSH服务器,且已经打开ssh服务;
  1. 检查主机上有没有安装SSH服务,使用命令:ssh
  • 若提示命令未找到,则需要安装ssh服务;步骤如下:输入sudo apt-get update命令以实现更新Ubuntu系统–>输入sudo apt-get install openssh-server命令以安装ssh
  • 若输出ssh命令的使用说明,则代表已经安装了。
  1. 检查主机上有没有启动SSH服务,使用命令:service --status-all | grep ssh
  • 若服务已经启动的话,可以看到[+] ssh
  • 若服务还没启动的话,可以看到[-] ssh
  1. 启动ssh服务,使用命令sudo service sshd start

2 主机A利用ssh免密登录主机B

(1)在主机A上生成rsa密钥对

在命令行下输入命令:ssh-keygen -t rsa,所有提示均按回车默认。

之后你会发现在用户的家目录下回自动生成一个隐藏的文件夹“.ssh”,里面会有两个文件,分别是id_rsa和id_rsa.pub。

  • id_rsa是本机的私钥,在使用ssh协议向其它主机传输数据前,主机会使用该私钥对数据进行加密;
  • id_rsa.pub是本机的公钥,因为ssh协议采用非对称加密法(公钥可以用来解密使用私钥进行加密的数据,同样,私钥也可以用来解密公钥进行加密的数据),所以主机一般将该公钥放到其它需要远程登录到的主机的ssh服务器中;

(2)将主机A上生成的公钥传到主机B中

有两种方法:

一是使用命令:
  • 在主机A的命令行上执行ssh-copy-id leon@192.168.1.2 ,就可以将主机A上生成的公钥传到主机B中。
二是手动操作:
  • 首先在主机A上执行命令 scp .ssh/id_rsa.pub leon@192.168.1.2:~/home,命令执行成功后会将主机A的公钥传到主机B的家目录里。
  • 切换到主机B,命令行执行cat ~/home/id_rsa.pub >> ~/.ssh/authorized_keys,将主机A的公钥添加到主机B的授权列表中。

(3) 主机A上重启ssh服务

完成以上2步之后,在主机A上重启ssh服务后即可免密码登录主机B了

  • 在主机A上执行命令sudo service ssh restart
  • 再执行ssh leon@192.168.1.2,你会发现已经免密登录了。
  • 说明:图中输入的命令是ssh leon@ubuntu,为何不是IP地址呢?
    这是因为我们在/etc/hosts文件中指定了ubuntu的ip地址为192.168.1.2

3 主机B利用ssh免密登录主机A

  • 道理是一样一样的,只需要将主机B的公钥添加到主机A的授权列表中即可达到免密登录的目的。在此,就不再演示了。

4 彩蛋——配置别名,一键登录

  • 有些“懒人”可能会说,每次使用ssh命令登录的时候,都要输入远程主机的用户名、IP地址,挺麻烦的。有没有好的办法,能输一个简单的命令就好了呢?
  • 答案,是肯定的!因为科技就是懒人创造的。

想要达到的目的:主机A下键入“ssh mac”就可以免密登录到主机B

(1)主机A命令行下打开config文件
  • 执行命令vim ~/.ssh/config,创建或打开ssh配置文件
(2)在config文件中添加如下内容:
Host macHostName 192.168.1.2User leonPort 22
(3)保存内容后退出

现在,你就可以愉快的登录了。当然,此处的mac你可以根据自己的喜好,随意指定;User、HostName根据你需要连接的远程端主机确定。


获取更多知识,请点击关注:

嵌入式Linux&ARM
CSDN博客
简书博客
知乎专栏


主机之间ssh免密码登录相关推荐

  1. 当主机使用ssh免密码登录时,出现Warning:Permanently added(RSA)to the list of known hosts警告

    问题描述:当主机使用ssh免密码登录时,出现Warning:Permanently added(RSA)to the list of known hosts警告 解决办法:vim /etc/ssh/s ...

  2. 关于设置不同linux主机之间ssh免密登录简易方法

    2019独角兽企业重金招聘Python工程师标准>>> 在linux日常中,经常会有ssh链接其他主机服务器的action,也学习过大家日常用配置ssh免密登录的方法. 小编今天在这 ...

  3. Linux之间ssh免密码登录

    为什么80%的码农都做不了架构师?>>>    一.生成公私钥对 $ ssh-keygen -t rsa -P '' Generating public/private rsa ke ...

  4. 生产环境实战spark (5)分布式集群 5台设备之间hosts文件配置 ssh免密码登录

    生产环境实战spark (5)分布式集群 5台设备之间 ssh免密码登录 之前已经在master节点单台设备上配置ssh免密码的登录工作,现在要做的事情是在5台设备之间实现ssh免密码操作.我在整个大 ...

  5. hadoop设置ssh免密码登录

    对于需要远程管理其它机器,一般使用远程桌面或者telnet.linux一般只能是telnet.但是telnet的缺点是通信不加密,存在不安全因素,只适合内网访问.为 解决这个问题,推出了通信加密通信协 ...

  6. Linux设置ssh免密码登录

    一.SSH来源 对于需要远程管理其它机器,一般使用远程桌面或者telnet.linux一般只能是telnet.但是telnet的缺点是通信不加密,存在不安全因素,只适合内网访问. 为解决这个问题,推出 ...

  7. linux节点ssh免密码登录linux节点

    需求 节点A要ssh免密码登录节点B. 1.产生密钥 节点A和B都要产生秘钥,并且要注意是否在root用户下,登录对象是用户,而不是机器,所以产生密钥前先从root或者其他用户切换到你说需要的用户.然 ...

  8. Linux配置SSH免密码登录(非root账号)

    Linux环境下,经常通过SSH从一台服务器登录到另一台服务器,并且登录身份不是root账号,每次都要输入密码挺麻烦的,所以今天就来实战如何配置非root账号的免密码登录: 实战环境 本次实战环境是三 ...

  9. Linux主机之间配置免密登录

    需求:linux主机上配置免密登录其他服务器 系统环境:centos7 主机A:192.168.149.150 主机B:192.168.149.153 示例:在主机A上配置免密登录主机B 1.主机A上 ...

最新文章

  1. 【采用】信贷业务风控逾期指标及风控模型评估指标
  2. windows 常用快捷键
  3. 使用SAP云平台Mobile Service开发移动应用
  4. 分清函数指针和指针函数
  5. 缓存热点问题解决方案
  6. ipad iphone开发_如何在iPhone或iPad上强制退出应用程序
  7. Pcshare远控源码偏重分析(一)
  8. 惠普136w墨粉量低_打印机墨粉量低怎么处理_打印机显示墨粉量低解决方法
  9. 企业网站建设教程:自己怎么建网站,做网站的步骤有哪些
  10. dto转化 vo_微服务篇-DTO、VO快速转换解决方案
  11. 首页被绑定为www.7939.com的手工解除方法
  12. Anbox源码分析(三)——Anbox渲染原理(源码分析)
  13. 22长安杯——个人赛
  14. 经典的开源免费网络游戏:planeshift
  15. 4G+5G多卡聚合智能融合通信
  16. 戴尔 服务器重装后蓝屏,dell inspiron 5490重新安装win10 1903专业工作站版系统后开机频繁蓝屏...
  17. 商务投标的“内卷化”行为,竟无言反驳
  18. 亚马逊16条领导力原则
  19. windows桌面便笺使用小技巧
  20. 图片放大不失真软件PhotoZoom如何使用?

热门文章

  1. 人生就像一张茶几,摆满了各种杯具洗具餐具
  2. 为什么会感觉到头晕眼花
  3. 2023年端午节高速免费吗?假期待办事项用手机定时提醒
  4. sudo apt-get 全部命令
  5. 冬季进补,根据体质吃药膳
  6. unity3d Human skin real time rendering 真实模拟人皮实时渲染
  7. 扩展屏幕的内容显示不完整,任务栏不显示,可能是因为两个屏幕的“缩放布局”不一样
  8. 2016经典搞笑语录:老师我错了,您当场把它砸了吧。
  9. 弘辽科技:网店装修的基本步骤,要留意什么?
  10. Spring事务是怎么实现的?