问题标签 [twisted.conch]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 使用密钥的扭曲 ssh 服务器身份验证
这是一个简单的扭曲应用程序:
我们可以使用 ssh 连接到它:
现在我想替换InMemoryUsernamePasswordDatabaseDontUse
这样服务器可以验证用户,这些用户使用 rsa/dsa 密钥来标识自己。
我必须实施检查器吗?
例如,我有一些公钥列在~/.ssh/authorized_keys
. SSH 服务器应该拒绝所有连接,除了那些可以使用该文件中的公钥进行验证的连接。
python - Twisted 可以同时运行 SFTP FTPS 和 HTTPS 服务器吗
我可能过于雄心勃勃,而我想要完成的事情甚至可能无法使用 twisted,但我想使用 Twisted 开发一个应用程序,它可以执行以下所有操作。
- 运行 SFTP 服务器
- 运行 FTPS 服务器
- 运行 HTTPS 服务器(用于传输文件的 Web UI)
所有这些协议都将共享一个用于用户身份验证的数据库。
我还想创建一个可以在某个时间间隔触发文件传输的调度程序。
阅读网站上的文档时,这个框架似乎是无限的,但我很难深入了解 Twisted 是否能够在不了解内部和外部的情况下完成上述所有工作。
我仍在浏览他们网站上的示例,似乎有一个陡峭的学习曲线才能真正掌握如何做这些事情。
如果可能的话,我将不胜感激有关如何完成此任务的任何反馈或指示。
python-3.x - python 3中是否提供扭曲的海螺?
我注意到 twisted.conch 不是 python 3 的 dist3.py 的一部分。它还没有迁移到 python 3 吗?当我搜索时,我没有找到任何最近的更新。我打算用它来建立多个 telnet 会话,这将有助于评估我的 django 应用程序中的日志,还有助于使用检修孔调试实时 django 应用程序。
是否有替代方案可以用于我的用例?我检查了异步。但是,我的理解是它可能会在调试期间冻结应用程序,这不适合我的需要。如果我的理解有误,请纠正我..
请指出我最新的带有海螺支持的 python 3 扭曲包(如果有)。如果没有,您有其他建议吗?
python - 使用螺旋海螺的ISFTP接口进行下载和上传?
我正在使用扭曲的海螺对 SFTP 客户端进行编程。我FileTransferClient
在这个(扭曲的海螺文件传输)中找到了一个使用扭曲海螺类的例子。
该类的openFile
方法返回一个依附于 ISFTP 服务器的 Object。此接口具有写入和读取方法:readChunk
和writeChunk
. 但是从这一步我不知道如何使用这个接口和openFile
对象来执行文件传输。我花了一周的时间没有成功。
你能给我一个使用这个openFile
对象的例子吗?
python - Twisted Conch MockSSH:实施“stty -echo”
我正在尝试使用MockSSH设置模拟 ssh shell 服务器。
为了测试我正在处理的特定应用程序,我需要能够阻止 shell 回显输入。应用程序总是通过发出“stty -echo”命令启动,因此 stdout 只包含输出。前任:
默认情况下禁用回显,或者在发出“stty -echo”命令时同样有效。
python - 扭曲的海螺试用 TDD,“StringTransport 实例没有属性……”
我正在设置一个可配置的 SSH 存根 shell,类似于MockSSH,我想以测试驱动的方式进行。
当我使用 conch.recvline.HistoricRecvLine 而不是基本的 twisted.internet.protocol.Protocol 时,我遇到了问题测试
这正如预期的那样工作。但是,当我进行更改时:
我得到错误:
下一步: 感谢 Glyph 的帮助,我已经走得更远了,仍在尝试设置一个最低限度的测试,以确保我正确设置了 HistoricRecvLine 协议。我从test_recvline.py中偷了一些代码,这对我来说仍然有点神奇,尤其是设置 sp.factory = self(unittest.Testcase)。我一直在尝试将其降低到最低限度以通过此测试。
这让我更接近预期的输出,但是现在我看到终端正在严重破坏输出,这应该是可以预料的。
出于 TDD 的目的,我不确定我是否应该只接受 '\x1bc>>>...' 版本的输出(至少在我通过设置自定义提示符将其中断之前)还是尝试覆盖 shell 提示符以获得干净的输出。
python - Twisted Conch Shell:阻止可执行文件
我有一个工作的SSH Shell 服务器,我正在尝试创建一个类似于“ping”的命令(命令类),每隔几秒钟打印出一些数据。
shell 查找接收到的命令的可执行文件,使用给定的 args 实例化它们并运行它们:
这段代码有效,但感觉不对:
- 我不特别喜欢将反应堆作为参数传递,只是为了我可以通过试验对其进行测试,但我不知道如何注入它只是为了测试。
- 我觉得让可执行文件调用 shell 的“resume()”方法很难看,我应该能够让 exe 在完成后“返回 0”。我遇到的问题是外壳程序只是运行并打印其提示而不是等待延迟。
在我尝试过的所有方法中,这是我唯一可以正常工作的方法,所以我非常感谢我能得到的任何建议。
twisted - 使用 Twisted 的沙井编写脚本
摘要:无法自动向 Twisted 的沙井发出命令。寻求解决方案/建议。
Twisted 有一个很棒的功能,叫做沙井。它允许用户通过 ssh 连接到当前运行的 Twisted 服务器并检查/与其内部交互。
我想用这个做一些脚本。连接沙井只需要
然后用户被放入一个可以访问正在运行的进程的 Python 解释器中。
通常使用 ssh 可以在远程服务器上运行命令并退出,例如
将在登录目录上执行“ls”,然后 ssh 连接将关闭。
我想执行类似的操作
到沙井,但我收到(使用 ssh 详细):
无论如何,我可以在沙井上自动化操作吗?
python - Python SSH 服务器(twisted.conch)命令过滤和端口转发
我需要创建一个 SSH 服务器(已选择 twisted.conch 来完成这项工作),它会执行以下操作:
- 执行端口转发(附加代码不这样做,我不知道要修改什么)
- 在执行命令之前过滤命令(或至少在之前或之后记录它们)。
下面附加的代码创建了一个完美的 SSH 和 SFTP 服务器,但它缺少一个主要组件 - 端口转发(和命令过滤,但这不如端口转发重要)
我搜索了可能的地方,但找不到这两个..请帮帮我,-这是拼图的最后平静。
python - Python SSH Server(twisted.conch) 获取用户的命令
我愿意在我的服务器上部署一个 SSH 守护程序,我可以知道执行了哪些命令。但我不知道如何获取用户的命令。我实现了一个基于twisted.conch.ssh.session的SSH服务器。我可以在 SSHSessionProcessProtocol 的 outReceived 中得到所有的标准输出,但是很难准确地从标准输出中提取用户的命令,因为这在很大程度上依赖于 Linux($PS1) 的提示。