我正在尝试使用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的连接那很好)。还有其他人有这个问题并解决了吗?
答案 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