首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >netmiko密钥认证失败

netmiko密钥认证失败
EN

Stack Overflow用户
提问于 2022-09-12 04:44:52
回答 1查看 253关注 0票数 1

使用N7K查看netmiko密钥身份验证的一些问题。

Python 3.8.10,netmiko 4.1.2。

首先在N9K上试运行,没有任何问题,得到连接后可以发送命令。

代码语言:javascript
复制
Python 3.8.10 (default, Jun 22 2022, 20:18:18) 
[GCC 9.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from netmiko import ConnectHandler
>>> n9k = {"device_type": "cisco_nxos", "host": "10.1.1.10", "username": "admin", "use_keys": True,"key_file":"~/.ssh/id_rsa", "passphrase": "Cisco123"}
>>> target_con = ConnectHandler(**n9k)

当尝试连接到N7K交换机时,请单击此问题。

代码语言:javascript
复制
>>> n7k = {"device_type": "cisco_nxos", "host": "10.1.1.20", "username": "admin", "use_keys": True,"key_file":"~/.ssh/id_rsa", "passphrase": "Cisco123"}
>>> target_con = ConnectHandler(**n7k)
Traceback (most recent call last):
  File "/home/admin/netmiko_test/lib/python3.8/site-packages/netmiko/base_connection.py", line 1046, in establish_connection
    self.remote_conn_pre.connect(**ssh_connect_params)
  File "/home/admin/netmiko_test/lib/python3.8/site-packages/paramiko/client.py", line 435, in connect
    self._auth(
  File "/home/admin/netmiko_test/lib/python3.8/site-packages/paramiko/client.py", line 771, in _auth
    raise saved_exception
  File "/home/admin/netmiko_test/lib/python3.8/site-packages/paramiko/client.py", line 747, in _auth
    self._transport.auth_publickey(username, key)
  File "/home/admin/netmiko_test/lib/python3.8/site-packages/paramiko/transport.py", line 1635, in auth_publickey
    return self.auth_handler.wait_for_response(my_event)
  File "/home/admin/netmiko_test/lib/python3.8/site-packages/paramiko/auth_handler.py", line 259, in wait_for_response
    raise e
paramiko.ssh_exception.AuthenticationException: Authentication failed.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/admin/netmiko_test/lib/python3.8/site-packages/netmiko/ssh_dispatcher.py", line 365, in ConnectHandler
    return ConnectionClass(*args, **kwargs)
  File "/home/admin/netmiko_test/lib/python3.8/site-packages/netmiko/base_connection.py", line 439, in __init__
    self._open()
  File "/home/admin/netmiko_test/lib/python3.8/site-packages/netmiko/base_connection.py", line 444, in _open
    self.establish_connection()
  File "/home/admin/netmiko_test/lib/python3.8/site-packages/netmiko/base_connection.py", line 1083, in establish_connection
    raise NetmikoAuthenticationException(msg)
netmiko.exceptions.NetmikoAuthenticationException: Authentication to device failed.

Common causes of this problem are:
1. Invalid username and password
2. Incorrect SSH-key file
3. Connecting to the wrong device

Device settings: cisco_nxos 10.1.1.20:22


Authentication failed.
>>> 

用户名和ssh键已经过验证。如果使用用户名/密码,则所有操作都很好。如有任何建议,将不胜感激。谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-09-19 10:01:46

在研究另一个类似的paramiko问题时发现了这个问题。我使用openssh8.3测试的N9K节点,因此它是rsa-sha2-256。N7K节点使用openssh5.9,即ssh-sha1 1。这与netmiko不同,因为默认情况下netmiko似乎不喜欢ssh-sha1 1。将disabled_algorithms = {'pubkeys': ['rsa-sha2-256', 'rsa-sha2-512']}添加到ConnectHandler解决了这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73684582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档