ssh升级

文章目录

ssh升级

一、解包ssh、ssl

复制代码
tar -xzf openssl-1.1.1.tar.gz cd openssl-1.1.1
tar -xzf openssh-9.8p1.tar.gz 

二、更新安装ssl

复制代码
[root@localhost ssh]# cd openssl-1.1.1h/
[root@localhost openssl-1.1.1h]# ./config
[root@localhost openssl-1.1.1h]# make
[root@localhost openssl-1.1.1h]# make install

三、手动更新手动复制库文件

libcrypto.so.1.1libssl.so.1.1 复制到 /usr/local/lib 目录

复制代码
[root@localhost openssl-1.1.1h]# cp libcrypto.so.1.1 /usr/local/lib/
[root@localhost openssl-1.1.1h]# cp libssl.so.1.1 /usr/local/lib/

四、创建符号链接

确保库文件的符号链接正确:

bash 复制代码
ln -s /usr/local/lib/libcrypto.so.1.1 /usr/local/lib/libcrypto.so
ln -s /usr/local/lib/libssl.so.1.1 /usr/local/lib/libssl.so

五、更新库路径

更新动态链接库路径:

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

六、验证库文件

确认库文件已经正确安装并可以被系统识别:

bash 复制代码
ldconfig -p | grep ssl
ldconfig -p | grep crypto

七、设置库路径环境变量

如果库文件不在标准路径中,可以通过设置环境变量来指定库路径:

bash 复制代码
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
export LDFLAGS="-L/usr/local/lib"
export CPPFLAGS="-I/usr/local/include"

八、配置、编译、安装OpenSSH:

bash 复制代码
cd ../openssh-9.8p1
./configure
make
sudo make install

意外:缺少 zlib 的开发库

解决方法:

复制代码
[root@localhost openssh-9.8p1]# yum install zlib-devel

重新配置、编译、安装OpenSSH

复制代码
./configure
make
make install

九、刷新ssh服务、查看ssh版本

bash 复制代码
systemctl  restart	sshd.service
ssh	-V

十、失败后补救

步骤 1: 备份旧的 SSH 配置文件

在进行任何修改之前,建议先备份原有的 SSH 配置文件:

bash 复制代码
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
cp /etc/ssh/ssh_config /etc/ssh/ssh_config.bak

步骤 2: 使用新的 SSH 配置文件

将新的 SSH 配置文件复制到正确的位置:

复制代码
cp /usr/local/etc/sshd_config /etc/ssh/sshd_config
cp /usr/local/etc/ssh_config /etc/ssh/ssh_config

步骤 3: 生成新的主机密钥(如果需要)

默认情况下,OpenSSH 安装过程中已经生成了新的主机密钥。如果需要手动生成新的主机密钥,可以使用以下命令:

复制代码
/usr/local/bin/ssh-keygen -A

步骤 4: 启动 SSH 服务

确保系统使用的是新安装的 OpenSSH 服务,重新启动 SSH 服务:

复制代码
systemctl restart sshd

步骤 5: 验证 SSH 服务

验证 SSH 服务是否正确启动并使用新安装的版本:(如果出现以下情况修改一下环境变量即可)

复制代码
[root@localhost openssh-9.8p1]# ssh -V
[root@localhost openssh-9.8p1]# /usr/local/bin/ssh -V
[root@localhost openssh-9.8p1]# echo 'export PATH=/usr/local/bin:$PATH' >> ~/.bashrc
[root@localhost openssh-9.8p1]# source ~/.bashrc
[root@localhost openssh-9.8p1]# ssh -V

9.8p1]# echo 'export PATH=/usr/local/bin:$PATH' >> ~/.bashrc

root@localhost openssh-9.8p1# source ~/.bashrc

root@localhost openssh-9.8p1# ssh -V

复制代码
![image-20240712150022153](https://img-blog.csdnimg.cn/img_convert/be7985188a05ee0b9ce4f441ee4f23d7.png)
相关推荐
Dontla5 分钟前
手机远程连接WSL2中的Codex CLI:Tailscale私有网络+Termius+OpenSSH+tmux实战(CodexCli)
网络·智能手机
网安蟹佬霸16 分钟前
2026网络安全每日学习计划:每天学多久?学什么?怎么安排?照着做就行!
网络·学习·安全·web安全·学习路线·网安
念恒1230642 分钟前
传输层协议TCP
服务器·网络·tcp/ip
代码方舟1 小时前
零信任架构实战:基于天远车辆过户详版查询构建自动化车辆估值网关
运维·人工智能·架构·自动化
爱研究的小梁1 小时前
打破时延‑带宽悖论|乾元通 QMP‑UDP,为无人载具提供低延时高带宽原生通信方案
网络·网络协议·udp
hkNaruto1 小时前
【游戏】低帧率策略游戏类帧同步保障公平性软件详细设计文档
网络·游戏
比兔代理1 小时前
代理IP池性能瓶颈在哪?并发、带宽与IP质量的平衡优化策略
服务器·网络·tcp/ip·安全
BlueAsia_Lab2 小时前
Wi‑Fi 认证:企业办理需要准备哪些资料?
运维·服务器·网络
恋恋西风2 小时前
TCP 三次握手 / 四次挥手 讲解
网络·网络协议·tcp/ip
Horn Still Sounds2 小时前
Linux网络编程|UDP与TCP传输层协议深度梳理
linux·网络·tcp/ip·udp