与Paramiko ValueError的EC2实例的Fabric连接失败

时间:2014-07-02 15:11:12

标签: amazon-ec2 fabric paramiko

我正在尝试使用fabric(在python中)连接到EC2实例。我将我的env变量设置为:

env.hosts = ['xxx-xxx.amazonaws.com']
env.user = "ubuntu"
env.key_filename = ['/path/to/my/ec2.pem']

命令

run('pwd')

给出以下错误:

File "build/bdist.linux-x86_64/egg/paramiko/client.py", line 242, in connect
File "build/bdist.linux-x86_64/egg/paramiko/transport.py", line 346, in start_client
ValueError: CTR mode needs counter parameter, not IV

我正在使用paramiko 1.14.0(当前)btw,并且编辑我的ssh配置以将pem与主机关联不是一个选项(尽管我已经测试了与ssh -i / path / to / pem的连接那很好)。还有其他人有这个问题并解决了吗?

1 个答案:

答案 0 :(得分:3)

我在新的Ubunutu主机上运行Python / Paramiko脚本时遇到了同样的错误。我无法确定故障的原因,因为我是Python的新手,但我通过从/usr/local/lib/python2.7/dist-packages删除paramiko及其依赖来解决它。我删除了paramiko,pycrypto和ecdsa。

我的系统已经有以下软件包:

sudo apt-get install python-pip
sudo apt-get install python-dev

我重新安装了paramiko:

sudo pip install paramiko

我能够在没有ValueError的情况下成功运行我的脚本:

我正在运行的模块版本:

ecdsa 0.11
paramiko 1.14.0
pycrypto 2.6.1