import os import sys import paramiko sys.stdout.reconfigure(encoding="utf-8") pkey = paramiko.Ed25519Key.from_private_key_file(os.path.expanduser('~/.ssh/id_ed25519_snarfnet')) client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) client.connect("140.44.4.11", username="root", pkey=pkey, timeout=10) cmd = """ for p in 22 80 443 6443 10250; do timeout 1 bash -c "echo > /dev/tcp/140.44.4.21/$p" 2>/dev/null && echo "Port $p OPEN" || echo "Port $p CLOSED/FILTERED" done """ stdin, stdout, stderr = client.exec_command(cmd) print("PORT SCAN:") print(stdout.read().decode()) client.close()