Python實現 SSHv2 協議的異步客戶端和服務器端:AsyncSSH

jopen 10年前發布 | 21K 次閱讀 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

項目主頁:http://www.baiduhome.net/lib/view/home/1418350026511

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!