我在用paramiko的SSH连接到锐捷交换机的时候,出现问题:
import paramiko
ip = '10.xx.xx.xx'
user = 'S****'
password = '******'
ssh_client = paramiko.SSHClient()
ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh_client.connect(hostname=ip, username=user, password=password, port=22, look_for_keys=False)
出现以下错误。
Unknown exception: p must be exactly 1024, 2048, 3072, or 4096 bits long
Traceback (most recent call last):
File "D:\ProgramData\Anaconda3\lib\site-packages\paramiko\transport.py", line 2129, in run
self.kex_engine.parse_next(ptype, m)
File "D:\ProgramData\Anaconda3\lib\site-packages\paramiko\kex_gex.py", line 100, in parse_next
return self._parse_kexdh_gex_reply(m)
File "D:\ProgramData\Anaconda3\lib\site-packages\paramiko\kex_gex.py", line 282, in _parse_kexdh_gex_reply
self.transport._verify_key(host_key, sig)
File "D:\ProgramData\Anaconda3\lib\site-packages\paramiko\transport.py", line 1940, in _verify_key
if not key.verify_ssh_sig(self.H, Message(sig)):
File "D:\ProgramData\Anaconda3\lib\site-packages\paramiko\dsskey.py", line 149, in verify_ssh_sig
key = dsa.DSAPublicNumbers(
File "D:\ProgramData\Anaconda3\lib\site-packages\cryptography\hazmat\primitives\asymmetric\dsa.py", line 199, in public_key
return ossl.load_dsa_public_numbers(self)
File "D:\ProgramData\Anaconda3\lib\site-packages\cryptography\hazmat\backends\openssl\backend.py", line 843, in load_dsa_public_numbers
dsa._check_dsa_parameters(numbers.parameter_numbers)
File "D:\ProgramData\Anaconda3\lib\site-packages\cryptography\hazmat\primitives\asymmetric\dsa.py", line 271, in _check_dsa_parameters
raise ValueError(
ValueError: p must be exactly 1024, 2048, 3072, or 4096 bits long