Python實現 SSHv2 協議的異步客戶端和服務器端:AsyncSSH
AsyncSSH這個 Python 包在Python asyncio框架的基礎實現 SSHv2 協議的異步客戶端和服務器端。求 Python 3.4 或者更新版本以及 PyCA 庫或者是 PyCrypto 庫用于加密功能。
顯著特征:
-
Written from the ground up to be based on Python 3
-
- Support for a number of key exchange methods
-
- Diffie Hellman group1 and group14 with SHA1
- Diffie Hellman group exchange with SHA1 and SHA256
- Elliptic Curve Diffie Hellman (nistp256, nistp384, and nistp521)
- Curve25519 (if curve25519-donna Python wrapper is installed)
-
- Support for multiple authentication methods
-
- Password, public key, and keyboard-interactive
-
- Support for a variety of public key formats
-
- DSA, RSA, and ECDSA keys
- PKCS#1/PKCS#8 DER and PEM, OpenSSH, and RFC4716 formats
- Password-based encryption of private keys
-
- Support for a variety of ciphers (provided via PyCA or PyCrypto)
-
- AES, ARC4, Blowfish, CAST, and Triple DES
-
- Support for a variety of MAC algorithms
-
- HMAC with MD5, SHA1, SHA256, and SHA512
-
- Support for gzip compression
-
- Including OpenSSH variant to delay compression until after auth
-
Support for passing environment variables, terminal type, and window size
-
Support for multiple simultaneous sessions on a single SSH connection
-
Support for handling multiple SSH connections in a single event loop
-
Support for direct and forwarded TCP/IP channels
-
Support for both byte and string based I/O with settable encoding
-
Compatibility with OpenSSH "Encrypt then MAC" option for better security
-
Time and byte-count based session key renegotiation
-
Designed to be easy to extend to support new forms of key exchange, authentication methods, ciphers, and compression algorithms
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!