#!/bin/bash
# Author : LJ
# Date : 2022/1/25
# Func : 批量查询一批机器是否可以免密登陆
if [ $# -lt 1 ]
then
echo -e "\033[1;31m 参数不足,请重新执行... \033[0m"
echo -e "\033[1;32m 此脚本传参使用方法:$0 第一个参数为待查询的ip列表文件名 \033[0m"
exit ;
fi
workdir=`pwd`
list_ip=`cd ${workdir};cat $1`
sum=`cat $1|sed '/^$/d'|wc -l`
num=1
for ip in ${list_ip[@]} ; do
sudo ssh -o PasswordAuthentication=no -o StrictHostKeyChecking=no -o ConnectTimeout=1 $ip "ls -l /|wc -l" >/dev/null 2>&1
if [ $? -eq 0 ];then
echo -e "\033[1;31m$num\033[1;32m/$sum $ip节点ssh免密登陆为: yes \033[0m"
else
echo -e "\033[1;31m$num\033[1;32m/$sum $ip节点ssh免密登陆为:\033[1;33m no \033[0m"
fi
let num++
done