用途:提供 SSH 远程访问的常用模式与安全实践,适用于远程服务器管理、安全文件传输、端口转发、跳板机穿越、自动化部署和 SOCKS 代理。不适合高吞吐跨广域网批量传输(宜用 Globus 等)、图形化远程桌面(宜用 VNC/RDP)和容器编排(宜用 kubectl/docker CLI)。
主要能力与用法:基本连接 ssh user@host,非默认端口加 -p PORT;指定私钥 ssh -i ~/.ssh/key user@host;远程执行 ssh user@host "command",交互命令加 -t;在 ~/.ssh/config 中用 Host 别名简化重复连接。文件传输推荐 rsync -avzP src user@host:dest,scp 为旧协议、内部走 SFTP;交互浏览用 sftp。隧道方面:本地转发 ssh -L local:remote_host:remote_port,远程转发 ssh -R remote:localhost:local_port,动态转发 ssh -D 1080,跳板机 ssh -J jump user@target(OpenSSH 7.3+)。密钥生成 ssh-keygen -t ed25519,硬件密钥 ssh-keygen -t ed25519-sk(需 OpenSSH 8.2+);ssh-add 缓存口令;配置 ControlMaster auto 复用连接;调试用 ssh -v 至 -vvv。
密钥建议:新密钥默认 Ed25519;高安全场景用 Ed25519-SK(FIDO2);RSA 4096 仅用于兼容旧系统;避免 ECDSA。
常见错误与安全要点:新环境勿用 RSA;大文件或重复同步用 rsync 而非 scp;用 ssh-agent 避免重复输入口令;多跳用 -J 而非嵌套 SSH;交互命令加 -t;勿在不可信主机上 ForwardAgent yes,改用 ProxyJump;ControlPath 需含 %h、%p、%r;勿全局关闭主机密钥检查;启用 IdentitiesOnly yes。服务端建议 PasswordAuthentication no、PermitRootLogin prohibit-password 或 no、authorized_keys 中用 command= 与 from= 限制、安装 fail2ban,并考虑 SSH 证书认证。
限制:资料未提供具体版本兼容细节、平台差异说明及性能基准,部分内容需结合本地 OpenSSH 版本验证。