Expand description
SFTP (SSH File Transfer Protocol) download support.
This module provides secure file downloads over SSH using SFTP.
§Security
SFTP provides encrypted file transfer, unlike plain FTP. Authentication is handled via SSH (password or key-based).
§Authentication Order
- Password embedded in URL (
sftp://user:pass@host/path) - SSH agent (if running)
- Default key files (
~/.ssh/id_ed25519,~/.ssh/id_rsa,~/.ssh/id_ecdsa)
§Example
use kget::sftp::SftpDownloader;
use kget::{ProxyConfig, Optimizer};
// Password authentication
let downloader = SftpDownloader::new(
"sftp://user:pass@server.com:22/path/to/file".to_string(),
"local_file.txt".to_string(),
false,
ProxyConfig::default(),
Optimizer::new(),
);
// Key-based (uses SSH agent or ~/.ssh/id_* automatically)
let downloader = SftpDownloader::new(
"sftp://user@server.com/path/to/file".to_string(),
"local_file.txt".to_string(),
false,
ProxyConfig::default(),
Optimizer::new(),
);
downloader.download().unwrap();Structs§
- Sftp
Downloader - SFTP file downloader using SSH.