linux主机互信操作
一.主机互信原理
两个主机之间ssh登录需要提示输入对方的密码,当频繁需要登录操作时,可以通过linux公钥和秘钥,建立双机信任关系。
把你源主机的公钥文件内容追加到目的主机对应用户下的authorized_keys文件中(如果没有这个文件,则创建一个)
二.操作流程
两台主机分别是node1的ip是1192.168.37.8,node2的ip是192.168.37.9
1. 生成秘钥(两台主机分别操作)
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa #生成rsa
1) node1节点操作 - 生成密钥
[root@node1 ~]# ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa #node1节点生成密钥
Generating public/private rsa key pair.
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:1RzOG0HzkXAAZz6YdYMp6vgGev0zzv3zzM3VF5cKb30 root@node1
The key's randomart image is:
+---[RSA 2048]----+
| .o@==. |
| .%oB.o |
| .+.O . |
| .. + .|
| oS .. o.|
| o . o o +|
| . + + .E|
| . . +.o.. .+=|
| . . o+o...o*|
+----[SHA256]-----+
[root@node1 ~]#
2) node2节点操作 -生成密钥
[root@node2 ~]# ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa #node2节点生成密钥
Generating public/private rsa key pair.
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:9mRYbTPIQ3pSYwdMO5/byswezu7uicSAF9AJAxPisqU root@node2
The key's randomart image is:
+---[RSA 2048]----+
| . +o+o +B.. |
| . . . oo*.* |
|. o + O = |
| = . * = + |
|E . S o o |
| o * o |
| + o . |
| . B + |
| .*# |
+----[SHA256]-----+
[root@node2 ~]#
2.信任主机操作(两台主机分别操作)
ssh-copy-id -i ~/.ssh/id_rsa.pub root@对方ip
1) node1节点设置互信
[root@node1 ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.37.9 #复制37的公钥到38机器上,这样就可以使用在37机器上免密码登录38机器了。
/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@192.168.37.9's password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'root@192.168.37.9'"
and check to make sure that only the key(s) you wanted were added. [root@node1 ~]#
2) node2节点设置互信
[root@node2 ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.37.8 #复制node2的公钥到node1机器上,这样就可以使用在node2机器上免密码登录node1机器了
/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@192.168.37.8's password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'root@192.168.37.8'"
and check to make sure that only the key(s) you wanted were added. [root@node2 ~]#
3.测试ssh机器免密
1) node1节点访问node2
[root@node1 ~]#
[root@node1 ~]# ssh 192.168.37.9
Last login: Wed Oct 13 22:13:07 2021 from 192.168.37.8
[root@node2 ~]#
node2节点访问node1
[root@node2 ~]# ssh 192.168.37.8
Last login: Mon Sep 20 18:30:35 2021 from 192.168.37.9
[root@node1 ~]#
linux主机互信操作的更多相关文章
- python的paramiko模块-远程登录linux主机并操作
paramiko是一个用于做远程控制的模块,使用该模块可以对远程服务器进行命令或文件操作. 如果python服务器对被远程控制机器开启了免密验证,即在python服务器上可通过ssh 用户名@被控制机 ...
- 使用SSH客户端远程登录Linux主机
使用SSH客户端远程登录Linux主机(可替代samba.ftp服务) . Linux系统起初就是为多用户而产生的,可以允许多个用户同时登录linux主机各自进行操作,如图1所示: 图1 SSH(Se ...
- 远程操作Linux主机
通过putty文件访问: 下载路径:https://the.earth.li/~sgtatham/putty/0.70/w32/putty-0.70-installer.msi 通过Python文件执 ...
- Linux主机上使用交叉编译移植u-boot到树莓派
0环境 Linux主机OS:Ubuntu14.04 64位,运行在wmware workstation 10虚拟机 树莓派版本:raspberry pi 2 B型. 树莓派OS: Debian Jes ...
- Linux简单指令操作
Linux CentOS运维中,常用的操作和命令记录下: 1.DNS设置 在Linux服务器上,当我们ping出现这个错误时:ping: unknown host,很大可能是系统的DNS没有设置或者设 ...
- Linux主机上实现树莓派的交叉编译及文件传输,远程登陆
0.环境 Linux主机OS:Ubuntu14.04 64位,运行在wmware workstation 10虚拟机 树莓派版本:raspberry pi 2 B型. 树莓派OS:官网下的的raspb ...
- Linux主机共享目录给Windows主机的方法
Linux主机共享目录可以通过samba来实现 首先,来看下百科上关于samba的介绍: Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Ser ...
- 远程联机linux主机
远程联机linux主机 推荐使用 ssh 如 ssh user@www.abc.com(ssh使用公钥+私钥非对称加密,数据传输安全,不要使用telnet) 传输文件:sftp 或者 scp 若想使 ...
- 如何修改Linux主机名
Linux 下什么都比较麻烦,就连修改主机名也不例外.我们就下文说一下具体方法. Linux 安装好后,其默认的主机名是 localhost.修改 Linux 主机名需要3步. 使用 hostname ...
随机推荐
- freeswitch新增模块
概述 freeswitch的架构由稳定的核心模块和大量的外围插件式模块组成.核心模块保持稳定,外围模块可以动态的加载/卸载,非常灵活方便. 外围模块通过核心提供的 Public API与核心进行通信, ...
- CentOS_Server with GUI入门
安装模式: Server with GUI:基本的桌面系统,包括常用的桌面软件,如文档查看工具 Minimal:基本的系统,不含有任何可选的软件包 Basic Server :安装的基本系统的平台支持 ...
- ES6扩展——数值扩展
1.0o代表八进制 0b代表二进制 ,通过Number()可转为10进制: //0o 0O octanary八进制 //0b 0B binary二进制 console.log(0o16); //14 ...
- JavaScript 特殊字符
代码输出\'单引号\"双引号\&和号\\反斜杠\n换行符\r回车符\t制表符\b退格符\f换页符
- 基于Linux系统的网络服务——高速缓存DNS及企业级域名解析服务
1.DNS域名系统 DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数 ...
- Element NavMenu动态生成导航菜单
为了演示方便,不从数据库获取了 { "data":[ { "id":125, " ...
- BeanFactory和ApplicationContext对比
一.BeanFactory和ApplicationContext对比 其中,ApplicationContext容器即时加载,就是一加载配置文件,就会创建对象,且自动装配bean(即写道xml中bea ...
- wrap()包裹被选元素的内容
<!doctype html><html><head><meta charset="utf-8"><title>修改代码 ...
- 2.设计模式常用的UML图分析(用例图、类图与时序图)
1-用例图 概述 展现了一组用例.参与者以及他们之间的关系. 用例图从用户角度描述系统的静态使用情况,用于建立需求模型. 用例特征 保证用例能够正确捕捉功能性需求,判断用例是否准确的依据. 用例是动宾 ...
- 第一节:《线程安全和锁Synchronized概念》
第一节:线程安全和锁Synchronized概念 一.进程与线程的概念 (1)在传统的操作系统中,程序并不能独立运行,作为资源分配和独立运行的基本单位都是进程. 在未配置 OS 的系统中,程序的执行方 ...