常用环境部署(二十九)——Centos升级OpenSSH 10.2p1

1、安装依赖工具

复制代码
# CentOS/RHEL
yum install -y gcc make zlib-devel openssl-devel pam-devel

# Ubuntu/Debian
apt install -y gcc make libssl-dev libpam0g-dev

2、备份原有配置(关键,用于回滚)

复制代码
cp -r /etc/ssh /etc/ssh.bak.$(date +%Y%m%d)
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

3、升级依赖

注意:CentOS 7 自带 OpenSSL 1.0.2,无法直接编译 OpenSSH 10.2+,必须先升级 OpenSSL。

3.1、下载并编译 OpenSSL 1.1.1

复制代码
cd /usr/local/src

wget https://www.openssl.org/source/openssl-1.1.1w.tar.gz

tar -zxvf openssl-1.1.1w.tar.gz
复制代码
cd openssl-1.1.1w

./config --prefix=/usr/local/openssl11 --shared zlib
复制代码
make -j4 && make install

3.2、配置动态链接器

复制代码
echo "/usr/local/openssl11/lib" > /etc/ld.so.conf.d/openssl11.conf

ldconfig

4、编译安装 OpenSSH

4.1、下载最新源码

复制代码
cd /usr/local/src

wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-10.2p1.tar.gz

tar -zxvf openssh-10.2p1.tar.gz

cd openssh-10.2p1

4.2、配置编译(指定新版 OpenSSL 路径)

复制代码
./configure --prefix=/usr \
            --sysconfdir=/etc/ssh \
            --with-ssl-dir=/usr/local/openssl11 \
            --with-zlib \
            --without-openssl-header-check

4.3、编译与安装

复制代码
make -j4 && make install

4.4、修复配置与权限(解决 Access denied)

复制代码
vim /etc/ssh/sshd_config

修改以下内容:

4.5、修复密钥权限

复制代码
chmod 600 /etc/ssh/ssh_host_*_key

chmod 644 /etc/ssh/ssh_host_*_key.pub

chown root:root /etc/ssh/ssh_host_*_key

setenforce 0

ssh-keygen -A

4.6、重启 SSH 服务

复制代码
systemctl restart sshd

4.7、检查状态

复制代码
systemctl status sshd

ssh -V

4.8、本地测试登录(不要退出当前终端,新开终端测试)

复制代码
ssh root@localhost
相关推荐
顶点多余2 小时前
Ext文件系统详解
linux·运维·服务器
圥忈&&丅佽&&扗虖2 小时前
linux 安装 Ollama
linux·服务器
kabu_Charlie2 小时前
使用Docker运行python程序
运维·docker·容器
cyber_两只龙宝2 小时前
【Keepalived】抢占模式、延迟抢占模式与非抢占模式详解
linux·运维·服务器·keepalived
REDcker2 小时前
CentOS 与主流 Linux 发行版历史与版本综述
linux·centos·numpy
劳埃德福杰2 小时前
【Kylin银河麒麟】文件系统磁盘空间满导致无法进入操作系统
运维·服务器·电脑·笔记本电脑·kylin
逻辑峰2 小时前
ReadStat在Linux的安装和使用
linux·运维·服务器
Lsir10110_3 小时前
【Linux】序列化与反序列化——网络计算器的实现
linux·运维·网络
脆皮的饭桶3 小时前
给负载均衡做高可用的工具Keepalived
运维·服务器·负载均衡