如何阻止 paramiko 使用 ~/.ssh/id_rsa 加密密钥?
How to stop paramiko from using ~/.ssh/id_rsa encrypted key?
我不断收到以下错误:
Traceback (most recent call last):
File "/home/d/workspace/paramiko/connect_test/main.py", line 127, in connect
cStringIO.StringIO(local_settings.RSA_KEY)
File "/home/d/virtualenv/lib/python2.7/site-packages/paramiko/client.py", line 380, in connect
look_for_keys, gss_auth, gss_kex, gss_deleg_creds, gss_host)
File "/home/d/virtualenv/lib/python2.7/site-packages/paramiko/client.py", line 603, in _auth
raise saved_exception
paramiko.ssh_exception.PasswordRequiredException: Private key file is encrypted
问题是我添加了我想以这种方式使用的密钥并且它没有加密:
ssh_client.connect(
node_ip, username=local_settings.USERNAME,
pkey=paramiko.RSAKey.from_private_key(
cStringIO.StringIO(local_settings.RSA_KEY)
)
)
我认为它正在查看我的加密私钥 ~/.ssh/id_rsa。有什么办法可以阻止它这样做吗?
Paramiko 尝试回退到您的 ~/.ssh/
键并且只报告最后一个错误。您可以通过将 look_for_keys=False
传递给 connect()
来禁用回退行为,这将引发更有用的异常。
我不断收到以下错误:
Traceback (most recent call last):
File "/home/d/workspace/paramiko/connect_test/main.py", line 127, in connect
cStringIO.StringIO(local_settings.RSA_KEY)
File "/home/d/virtualenv/lib/python2.7/site-packages/paramiko/client.py", line 380, in connect
look_for_keys, gss_auth, gss_kex, gss_deleg_creds, gss_host)
File "/home/d/virtualenv/lib/python2.7/site-packages/paramiko/client.py", line 603, in _auth
raise saved_exception
paramiko.ssh_exception.PasswordRequiredException: Private key file is encrypted
问题是我添加了我想以这种方式使用的密钥并且它没有加密:
ssh_client.connect(
node_ip, username=local_settings.USERNAME,
pkey=paramiko.RSAKey.from_private_key(
cStringIO.StringIO(local_settings.RSA_KEY)
)
)
我认为它正在查看我的加密私钥 ~/.ssh/id_rsa。有什么办法可以阻止它这样做吗?
Paramiko 尝试回退到您的 ~/.ssh/
键并且只报告最后一个错误。您可以通过将 look_for_keys=False
传递给 connect()
来禁用回退行为,这将引发更有用的异常。