5月30日 20:53
SSH 加密算法如何选择才兼顾安全和性能?
SSH 加密算法主要分三类:会话数据用对称加密保护,身份和签名用非对称算法完成,完整性由 MAC 或 AEAD 兜底。实际配置时优先保留现代 OpenSSH 支持的组合:aes256-gcm@openssh.com、chacha20-poly1305@openssh.com、aes256-ctr。CBC、3DES 只适合遗留系统,不应出现在新服务器默认列表里。
追问
AES-GCM 和 ChaCha20-Poly1305 怎么选?
有 AES-NI 的服务器优先 AES-GCM,吞吐通常更好。ARM 或老 CPU 上,ChaCha20-Poly1305 往往更稳定。
为什么不建议 CBC 和 3DES?
CBC 历史上暴露过填充相关攻击面,3DES 块大小和性能都不适合现代长连接。
只配置 Ciphers 就够了吗?
不够,SSH 安全还依赖 KEX、HostKey、MAC。使用 CTR 时,MAC 建议选 *-etm@openssh.com。
改配置最容易踩什么坑?
可能把旧客户端挡在门外。生产应保留备用会话,sshd -t 通过后再 reload。
写段配置
bashCiphers aes256-gcm@openssh.com,chacha20-poly1305@openssh.com,aes256-ctr MACs hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com