验证两台机器已经建立的ssh互信

1.expect方法

#!/bin/bash

checkTrust()
{
        expect -c ‘
        set timeout 2;
        spawn ssh $1 "expr 12345678 + 87654321"
        expect {
                "*yes/no*" {send \003;}
                "*assword*" {send \003;}
                -re "#|$|>" {send exit\r;}
        }
        expect eof;‘
}

result=`checkTrust $1 | grep "99999999"`

echo result=$result
#./checkTrust.sh 192.168.0.10
result=99999999

#./checkTrust.sh 11.11.11.11
result=

2.ssh 返回值

ssh 192.168.0.100 -o PreferredAuthentications=publickey -o StrictHostKeyChecking=no "echo a" > /dev/null 2>&1
if [ $? -ne 0 ]; then
    echo "Trust not exist."
fi
时间: 2025-01-03 17:28:08

验证两台机器已经建立的ssh互信的相关文章

Linux CentOS7 两台机器之间免输入密码相互登录(密钥对认证)

Linux CentOS7 两台机器之间免输入密码相互登录(密钥对认证) 两台机器为: 主机名:fxq-1,IP:192.168.42.181 主机名:fxq-2, IP:192.168.42.182 w命令可以查看当前登录用户的信息 [[email protected] ~]# w  23:59:42 up 12 min,  1 user,  load average: 0.00, 0.07, 0.11USER     TTY      FROM             [email prot

两台机器之间移动数据库的最简单

在两台机器之间移动数据库的最简单(尽管不是最快)的方法是在数据库所在的机器上运行下面的命令: shell> mysqladmin -h 'other_hostname' create db_name shell> mysqldump --opt db_name | mysql -h 'other_hostname' db_name 如果你想要从远程机器通过慢速网络复制数据库,可以使用: shell> mysqladmin create db_name shell> mysqldum

ROS中两台机器时钟同步

两台机器同时运行过程中,对于ROS的tf变换,其要求两台机器的时钟要保持一致. 1.查询时间 首先通过以下命令,看两台机器时钟是否有差异.在本机上,查看远程master的机器时间: ntpdate -q other_computer_ip 例如 ntpdate -q 192.168.0.23 或者在终端直接输入date命令可以查询本机的时间: date 2.安装chrony 执行如下命令: sudo apt-get install chrony 3.配置 然后编辑配置文件: sudo gedit

两台机器之间调试c#程序

环境:有两台机器A和B(A和B在同一个局域网),其中A台机器上有程序,现在需要在机器B上访问A上从程序并在A上调试. 1.将本地程序部署到IIS上,注意:目录需要为当前程序的目录:假设提供的接口为: http://192.168.1.1/read/test 其中read为虚拟目录. 2.右击程序-属性-Web,在"服务器"下面选择"外部主机",项目url设置为IIS可访问的目录,设置到虚拟目录即可,如下图: 3.在本机程序中设置断点,并调试. 4.局域网内的服务器访

Linux下 两台机器文件/文件夹 相互拷贝

设有两台机器 :A:*.101及 B:*.102. 把A下的.temp/var/a.txt拷贝到B机器的/text/目录下: 进入B机器:scp [email protected]*.101:/temp/var/a.txt /test/ 或 进入A机器:scp /temp/var/a.txt [email protected]*.102:/test/ 把A下的文件夹(含子文件夹)/temp/var/拷贝到B机器/test/目录下: 进入B机器:scp -r [email protected]*.

ssh两台机器建立信任关系无密码登陆

在建立信任关系之前先看看基于公钥.私钥的加密和认证. 私钥签名过程 消息-->[私钥]-->签名-->[公钥]-->认证 私钥数字签名,公钥验证 Alice生成公钥和私钥,并将公钥发送给Bob. Alice用自己的私钥生成签名,也就是加密. Alice将签名的信息发送给Bob. Bob用Alice的公钥进行解密,验证签名真伪. 公钥加密过程 消息-->[公钥]-->签名后的消息-->私钥-->解密后的消息 公钥加密,私钥解密 Bob生成自己的公钥和私钥,并将

linux 2台机器之间建立ssh互信

环境说明192.168.157.101 vms001 RHEL7.1192.168.157.102 vms002 RHEL7.1 vms001服务器操作1.vms001生成公钥私钥命令执行成功,会在~/.ssh目录下生成2个文件id_rsa.pub为公钥文件,现实生活中相当于锁id_rsa 为私钥文件,现实生活中相当于钥匙 2.借用ssh-copy-id工具把公钥上传到vms002服务器,实现无密码登录 [[email protected] ~]# ssh-copy-id -i /root/.s

两台机器做互相信任 scp不使用密码

机器A和机器B之间做一个公钥的信任,这样就可以在下次做scp的时候不需要进行密码验证 可以更好的实现自动化 讲一下原理: 假如服务器A上的一个pub(公钥)放到了互联网的任意一台机器B上了,那么服务器A此时若往服务器B上传数据或服务器A主动的想在服务器B上往自身cp数据都是需要进行验证的. 操作步骤:使用用户为root [[email protected] ~]#  ssh-keygen -b 1024 -t rsa  Generating public/private rsa key pair

Linux两台主机之间建立信任

背景: 有时候我们在两个主机之间复制文件的时候,提示输入密码,很不方便,那如何免密码复制呢?,就是使用通过linux公钥和秘钥,建立双机信任关系. 1. 生成秘钥,并添加信任 我的环境中node1的ip是192.168.168.201,node2的ip是192.168.168.202. [[email protected] ~]# ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa #生成rsa [[email protected] ~]# ssh-copy-id