网络服务的管理ssh接口。
txsshadmin的Python项目详细描述
创建ssh服务器公钥/私钥对
示例:
$ mkdir keys $ ckeygen -b 2048 -t rsa -f keys/id_rsa
运行演示
通过ssh的自定义协议:
$ twistd -ny ./txsshadmin/demo.tac
ssh上的检修孔复制:
$ ./txsshadmin/manhole_repl.py
创建自己的ssh服务
创建协议处理程序
子类txssadmin.proto_dispatcher.basehandler。重写处理程序方法 您希望自定义。创建处理程序时,将分配ssh化身 它的化身属性。每个处理程序方法都传递一个调度程序实例。
创建协议工厂
使用txssadmin.proto_dispatcher.makesshdispatcherprotocolfactory()创建 一个协议工厂。
创建ssh化身
子类 ssh服务。将您创建的协议工厂分配给其protocol factory 属性。在avatar中,您可以定义身份验证的功能 用户。具有各种功能的用户的服务的协议处理程序 可以将其处理程序委托给其化身。
创建领域
领域决定了当身份验证时返回的化身(如果有的话) 化身id和接口列表被提供给领域。结果 化身应支持所提供的接口中的至少一个。
对于只返回单一类型化身的简单领域,您可以将 txssadmin.cred_base.sshbaeserealm并将avatarfactory属性设置为 阿凡达工厂。对于更复杂的领域,可以包括 根据键入虚拟角色ID的功能返回不同的虚拟角色。
创建ssh服务
子类txssadmin.service.sshservicebase。将域属性设置为相等 以你的领域为例。