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

本文介绍了一种使用expect工具进行SSH信任检查的方法,并通过一个脚本示例展示了如何验证远程主机的信任状态及SSH命令的返回值。此外,还提供了一个简单的示例来展示如何判断SSH连接是否成功。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

 

转载于:https://www.cnblogs.com/yuzhaoxin/p/4958129.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值