问题描述
我正在尝试使用 Netmiko 通过 Cisco 路由器使用私钥/公钥对进行身份验证。 Cisco 路由器型号为 4431
这是我写的python代码
connect
运行这个会导致控制台出错
import getpass
import csv
import netmiko
import paramiko
from argparse import ArgumentParser
import keyring
import logging
logging.basicConfig(filename='test.log',level=logging.DEBUG)
logger = logging.getLogger("netmiko")
keyfile='/Users/user/.ssh/internal/privatekey’
ssh_password = 'mysecretpassword'
ssh_session = netmiko.ConnectHandler(device_type='cisco_ios',ip='172.1.1.1,username=‘myusername’,use_keys=True,key_file='/Users/user/.ssh/internal/privatekey’,passphrase=ssh_password)
ssh_session.send_command("terminal length 0")
print(ssh_session.send_command("sh ip int br"))
ssh_session.disconnect()
在附加日志中,我发现由于身份验证(公钥)失败。协议错误:预期数据包类型 50,得到 5
110 pubkey = Message(message.get_binary())
111 if pubkey.get_text() != "ssh-ed25519":
--> 112 raise SSHException("Invalid key")
113 public_keys.append(pubkey.get_binary())
114
SSHException: Invalid key
我会在这里遗漏什么?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)