Pure-rust SSH 2.0 Client
Example: Initiating a fetch from github
use TcpStream;
use ;
let hex_keypair: String = create_ed25519_keypair;
println!;
let github_account_id = "john.doe@gmail.com";
let openssh_encoded_pubkey = dump_ed25519_pk_openssh;
println!;
// Add the public key to `authorized_keys` on your server
// -> https://github.com/settings/keys
let stream = connect.unwrap;
let mut conn = new.unwrap;
// set appropriate read timeout (preferably after authentication):
conn.mutate_stream;
let env = ;
let run = conn.run.unwrap;
Supported SSH Algorithms
- Key Exchange: curve25519-sha256
- Public Keys: ssh-ed25519
- Encryption: aes256-ctr
- MAC: hmac-sha2-256
- Compression: none
Future improvements
- no_std compatibility
- allow multiple commands to run simultaneously (API change)
- server mode
Feel free to submit pull request for these.