- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
首先,我试图让 fabric 正常工作,但它一直要求我输入密码。
所以我正在努力减少这个问题。从 Python 创建 SSH 连接也许是一个很好的 POC。我发现 fabric 使用 parmiko 进行 SSH 处理。唔。好的,让我们试着让一个例子工作。
这是我写的。
from ssh import *
import os
print "SSH-AGENT VARS"
print "SSH_AGENT_PID: %s " % os.environ['SSH_AGENT_PID']
print "SSH_AUTH_SOCK: %s " % os.environ['SSH_AUTH_SOCK']
a = Agent()
keys=a.get_keys()
print keys.count("192.168.1.10")
client = SSHClient()
client.load_system_host_keys()
client.connect('192.168.1.10')
导致以下错误消息:
% ./ssh_test.py
SSH-AGENT VARS
SSH_AGENT_PID: 26557
SSH_AUTH_SOCK: /tmp/ssh-pZHBElj26556/agent.26556
0
Traceback (most recent call last):
File "./ssh_test.py", line 18, in <module>
client.connect('192.168.1.10')
File "/usr/local/lib/python2.7/dist-packages/ssh/client.py", line 332, in connect
self._auth(username, password, pkey, key_filenames, allow_agent, look_for_keys)
File "/usr/local/lib/python2.7/dist-packages/ssh/client.py", line 493, in _auth
raise saved_exception
ssh.PasswordRequiredException: Private key file is encrypted
ssh-agent 在我的 session 中运行,我可以通过 SSH 连接到那个盒子,没问题,它不会提示我输入密码或任何东西。
我猜 paramiko 由于某种奇怪的原因无法连接到正在运行的 ssh-agent。
有没有人遇到过这样的问题?我正在使用 Ubuntu 11.10
我好像记得前阵子试过Fabric也有类似的问题,可能是坏了一段时间?
我连接,只是使用主机名作为参数。这是根据文档。
http://www.lag.net/paramiko/docs/paramiko.SSHClient-class.html
connect(self, hostname, port=22, username=None, password=None, pkey=None, key_filename=None, timeout=None, allow_agent=True, look_for_keys=True, compress=False)
最佳答案
因此,当您执行 a.get_keys() 时,从 paramiko 代码和您的代码应该返回一个列表。我会看看它返回了什么。而且它不会返回您可以像那样计算的东西,因为它返回的是实际的加密 key 位。但无论如何,当您转移到 ssh 并且它起作用时,让我们转移到 Fabric。
您可以通过执行以下操作为 ssh 库打开它来获得更多日志记录:
import ssh
ssh.util.log_to_file("paramiko.log", 10)
在你的 fabfile 中。这将显示所有日志并显示更多 paramiko/ssh 本身正在做的事情,这可能有助于您进一步调试问题。
关于python - paramiko,不是在与 ssh-agent 交谈。织物中的相同行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9843803/
我正在我的应用程序中实现 Fabricjs 作为编辑工具。我需要在 Canvas 中设置高分辨率图像。如果我使用 setBackgroundImage 方法,它仅适用于小尺寸(尺寸小于 Canvas
美好的一天,我希望有人能帮我解决这个问题。 我有一个 for 语句,它在 Fabric js Canvas 上创建和添加多个 Rect。我需要为每个创建的矩形设置纹理,因此我使用以下代码。 var r
Is there any way to repeat the pattern inside an object in fabric JS. 假设我有一个填充有图案的矩形。我希望在缩放矩形时重复该模式。
我有一个问题,文档以某种方式涵盖了它,但我就是不明白。 我想启动一个 Flask 应用程序并首先设置两个 shell 环境变量: export FLASK_APP=startup.py export
我正在尝试使用 Fabric 设置 Stripe,我的第一步当然是接受用户的信用卡信息。使用下面的代码,“提交”按钮在应该启用时启用,但在单击按钮时应用程序崩溃。错误消息是“由于未捕获的异常‘NSIn
我在本地环境中开发了一个经典的 Python Django Web 应用程序。然后,我使用 Cython 将一些应用程序的模块编译为动态库(*.so 文件)以“保护”源代码。现在,我需要将我的 Dja
我希望用户能够选择一个 fabric.Textbox 并进行旋转、移动、调整大小等,但不能编辑文本。要编辑文本,用户必须选择文本框对象,然后激活文本编辑(不是在结构中)。 所以我想要的是避免用户可以编
我在 DigitalOcean 上有服务器,我使用结构来部署我的代码。我的代码依赖于环境变量(flask config)。我今天遇到了一个奇怪的问题:在 的服务器上/root/.bashrc 我添加了
我使用布料并且有: put('/projects/configuration-management/prototype','/etc/nginx/sites-available') 结果是: Unde
我遇到了问题,不知道如何解决。 我的项目使用 crashlytics,但它总是崩溃且未发送报告。我有一个超时异常: 08-25 03:04:31.876 2856-2856/connectivi
我目前正在开发一个 iOS 应用程序(可能是 Android 或其他,这不是这里的问题)并且刚刚通过结构包含 MoPub 工具包,以便通过广告将应用程序货币化。 使用测试单元 ID 实现全屏/插页式广
经过 2 个月的工作,在下一次构建后突然将 Fabric/Crashlytics 集成到项目中,我得到: .../Crashlytics.framework/Headers/Answers.h:9:9
刚开始学习 Fabric.js。请看下面的代码。目的是让对象在用户单击时旋转 360 度。它第一次对每个方 block 起作用。但是如果我第二次点击一个方 block ,就没有动画了。我做错了什么?
我正在使用 fabric 进行 Beta 测试。 我从 Crashlytics 收到了有关 Beta 版应用程序的通知。标题为“XXX v1.0.0(5)已准备好测试”。 我希望我能在安装页面上看到一
我们正在使用 Fabric JS 向 Canvas 添加文本和图像对象。 但是当我们添加任何文本对象并选择它时,它显示的选择区域大于文本的实际大小。 Please refer this link to
在fabric.js 中,我们可以绘制自由路径(http://fabricjs.com/freedrawing)(http://fabricjs.com/fabric-intro-part-4#fre
现在我正在尝试将 SECRET_KEY 存储在环境变量中: # settings/base.py def get_env_variable(var_name): """ Get the env
可以像这样使用顶部、左侧、宽度、高度来创建矩形 var rect = new fabric.Rect({ left: 50, top: 50, width: 50, heigh
我是一名优秀的程序员,十分优秀!