Telnet和SSH在主文件中调用,Telnet工作,但SSH失败

2024-10-01 07:43:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python新手,我正在编写一个脚本到'telenet'设备IP(在某些情况下)和SSH用户名@deviceIp如果telnet Fails。。在

对于所有的Telnet IP来说,它工作得非常完美。。但是当我做“嘘”的时候admin@153.88.127.21“下面的代码失败,我在try bloc本身中得到错误,如下所示”套接字错误“用于ssh设备的

我希望ssh设备输入else块,如果telnet Ip在try块中失败。在

在我的主.py文件

    try:
        #TELNET MODULE CALL
        tn= _telnetMOD._telnet(username, password, device)
        break
    else:
        #SSH MODULE CALL
        ssh= _sshMOD._ssh(username, password, device)

在这个文件中,我有下面的代码可以工作 导入telnetlib

^{pr2}$

在_sshMOD文件中,我有下面的代码失败,不确定下面的代码

import paramiko 

def _ssh(_userVar,_passwordVAR, _device):
    ssh=''
    ssh= paramiko.SSHClient()
    ssh.connect(_device, username=_userVar,password=_passwordVAR)
    return ssh

Tags: 文件代码ipdevice错误usernamepasswordcall
1条回答
网友
1楼 · 发布于 2024-10-01 07:43:23

你忘了client.load_system_主机_密钥()? 以下是文档中的一个示例:

client = SSHClient()
client.load_system_host_keys()
client.connect('ssh.example.com')
stdin, stdout, stderr = client.exec_command('ls -l')

你应该像这样使用try块:

^{pr2}$

相关问题 更多 >