3

我正在使用 paramiko 通过 ssh 连接到远程服务器。使用公钥进行身份验证时,性能很慢(约 90 秒)。这是相关的日志记录输出:

2012-05-14 17:37:21,378 Ciphers agreed: local=aes128-ctr, remote=aes128-ctr 
2012-05-14 17:37:21,378 using kex diffie-hellman-group1-sha1; server key type ssh-rsa; cipher: local aes128-ctr, remote aes128-ctr; mac: local hmac-sha1, remote hmac-sha1; compression: local none, remote none 
2012-05-14 17:37:21,481 Switch to new keys ... 
2012-05-14 17:37:21,483 Adding ssh-rsa host key for 10.12.34.56: 8a05c68a0707a9fad19290c22542a338 
2012-05-14 17:37:21,485 Trying discovered key 3793c7b9c500f52c12e190e92e21713f in /home/david/.ssh/id_rsa 
2012-05-14 17:37:21,513 userauth is OK 
2012-05-14 17:38:54,370 Authentication (publickey) successful!

注意最后两行日志输出之间的延迟。当使用 ssh 从命令行连接同一用户和远程服务器时,连接是即时的。任何想法是什么导致延迟?

4

2 回答 2

3

pycrypto>=2.5很慢。降级到 后pycrypto==2.4.1,我看到了 25 倍的改进。

于 2012-07-25T10:58:28.350 回答
0

经过大量实验后,延迟似乎与密钥的长度有关。我使用的第一个密钥是 4096 位。当我切换到更短的(2048 位)密钥时,验证所需的时间急剧下降(< 2 秒)。

于 2012-06-12T12:50:27.257 回答