异步ssh:异步sshv2客户机和服务器库
asyncssh-unofficial的Python项目详细描述
异步ssh概述
asyncsh是一个python包,它提供了一个异步客户机和 基于python异步的sshv2协议的服务器实现 框架。它需要python 3.4或更高版本,并且pyca库或 一些加密函数的pycrypto库。
此软件包按以下条款发布:
Copyright (c) 2013-2014 by Ron Frederick <ronf@timeheart.net>. All rights reserved.
This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution and is available at:
http://www.eclipse.org/legal/epl-v10.html
- 贡献者:
- ron frederick-初始实现、api和文档
值得注意的功能包括:
- 基于python 3从头开始编写
- 支持多种密钥交换方法
- Diffie Hellman第1组和第14组SHA1
- 与SHA1和SHA256进行Diffie-Hellman组交换
- 椭圆曲线diffie-hellman(nistp256、nistp384和nistp521)
- curve25519(如果安装了curve25519 donna python包装器)
- 支持多种身份验证方法
- 密码、公钥和键盘交互功能
- 支持多种公钥格式
- dsa、rsa和ecdsa密钥
- pkcs 1/pkcs 8 der和pem、openssh和rfc4716格式
- 基于密码的私钥加密
- 支持多种密码(通过pyca或pycrypto提供)
- aes、arc4、河豚、cast和triple des
- 支持多种mac算法
- 带MD5、SHA1、SHA256和SHA512的HMAC
- 支持gzip压缩
- 包括openssh变量,将压缩延迟到auth之后
- 支持传递环境变量、终端类型和窗口大小
- 支持在单个ssh连接上同时进行多个会话
- 支持在单个事件循环中处理多个ssh连接
- 支持直接和转发的TCP/IP通道
- 支持基于字节和字符串的I/O,可设置编码
- 与openssh“encrypt then mac”选项兼容,以获得更好的安全性
- 基于时间和字节计数的会话密钥重新协商
- 易于扩展以支持新形式的密钥交换, 身份验证方法、密码和压缩算法
先决条件
要使用asyncssh,您需要以下信息:
- python 3.4或更高版本
- pycrypto 2.6或更高版本和/或pyca 0.6.1或更高版本
安装
从http://www.python.org或 最喜欢的包装系统。
可以选择从http://www.pycrypto.org安装pycrypto 2.6或更高版本 或者你最喜欢的包装系统。
可以选择从https://cryptography.io安装pyca 0.6.1或更高版本 或者你最喜欢的包装系统。
可选安装Curve25519 Donna http://github.com/agl/curve25519-donna如果您想支持 曲线25519 Diffie-Hellman密钥交换。
通过运行以下命令安装asyncsh:
% pip install asyncssh
- 查看examples开始!
邮件列表
asyncsh有三个邮件列表: