请写一个python脚本 基于paramiko实现对批量IP进行ssh链接测试 设置超时200ms
时间: 2024-03-20 13:44:24 浏览: 80
好的,以下是一个基于 paramiko 的 Python 脚本,用于测试多个 IP 地址的 SSH 连接是否可用,并设置了 200ms 的超时:
```python
import paramiko
import time
# 定义要测试的 IP 地址列表
ip_list = ['192.168.0.1', '192.168.0.2', '192.168.0.3']
# 设置超时时间,单位为秒
timeout = 0.2
for ip in ip_list:
# 创建 SSH 客户端对象
ssh = paramiko.SSHClient()
# 自动添加缺失的主机密钥,不需要手动进行确认
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
try:
# 连接 SSH 服务器
ssh.connect(ip, username='username', password='password', timeout=timeout)
print(f'Successful connection to {ip}')
# 关闭 SSH 连接
ssh.close()
except paramiko.AuthenticationException as e:
print(f'Authentication failed when connecting to {ip}: {e}')
except paramiko.SSHException as e:
print(f'Unable to establish SSH connection to {ip}: {e}')
except paramiko.ssh_exception.NoValidConnectionsError as e:
print(f'Unable to connect to {ip}: {e}')
except Exception as e:
print(f'Error occurred while connecting to {ip}: {e}')
# 等待 1 秒钟,避免过于频繁的连接
time.sleep(1)
```
需要注意的是,如果要运行此脚本,你需要将 `username` 和 `password` 替换为你实际使用的 SSH 登录用户名和密码。
阅读全文