import paramiko import os from config import HOSTS_LIST for host in HOSTS_LIST: print(f"\n🔍 Проверяю {host['name']} ({host['ip']})") print(f" Пользователь: {host['user']}") print(f" Ключ: {host['key_path']}") # Проверяем существование ключа if not os.path.exists(host['key_path']): print(f" ❌ Файл ключа НЕ СУЩЕСТВУЕТ: {host['key_path']}") continue # Пробуем подключиться try: client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) client.connect( hostname=host['ip'], port=host['port'], username=host['user'], key_filename=host['key_path'], timeout=5 ) print(" ✅ Подключено успешно!") # Проверяем тип хоста stdin, stdout, stderr = client.exec_command("uname -a") print(f" Система: {stdout.read().decode().strip()}") client.close() except paramiko.AuthenticationException: print(" ❌ Ошибка аутентификации! Неверный логин или ключ") except Exception as e: print(f" ❌ Ошибка: {e}")