使用 Python Telnet 到远程服务器虚拟机

问题描述 投票:0回答:0

我使用 telnetlib 连接到本地运行的虚拟机并访问其控制台取得了一些成功,但我正在测试使用运行虚拟机的远程服务器来复制它。通常,我会通过 SSH 连接到此远程服务器,然后调用 telnet 来访问虚拟机控制台,因此我尝试将其转换为如下所示的简单 Python 脚本

import paramiko

ssh_client = paramiko.SSHClient()
ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh_client.connect("IP", username="USER", password="PSWD")

tn = ssh_client.invoke_shell()

tn.send(f"telnet {IP} {PORT}\r")
tn.recv(4096)
tn.send("foo\r")

有没有更好的方法来解决这个问题?这种方法似乎不一致,登录时经常会返回服务器提示的输出。有没有办法将远程托管虚拟机的端口转发到本地使用 telnetlib 访问?

python ssh telnet
© www.soinside.com 2019 - 2024. All rights reserved.