Rust SSH client & server library
1,863
stars
913
commits
Rust
primary language
Sep 9, 2026
updated
Low-level Tokio SSH2 client and server implementation.
Crypto backends: enable at least one of the
aws-lc-rsorringfeatures.russhfails to compile when both are disabled because a crypto backend is required.
Examples: simple client, interactive PTY client, server, SFTP client, SFTP server.
This is a fork of Thrussh by Pierre-Étienne Meunier.
✨ = added in Russh
direct-tcpip (local port forwarding)forward-tcpip (remote port forwarding) ✨direct-streamlocal (local UNIX socket forwarding, client only) ✨forward-streamlocal (remote UNIX socket forwarding) ✨chacha20-poly1305@openssh.comaes128-gcm@openssh.com ✨aes256-gcm@openssh.comaes256-ctraes192-ctr ✨aes128-ctr ✨aes256-cbc ✨aes192-cbc ✨aes128-cbc ✨3des-cbc ✨mlkem768x25519-sha256curve25519-sha256@libssh.orgdiffie-hellman-group-sha1 (GEX) ✨diffie-hellman-group1-sha1 ✨diffie-hellman-group14-sha1 ✨diffie-hellman-group-sha256 (GEX) ✨diffie-hellman-group14-sha256 ✨diffie-hellman-group16-sha512 ✨ecdh-sha2-nistp256 ✨ecdh-sha2-nistp384 ✨ecdh-sha2-nistp521 ✨hmac-sha1 ✨hmac-sha2-256hmac-sha2-512 ✨hmac-sha1-etm@openssh.com ✨hmac-sha2-256-etm@openssh.com ✨hmac-sha2-512-etm@openssh.com ✨ssh-ed25519rsa-sha2-256rsa-sha2-512ssh-rsaecdsa-sha2-nistp256ecdsa-sha2-nistp384 ✨ecdsa-sha2-nistp521 ✨passwordpublickeykeyboard-interactivenoneserver-sig-algs extension ✨AsyncRead/AsyncWrite-able channels ✨deny(clippy::unwrap_used)deny(clippy::expect_used)deny(clippy::indexing_slicing)deny(clippy::panic)mlock/munlock fails to protect sensitive data in memory.cryptovec uses unsafe for faster copying, initialization and binding to native API.russh - see russh/examples/sftp_server.rs or russh/examples/sftp_client.rs.russh::client and russh_sftp::client to allow remote editing of files.russh:server to deliver the game, using ratatui as the rendering engine.russh::server to deliver the ratatui based TUI and russh_sftp::server to provide scp based file management.russh::server to construct a proxy into your development environment.russh::server to be the basis of the honeypot.russh::server to deliver the game, using ratatui as the rendering engine.russh::server in addition to russh::client as part of the smart SSH functionality.russh::client for the web-based SSH client of the standalone web application.russh::server for reverse forwarding connections, local forwarding tunnels, and the ratatui based admin interface.russh::server as the base for its own SSH Server.russh::client and russh_sftp::client to access the virtual machine instances.russh::client to implement an async SFTP provider for remote file management.russh::server to allow Git operations over SSH.russh::server for efficiently implementing SSH shells and SFTP file management.russh::client for connections, jump hosts, SOCKS/HTTP/command proxies and SFTP.russh::client as the SSH transport implementation behind Nitro Modules bindings.Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
(top 30 of 118)
Rust
100.0%
Rust SSH client & server library
1,863
stars
913
commits
Rust
primary language
Sep 9, 2026
updated
Low-level Tokio SSH2 client and server implementation.
Crypto backends: enable at least one of the
aws-lc-rsorringfeatures.russhfails to compile when both are disabled because a crypto backend is required.
Examples: simple client, interactive PTY client, server, SFTP client, SFTP server.
This is a fork of Thrussh by Pierre-Étienne Meunier.
✨ = added in Russh
direct-tcpip (local port forwarding)forward-tcpip (remote port forwarding) ✨direct-streamlocal (local UNIX socket forwarding, client only) ✨forward-streamlocal (remote UNIX socket forwarding) ✨chacha20-poly1305@openssh.comaes128-gcm@openssh.com ✨aes256-gcm@openssh.comaes256-ctraes192-ctr ✨aes128-ctr ✨aes256-cbc ✨aes192-cbc ✨aes128-cbc ✨3des-cbc ✨mlkem768x25519-sha256curve25519-sha256@libssh.orgdiffie-hellman-group-sha1 (GEX) ✨diffie-hellman-group1-sha1 ✨diffie-hellman-group14-sha1 ✨diffie-hellman-group-sha256 (GEX) ✨diffie-hellman-group14-sha256 ✨diffie-hellman-group16-sha512 ✨ecdh-sha2-nistp256 ✨ecdh-sha2-nistp384 ✨ecdh-sha2-nistp521 ✨hmac-sha1 ✨hmac-sha2-256hmac-sha2-512 ✨hmac-sha1-etm@openssh.com ✨hmac-sha2-256-etm@openssh.com ✨hmac-sha2-512-etm@openssh.com ✨ssh-ed25519rsa-sha2-256rsa-sha2-512ssh-rsaecdsa-sha2-nistp256ecdsa-sha2-nistp384 ✨ecdsa-sha2-nistp521 ✨passwordpublickeykeyboard-interactivenoneserver-sig-algs extension ✨AsyncRead/AsyncWrite-able channels ✨deny(clippy::unwrap_used)deny(clippy::expect_used)deny(clippy::indexing_slicing)deny(clippy::panic)mlock/munlock fails to protect sensitive data in memory.cryptovec uses unsafe for faster copying, initialization and binding to native API.russh - see russh/examples/sftp_server.rs or russh/examples/sftp_client.rs.russh::client and russh_sftp::client to allow remote editing of files.russh:server to deliver the game, using ratatui as the rendering engine.russh::server to deliver the ratatui based TUI and russh_sftp::server to provide scp based file management.russh::server to construct a proxy into your development environment.russh::server to be the basis of the honeypot.russh::server to deliver the game, using ratatui as the rendering engine.russh::server in addition to russh::client as part of the smart SSH functionality.russh::client for the web-based SSH client of the standalone web application.russh::server for reverse forwarding connections, local forwarding tunnels, and the ratatui based admin interface.russh::server as the base for its own SSH Server.russh::client and russh_sftp::client to access the virtual machine instances.russh::client to implement an async SFTP provider for remote file management.russh::server to allow Git operations over SSH.russh::server for efficiently implementing SSH shells and SFTP file management.russh::client for connections, jump hosts, SOCKS/HTTP/command proxies and SFTP.russh::client as the SSH transport implementation behind Nitro Modules bindings.Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
(top 30 of 118)
Rust
100.0%