在 CentOS 上“更新 SSH 版本”通常指更新 OpenSSH(CentOS 自带的服务一般叫 openssh-server)。下面按推荐程度给你几种做法。
CentOS 官方仓库里的 OpenSSH 虽然不是最新大版本,但会持续打安全补丁,生产环境最稳妥。
ssh -V
rpm -qa | grep openssh
sudo yum update openssh openssh-server openssh-clients
或一次性更新所有安全补丁:
sudo yum update
sudo systemctl restart sshd
sudo systemctl enable sshd
✅ 适合:生产服务器、不想折腾编译的人
CentOS 7 官方 OpenSSH 很老(7.4),如果你想稍新一点:
sudo yum install https://repo.ius.io/ius-release-el7.rpm
sudo yum install openssh-server openssh-clients
⚠️ 注意:
如果你必须用最新版(如 OpenSSH 9.x):
sudo yum groupinstall "Development Tools"
sudo yum install pam-devel zlib-devel openssl-devel
cd /usr/local/src
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.7p1.tar.gz
tar zxvf openssh-9.7p1.tar.gz
cd openssh-9.7p1
./configure --prefix=/usr --sysconfdir=/etc/ssh
make
sudo make install
sudo systemctl restart sshd
⚠️ 风险:
✅ 建议:仅测试环境或特殊需求
✅ 更新前:
sudo cp -r /etc/ssh /etc/ssh.bak
✅ 不要断开当前 SSH 连接
✅ 建议开启 第二个会话或 console 访问
| 情况 | 建议 |
|---|---|
| 只是安全补丁 | yum update ✅ |
| CentOS 7 老版本 | 可接受官方版 |
| 需要 SSH 新特性 | 编译或换系统 |
| 生产环境 | 不建议手动编译 |
如果你告诉我:
我可以给你最合适、最安全的具体命令。