为什么需要查看OpenSSH版本?
OpenSSH 是 Linux 系统中最常用的远程登录和文件传输工具。了解其版本有助于:
- 判断是否存在已知安全漏洞(如 CVE)
- 确认是否支持特定功能(如 Ed25519 密钥、SFTP 协议增强等)
- 进行系统合规性检查或升级规划
查看 OpenSSH 客户端版本
在终端中执行以下命令:
ssh -V
注意:
ssh -V 输出会发送到标准错误(stderr),因此有时需重定向才能看到完整内容:ssh -V 2>&1
示例输出:
OpenSSH_8.9p1 Ubuntu-3ubuntu0.1, OpenSSL 3.0.2 15 Mar 2022
查看 OpenSSH 服务端(sshd)版本
如果系统运行了 SSH 服务,可通过以下方式查看服务端版本:
/usr/sbin/sshd -V
同样,该命令输出也到 stderr,建议使用:
/usr/sbin/sshd -V 2>&1 | head -n 1
或者通过连接本地 SSH 服务获取横幅(Banner)信息:
ssh -v localhost 2>&1 | grep "OpenSSH"
通过包管理器查询(适用于部分发行版)
Debian/Ubuntu:
dpkg -l | grep openssh
RHEL/CentOS/Fedora:
rpm -qa | grep openssh
或使用 dnf/yum:
dnf list installed | grep openssh
常见问题
Q:为什么 ssh -v(小写 v)不行?
A:小写 -v 表示 verbose 模式(调试输出),而大写 -V 才是显示版本。
Q:没有安装 ssh 命令怎么办?
A:可使用包管理器安装 openssh-client(Debian/Ubuntu)或 openssh-clients(RHEL 系)。