跳到主要内容
ecdsa.com

SSH(安全外壳协议)

RFC 4251~4254 定义的协议,用于经过身份验证的加密远程登录、命令执行、文件传输和端口转发;服务器用主机密钥证明自己的身份,用户则用密钥、证书或密码完成身份验证。
其他写法Secure ShellOpenSSHSSH protocol

连接先运行传输层(密钥交换、服务器主机密钥签名、加密),然后是用户身份验证,最后是多路复用的通道。密钥交换名称说明了所使用的混合方案,例如 mlkem768x25519-sha256(自 10.0 版起为 OpenSSH 默认)、sntrup761x25519-sha512 或 curve25519-sha256;加密算法为 AEAD,例如 chacha20-poly1305@openssh.com 和 aes256-gcm@openssh.com。

密钥类型:ssh-ed25519、ecdsa-sha2-nistp256、rsa-sha2-256 和 rsa-sha2-512(使用 SHA-2 签名的 RSA 密钥;采用 SHA-1 的 ssh-rsa 签名自 OpenSSH 8.8 起默认禁用),基于 FIDO 的 sk-ssh-ed25519@openssh.com 和 sk-ecdsa-sha2-nistp256@openssh.com,以及证书。DSA 已在 OpenSSH 10.0 中移除。OpenSSH 10.4(2026年7月)新增了实验性的 ML-DSA-44 加 Ed25519 复合签名,默认关闭。

默认的信任方式是首次使用即信任:客户端在首次连接时把主机密钥记录到 known_hosts 中,之后如果密钥发生变化,就会发出醒目的警告。在规模较大的服务器集群中,SSH 证书或 DNS SSHFP 记录可以取代这种盲目的首次信任。SSH 服务器审计工具可以检查服务器提供了哪些算法。

标准与参考资料

全部术语