OpenSSH从7.4升级到9.8的过程 亲测--图文详解

news/2024/9/21 14:05:18/

 一、下载软件

  下载openssh    下载地址:   Downloads | Library

下载openssl

Index of /pub/OpenBSD/OpenSSH/

zlib Home Site

安装的 openssl-3.3.1.tar.gz ,安装3.3.2有问题  安装有问题,

二、安装依赖

yum install -y perl-CPAN perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker

三、安装 openssl-3.3.1.tar.gz

解压斌进入 openssl 


编译  执行./config --prefix=/usr/local/openssl --shared 生成MakeFile文件

./config --prefix=/usr/local/openssl --shared

make -j4 && make -j4 install

#路径写入etc/ld.so.conf

echo '/usr/local/openssl/lib64' >> /etc/ld.so.conf

 #备份ssh配置文件

cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
cp -p /usr/sbin/sshd /usr/sbin/sshd.bak
cp -p /usr/bin/ssh /usr/bin/ssh.bak
cp -p /usr/bin/ssh-keygen /usr/bin/ssh-keygen.bak
cp -p /etc/ssh/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub.bak

删除旧的软链接

rm -rf  /usr/bin/openssl
rm -rf  /usr/include/openssl  
rm -rf  /usr/lib64/libssl.so  
rm -rf /usr/lib64/libcrypto.so.1.0.2k



创建新的openssl软链接

ln -s /usr/local/openssl/include/openssl /usr/include/openssl  
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/lib/libssl.so.3 /usr/lib64/libssl.so 
ln -s /usr/local/openssl/lib/libcrypto.so.3 /usr/lib64/libcrypto.so.3

使修改后的/etc/ld.so.conf生效

 ldconfig -v

验证是否成功安装

查看openssl版本

openssl version -a

四、安装  zlib

用浏览器打开下载 http://www.zlib.net/zlib-1.2.11.tar.gz     可以去官网自己下载

tar -xvzf zlib-1.2.11.tar.gz cd zlib-1.2.11 ./configure make make install

tar -xvzf zlib-1.2.11.tar.gz
cd zlib-1.2.11
./configuremake -j4 && make -j4 install

五、安装openssh

openssh 我下载的是9.8的版本 
https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz

解压 tar xvf openssh-9.8p1.tar.gz

进入解压目录

./configure --prefix=/usr/local/openssh    --with-ssl-dir=/usr/local/openssl --with-zlib  

make -j4 && make -j4 install

#ssh允许root登录、需要密码进行验证

echo 'PermitRootLogin yes' >>/usr/local/openssh/etc/sshd_config
echo 'PubkeyAuthentication yes' >>/usr/local/openssh/etc/sshd_config
echo 'PasswordAuthentication yes' >>/usr/local/openssh/etc/sshd_config


 #将编译安装的新配置文件 拷贝到原路径下

#删除旧的rm -rf    /etc/ssh/sshd_config
rm -rf    /usr/sbin/sshd
rm -rf    /usr/bin/ssh
rm -rf    /usr/bin/ssh-keygen
rm -rf    /etc/ssh/ssh_host_ecdsa_key.pub#复制新的
cp /usr/local/openssh/etc/sshd_config /etc/ssh/sshd_config
cp /usr/local/openssh/sbin/sshd /usr/sbin/sshd
cp /usr/local/openssh/bin/ssh /usr/bin/ssh
cp /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen
cp /usr/local/openssh/etc/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub

#拷贝启动脚本

cp -p contrib/redhat/sshd.init /etc/init.d/sshd

#给sshd添加可执行权限

chmod +x /etc/init.d/sshd

#设置开机自启

systemctl enable sshd

#重新启动sshd服务

systemctl restart sshd

#查看sshd服务状态

systemctl status sshd

#查看ssh版本是否升级成功,可以查看到已经是9.5版本了

ssh -V 

3.3.2安装报错 还没解决。。。。。。

(base) [root@localhost openssl-3.3.2]# ./config shared
Can't locate IPC/Cmd.pm in @INC (@INC contains: /opt/openssl-3.3.2/util/perl /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 . /opt/openssl-3.3.2/external/perl/Text-Template-1.56/lib) at /opt/openssl-3.3.2/util/perl/OpenSSL/config.pm line 19.
BEGIN failed--compilation aborted at /opt/openssl-3.3.2/util/perl/OpenSSL/config.pm line 19.
Compilation failed in require at /opt/openssl-3.3.2/Configure line 23.
BEGIN failed--compilation aborted at /opt/openssl-3.3.2/Configure line 23.

yum install perl-IPC-Cmd -y


http://www.ppmy.cn/news/1528423.html

相关文章

数据结构之算法复杂度

目录 前言 一、复杂度的概念 二、时间复杂度 三、大O的渐进表示法 四、空间复杂度 五、常见复杂度对比 总结 前言 本文主要讲述数据结构中的算法复杂度 一、复杂度的概念 算法在编写成可执行程序后,运行时需要耗费时间资源和空间(内存)资源。因此衡量一个算法的好坏…

并发容器(Map、List、Set)实战及其原理分析

1. JUC包下的并发容器 Java的集合容器框架中,主要有四大类别:List、Set、Queue、Map,大家熟知的这些集合类ArrayList、LinkedList、HashMap这些容器都是非线程安全的。 所以,Java先提供了同步容器供用户使用。同步容器可以简单地…

【24华为杯数模研赛赛题思路已出】国赛F题思路丨附参考代码丨免费分享

2024年华为杯研赛F题解题思路 F题 X射线脉冲星光子到达时间建模 问题1 1.1题目分析 问题1 要求我们建立卫星轨道根数与其位置和速度关系的数学模型。轨道根数(或轨道参数)包括偏心率 e 、角动量 h 、轨道倾角 i 、真近点角 θ 、升交点赤经Ω 和近地点…

华为云ROMA Connect聚焦创新,在Gartner®峰会发布智能集成新视角

9月9日-9月10日,Gartner全球应用创新及商业解决方案峰会在伦敦举行,围绕企业应用策略、智能平台工程和生成式AI,来自全球的1700业内专家共同探讨新趋势带来的机遇和挑战。华为云ROMA Connect发表 “人工智能”主题演讲之一,展现新…

关于网络、模型、算法的一些理论知识补充(重新在概念上定义自己研究的方向!!!)

其实,我之前有点分不太清这些网络、模型、算法到底是谁是谁,谁又包含谁?就比如说,我导师问我想搞什么,我说我想研究算法,但是我好像又不是特别清楚,算法究竟是个什么玩意?我想做的东…

mysql学习教程,从入门到精通,SQL ORDER BY 子句(14)

1、SQL ORDER BY 子句 在本教程中,您将学习如何对SELECTSQL查询返回的数据进行排序。 1.1、对结果集排序 通常,当您使用SELECT语句从表中获取数据时,结果集中的行没有任何特定的顺序。如果要按特定顺序排列结果集,则可以在语句…

Spring Boot-分布式系统问题

Spring Boot 在分布式系统中的常见问题及解决方案 随着互联网的发展,系统规模和复杂度越来越大,分布式系统成为应对高并发、大数据量场景的重要架构选择。Spring Boot 作为一种轻量级的开发框架,广泛应用于构建微服务和分布式系统中。然而&a…

navicat无法连接远程mysql数据库1130报错的解决方法

出现报错:1130 - Host ipaddress is not allowed to connect to this MySQL serve navicat,当前ip不允许连接到这个MySQL服务 解决当前ip无法连接远程mysql的方法 1. 查看mysql端口,并在服务器安全组中放开相应入方向端口后重启服务器 sud…