add ssh test script
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
import subprocess
|
||||
import os
|
||||
|
||||
# 写入密钥文件
|
||||
key = "\n".join([
|
||||
"-----BEGIN OPENSSH PRIVATE KEY-----",
|
||||
"b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW",
|
||||
"QyNTUxOQAAACD6GquAk5vBEfbtaJCTSfnQEhjzC8e5GF60hSbPP0BJbAAAAJiQxGNokMRj",
|
||||
"aAAAAAtzc2gtZWQyNTUxOQAAACD6GquAk5vBEfbtaJCTSfnQEhjzC8e5GF60hSbPP0BJbA",
|
||||
"AAAED2muzuU4BAiCqbg0ayGxgiDvfS/xI1SFvb32oLzTnn8/oaq4CTm8ER9u1okJNJ+dAS",
|
||||
"GPMLx7kYXrSFJs8/QElsAAAAFHJ1bm5lci1hZG1pbkB4aWFveGlhAQ==",
|
||||
"-----END OPENSSH PRIVATE KEY-----",
|
||||
"",
|
||||
])
|
||||
|
||||
key_path = "/tmp/ns_key"
|
||||
with open(key_path, "w") as f:
|
||||
f.write(key)
|
||||
os.chmod(key_path, 0o600)
|
||||
|
||||
# 验证
|
||||
r = subprocess.run(["ssh-keygen", "-y", "-f", key_path], capture_output=True, text=True)
|
||||
print("Key valid:", "YES" if r.returncode == 0 else "NO")
|
||||
if r.returncode != 0:
|
||||
print("Error:", r.stderr.strip())
|
||||
|
||||
# 测试内网IP
|
||||
print("\n=== Test 172.30.18.199 ===")
|
||||
r = subprocess.run(
|
||||
["ssh", "-i", key_path, "-o", "StrictHostKeyChecking=no", "-o", "ConnectTimeout=10",
|
||||
"root@172.30.18.199", "hostname && whoami"],
|
||||
capture_output=True, text=True
|
||||
)
|
||||
print("stdout:", r.stdout.strip())
|
||||
if r.stderr.strip():
|
||||
print("stderr:", r.stderr.strip())
|
||||
print("exit:", r.returncode)
|
||||
|
||||
# 测试公网IP
|
||||
print("\n=== Test 116.62.226.203 ===")
|
||||
r = subprocess.run(
|
||||
["ssh", "-i", key_path, "-o", "StrictHostKeyChecking=no", "-o", "ConnectTimeout=10",
|
||||
"root@116.62.226.203", "hostname"],
|
||||
capture_output=True, text=True
|
||||
)
|
||||
print("stdout:", r.stdout.strip())
|
||||
if r.stderr.strip():
|
||||
print("stderr:", r.stderr.strip())
|
||||
print("exit:", r.returncode)
|
||||
|
||||
os.unlink(key_path)
|
||||
print("\n=== DONE ===")
|
||||
Reference in New Issue
Block a user