(胎教级)Centos7.x完全断网升级OpenSSL3.x、OpenSSH9.x以及任意版本

这篇具有很好参考价值的文章主要介绍了(胎教级)Centos7.x完全断网升级OpenSSL3.x、OpenSSH9.x以及任意版本。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Centos7都自带一个OpenSSH7.4p1,算是个祸害。只要这东西没卸载就会被漏扫发现,本教程最后会彻底干掉他

如果安装过程有错误不能解决的可以留言我完善教程,教程是胎教级,所以做到尽量简单,有基础的可以根据自己的理解调整,所以别问为啥不用多线程、动态链接库等问题了。

前置准备

1、openssl-3.x.x.tar.gz

OpenSSL官网
openssh9.7 without ssl,后端,linux,centos,ssh,ssl
任选一个即可、本教程选择3.2.1

2、openssh-9.7p1.tar.gz

OpenSSH官网
openssh9.7 without ssl,后端,linux,centos,ssh,ssl
点击最新版本,进入发行说明书
openssh9.7 without ssl,后端,linux,centos,ssh,ssl
找到SHA校验,随便点一个文件名链接就能下载源码。

3、perl-5.38.2.tar.gz

Perl官网
openssh9.7 without ssl,后端,linux,centos,ssh,ssl
找到Unix,下载源码。下载源码不需要登录,直接就能下。

4、zlib.tar.gz

Zlib官网
openssh9.7 without ssl,后端,linux,centos,ssh,ssl
点击Zlib最新版本链接,就能直接拿到最新版源码,点这里的链接也行。

编译安装

教程分五步,1:编译安装配置Perl,2:编译安装配置Zlib,3:编译安装配置OpenSSL,4:编译安装配置OpenSSH,5:卸载旧版本、启动新的OpenSSH

1、编译安装配置Perl

如果系统已经有了环境比较齐全的Perl,可以跳过此步骤,如果不知道有没有,或者不知道环境齐不齐全,统一当作没有,不跳过此步骤

我将Perl上传到 /www 目录下,并且改名为 perl.tar.gz
openssh9.7 without ssl,后端,linux,centos,ssh,ssl

cd /www
tar -zxvf perl.tar.gz
#cd到解压出来的目录中,解压出来是啥就cd到啥地方,这里解压出来的目录就是perl-5.38.2
cd perl-5.38.2/

配置、安装Perl

#配置安装目录为/usr/local/perl,有需要可以自行选择其他目录
./Configure -des -Dprefix=/usr/local/perl
#编译
make
#安装
make install

如下图,没报错就是装好了
openssh9.7 without ssl,后端,linux,centos,ssh,ssl
配置环境变量,把刚刚安装完毕的Perl配置到系统变量中

#如果没有nano,也可以用别的,比如vi、vim都可以,反正是个文本,能编辑就随意
nano ~/.bash_profile

在文件最末尾增加一行

#这里的/usr/local/perl是上面配置的安装目录,如果配置了别的安装目录可以自行修改
#但是后面的/bin是固定的
export PATH=/usr/local/perl/bin:$PATH

保存修改后刷新,让环境变量生效

#刷新环境变量
source ~/.bash_profile
#查看Perl版本
perl -v

显示的版本号与自己下载的版本号一致,就算安装配置Perl完成
openssh9.7 without ssl,后端,linux,centos,ssh,ssl

2、编译安装配置Zlib

我把zlib.tar.gz上传到/www
openssh9.7 without ssl,后端,linux,centos,ssh,ssl
开始解压,配置,安装

#解压文件
tar -zxvf zlib.tar.gz
cd zlib-1.3.1/
#配置安装目录,有需要的可以自行更改
./configure --prefix=/usr/local/zlib
#编译
make
#安装
make install

安装完毕后,开始配置环境变量

#如果没有nano,也可以用别的,比如vi、vim都可以,反正是个文本,能编辑就随意
nano ~/.bash_profile

在文件末尾增加以下行

export LD_LIBRARY_PATH=/usr/local/zlib/lib:$LD_LIBRARY_PATH

刷新缓存

source ~/.bash_profile

运行以下命令后,如果有输出include、lib、share文件夹,就算安装完成了(实际上不算,得编译一下使用zlib头文件的代码才行,这里是基础教程,只要输出了这三个文件夹名称问题就不大)

ls /usr/local/zlib

openssh9.7 without ssl,后端,linux,centos,ssh,ssl

3、编译安装配置OpenSSL

我把openssl-3.2.1.tar.gz上传到/www,并且重命名为openssl
openssh9.7 without ssl,后端,linux,centos,ssh,ssl
开始解压,配置,安装

#解压文件
tar -zxvf openssl.tar.gz
cd openssl-3.2.1
#配置安装目录,有需要的可以自行更改
./config --prefix=/usr/local/openssl
#编译
make
#安装
make install

安装完毕后,开始配置环境变量

#如果没有nano,也可以用别的,比如vi、vim都可以,反正是个文本,能编辑就随意
nano ~/.bash_profile

在文件末尾增加以下两行,之前升级过1.1版本OpenSSL的在这里就能看出端倪了
LD_LIBRARY_PATH的路径由原本的openssl/lib,变成了openssl/lib64,所以,如何你要安装的是1.1.1.x版本的OpenSSL的话,这里就应该把/openssl/lib64改成/openssl/lib,不然会导致OpenSSH编译不出,就算因为遗留文件编译成功,版本也不对,通过下面的服务也启动不起来

export PATH=/usr/local/openssl/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/openssl/lib64:$LD_LIBRARY_PATH

增加完毕之后刷新缓存

source ~/.bash_profile
ldconfig

查看版本正常的话,OpenSSL就算安装完成了

openssl version

openssh9.7 without ssl,后端,linux,centos,ssh,ssl

4、编译安装配置OpenSSH

我将openssh-9.7p1.tar.gz上传到/www,并改名为openssh.tar.gz
openssh9.7 without ssl,后端,linux,centos,ssh,ssl
解压,安装,配置

#解压文件
tar -zxvf openssh.tar.gz
cd openssh-9.7p1
#配置安装目录,OpenSSH安装在/usr/local/openssh,配置文件放在/etc/ssh,指定刚刚安装的OpenSSL目录
./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/openssl --with-zlib=/usr/local/zlib
#编译
make
#安装
make install

安装完成后,设置环境变量

#如果没有nano,也可以用别的,比如vi、vim都可以,反正是个文本,能编辑就随意
nano ~/.bash_profile

在文件最下面新增一行

export PATH=/usr/local/openssh/bin:$PATH

增加完毕后刷新系统变量

source ~/.bash_profile

输入查看版本的命令,OpenSSH和OpenSSL的版本对的上自己下载的,就算是安装完成

ssh -V

openssh9.7 without ssl,后端,linux,centos,ssh,ssl

修改OpenSSH的配置文件

新安装的OpenSSH不允许root用户登录,没有x11转发,图形不好用等,需要配置

nano /etc/ssh/sshd_config

增加以下行

X11Forwarding yes
X11UseLocalhost no
XAuthLocation /usr/bin/xauth
UseDNS no
PermitRootLogin yes
PubkeyAuthentication yes
PasswordAuthentication yes
Subsystem sftp /usr/local/openssh/libexec/sftp-server

增加完毕后保存退出即可。

4、启动OpenSSH

由于我们系统自带了一个OpenSSH7.4p1和OpenSSL1.0.2k,OpenSSH比较特殊、所以无论是安没安装新版本,都会被扫到,所以这里我们要卸载掉系统自带的
首先卸载OpenSSH

yum remove openssh

再卸载OpenSSL

yum remove openssl

检查一下是否卸载干净

rpm -qa | grep openssh
rpm -qa | grep openssl

不出意外的话,运行rpm -qa | grep openssl的时候,会出现两个包没被卸载掉,有其他软件依赖他,因为是胎教级教程,所以这两个不影响楼栋扫描的包,就不处理了。
接下来就要启动新的OpenSSH,由于我们已经把OpenSSH卸载掉了,所以服务肯定是没了,我们要创建新的服务
我不是很会配这些服务,所以用gpt配了一下,按照上面的教程安装配置的,可以直接复制粘贴以下服务。

#创建一个服务用于启动sshd
nano /etc/systemd/system/sshd.service

在新创建的service中粘贴以下配置

[Unit]
Description=OpenSSH server daemon
After=network.target

[Service]
ExecStart=/usr/local/openssh/sbin/sshd -D
ExecReload=/bin/kill -HUP $MAINPID
Environment="LD_LIBRARY_PATH=/usr/local/openssl/lib64:/usr/local/zlib/lib"
KillMode=process
Restart=on-failure

[Install]
WantedBy=multi-user.target

粘贴完成之后保存即可,保存完成之后就可以启动了。

#刷新所有service
sudo systemctl daemon-reload
#启动sshd服务
sudo systemctl restart sshd
#查看sshd服务状态
sudo systemctl status sshd

出现下图就算是启动完成
openssh9.7 without ssl,后端,linux,centos,ssh,ssl

结尾、以及删除、善后等

该教程是OpenSSL3.X的胎教级教程,不适用1.1,并非标准教程,但是完全避免了使得sshd服务停止运行而导致ssh连接断开,去沟通vnc介入,非常麻烦,深有体会。
该教程没有覆盖原本的OpenSSH,而是在其他文件夹自己放了一个,通过系统变量让系统连接,这么做非常干净,没有留下一点污染。
因此,如果未来不用这篇教程里面的东西了,就可以按照以下步骤,完全彻底清理掉本次安装的东西。

1、删除环境变量

nano ~/.bash_profile

删除掉底部增加的几行,如果按照教程做的话,底部应该是这几行
openssh9.7 without ssl,后端,linux,centos,ssh,ssl
删除掉以下几行

export PATH=/usr/local/perl/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/zlib/lib:$LD_LIBRARY_PATH
export PATH=/usr/local/openssl/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/openssl/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/openssh/bin:$PATH

保存,并执行刷新

source ~/.bash_profile

2、删除安装目录

上述教程的软件都安装在/usr/local中,与系统自带的东西不冲突,需要的时候直接删除即可

rm -rf /usr/local/openssl
rm -rf /usr/local/openssh
rm -rf /usr/local/zlib
rm -rf /usr/local/perl

3、删除服务和配置

安装openssh之后,我们创建了sshd服务和etc中的配置文件,现在也一并删除

rm -rf /etc/systemd/system/sshd.service
rm -rf /etc/ssh

到此,就算是删除完成,没留下一点东西,干净得很。
教程到这里也就结束了,胎教级教程,会打命令就能跟着做,若是有报错可以留言解决。文章来源地址https://www.toymoban.com/news/detail-844675.html

到了这里,关于(胎教级)Centos7.x完全断网升级OpenSSL3.x、OpenSSH9.x以及任意版本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 再写CentOS7升级OpenSSL-1.0.1U

    本文在CentOS7.4以及TencentOS 2.4上测试通过。 原系统自带OpenSSL 1.0.2k-fips。 编译安装方法跟之前的没啥区别。 从官网下载1.0.1u版https://www.openssl.org/source/ 使用tar解包 tar xfz openssl-1.0.1u.tar.gz 依次执行如下: cd openssl-1.0.1u ./config shared zlib make make install 以上执行完毕,开始修改配置。

    2024年02月11日
    浏览(27)
  • CentOS7 OpenSSL升级1.1.1w;OpenSSH 升级 9.5p1 保姆级教程

      OpenSSH 的加密功能需要用到OpenSSL,所以在升级OpenSSH的时候,大部分情况是需要将OpenSSL一起升级的。 这里我们选择先升级OpenSSL到OpenSSL 1.1.1w  11 Sep 2023 然后再升级OpenSSH 到OpenSSH_9.5p1, OpenSSL 1.1.1w  11 Sep 2023 两个都是最新版本,方便大家食用。 在升级之前先将需要的包上传到

    2024年02月08日
    浏览(50)
  • centos7.9升级openssl以解决pip安装过程中的问题

    查看原来openssl的版本 下载新的包 下载有点慢啊,酌情考虑使用国内源镜像吧。 安装 增加配置并使其生效 链接新版本 最后查看openssl版本验证。 因为ssl的1.0.2已经无法支持高版本的python,为了防止后面使用pip的时候出现问题,必须做一个升级。 现在重新编译安装python3.10 下

    2024年02月12日
    浏览(38)
  • CentOS7下rpm包方式升级openssl到安全版本1.1.1q

    参考链接:https://cloud.tencent.com/developer/article/1767718 OpenSSL 是一个安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。 OpenSSL是Openssl团队的一个开源的能够实现安全套接层(SSLv2/v3)和安全传输

    2024年02月05日
    浏览(31)
  • centos7.5升级openssh9.3p1,openssl1.1.1t

    注意:升级后由于加密算法的区别,低版本的SSH工具可能无法连接,建议改用Xshell7或SecureCRT9.0以上版本。 一、安装前查看系统及版本 二、安装步骤 1.下载tar包 解压到指定路径: 2.安装zlib 3.安装openssl 4.安装openssh 5.修改配置文件 (1)sshd_config文件修改 需要添加X11Forwarding y

    2024年02月16日
    浏览(39)
  • centos7下升级openssh9.4p1及openssl1.1.1v版本

    背景:客户服务器扫描出一些漏洞,发现和版本有关,漏洞最高的版本是9.3p2,所以我们安装一个openssh9.4p1版本及openssl1.1.1v版本 虽然我们进行了镜像备份,为了安全先安装telnet以防止升级失败无法通过ssh连接服务器 一、安装telnet 1、安装配置telnet,一般Linux系统自带telnet客户

    2024年01月21日
    浏览(45)
  • centos7.9和redhat6.9 离线升级OpenSSH和openssl (2023年的版本)

    1.1升级操作 完成升级SSH 参考并感谢up主: 澎湃的福流 BV1s94y1Z7J3

    2024年02月11日
    浏览(37)
  • ubuntu 22.04 升级openssh9.6p1 ,openssl3.2.0,zlib1.3

    参考:https://blog.csdn.net/weixin_37534043/article/details/120822689 https://blog.csdn.net/xujiamin0022016/article/details/87817124 (34条消息) ubuntu20.4升级OpenSSL和OpenSSH_ubuntu升级openssh最新版_lqh_linux的博客-CSDN博客 *由于openssl1版本官方早已明确声明不再继续支持,建议尽早转移使用openssl3*版。 一、安装包

    2024年01月22日
    浏览(44)
  • ubuntu 22.04 升级openssh9.5p1 ,openssl3.2.0,zlib1.3

    参考:https://blog.csdn.net/weixin_37534043/article/details/120822689 https://blog.csdn.net/xujiamin0022016/article/details/87817124 (34条消息) ubuntu20.4升级OpenSSL和OpenSSH_ubuntu升级openssh最新版_lqh_linux的博客-CSDN博客 *由于openssl1版本官方早已明确声明不再继续支持,建议尽早转移使用openssl3*版。 一、安装包

    2024年02月03日
    浏览(34)
  • Centos7 openSSL

    阅读时长:10分钟 本文内容: 在阿里云Centos7上部署python3.10.6项目时遇到openSSL协议不支持,导致无法下载第三方包 本文目的: 通过手动编译,升级openssl版本 centos7 重编译 python3.10.6 github下载缓慢解决 镜像源记录 整个部署问题的起因就是centos7上系统上自带的openssl版本太低了

    2024年02月01日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包