oracle linux 95 升级openssh 10 和openssl 3.5 过程记录

发布于:2025-05-17 ⋅ 阅读:(25) ⋅ 点赞:(0)

1.  安装操作系统,注意如果可以选择,选择安装开发工具,主要是后续需要编译安装,需要gcc 编译工具。

2. 安装操作系统后,检查zlib 、zlib-dev是否安装,如果没有,可以使用安装镜像做本地源安装,在编译openssh 需要使用。

(1)  挂载安装镜像

   mount  /dec/cdrom /mnt

(2) 修改yum 配置

(3) yum makecache

     

 (4) 安装gcc 

    yum install gcc

3. 安装操作系统后,检查perl 是否安装,如果没有,可以使用安装镜像做本地源安装,编译openssl 的脚本是使用perl编写的。 

4. 编译安装openssl 

(1)上传解压

 (2)./Configure --prefix=/usr/local/openssl 

   (3)  make

   (4) make install 

  make 和make install的过程比较长,需耐心等待。如果没有报错则进行下一步,如果有报错需要解决报错问题。

 (5)执行如下操作:

     mv   /usr/bin/openssl /usr/bin/openssl.bk

     mv  /usr/include/openssl   /usr/include/openssl.bk    (oraclelinux 95 中没有这个目录)

     cp  /usr/local/openssl/bin/openssl /usr/bin/openssl    ( 替代就版本的执行程序)

     cp -R /usr/local/openssl/include/   /usr/include/   

         (注意最后的斜线,意识就是将include下的opessl目录拷贝到对应 目录中)

      

   这时 openssl version命令会报错:

     

       

  原因在于openssl 编译安装后的新版本的lib库文件还没有与系统关联

  之前的做法是使用以下方式强行关联

        export LD_LIBRAY_PATH = /usr/local/openssl/lib64:$LD_LIBRARY_PATH 

       ldconfig -v 

   这样暂时看到openssl version  是可以执行成功的,但打开终端时会报错:  

     flatpak:symbol lookup error:  /lib64/libldap.so.2: undefined symbol:EVP md2,version OPENSSL 3.0.0

   实际上上无需如此,报错的两个文件实际上在编译安装后的/usr/local/openssl/lib64目录中是存在的,只需建立软连接即可。注意软连接要先删除再创建,直接用cp覆盖是不行的。

     rm /lib64/libssl.so.3

     rm /lib64/libcrypto.so.3

    ln -s /usr/lcoal/openssl/lib64/libcrypto.so.3  /lib64/libcrypto.so.3

     ln -s /usr/lcoal/openssl/lib64/libssl.so.3  /lib64/libssl.so.3

  (6)检查:

       执行 openssl  version 看下,或者ssh -V 看下openssl 的版本是否 升级到新版本

       重启系统,再检查下openssl的版本,并打开一个终端,看是否有报错。 

    

5.  编译安装openssh

(1)上传解压

 (2)   ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-openssl-inludes=/usr/local/openssl/include -with-ssl-dir=/usr/local/openssl --with-zlib --with-pam

注: 如果不使用pam 也可以不用带后面这个with-pam参数。  

   (3)make

   (4)  make install


网站公告

今日签到

点亮在社区的每一天
去签到