【Linux】openssh内网环境下升级_内网升级openssh-程序员宅基地

技术标签: Linux  linux  服务器  centos  

因公司多数环境处于内网中,无法联网更新,本篇内容主要讲内网更新方法。本篇内容虽经过多次实测,但建议参照本篇升级时先在测试环境进行验证。

所需环境:

本地搭建可连接网络的测试环境,供下载相关的依赖包

一、查看当前机器的版本号

ssh -V

二、了解当前最新openssh与对应兼容的openssl版本信息

OpenSSHthe main OpenSSH pageicon-default.png?t=N7T8https://www.openssh.com/

以下可以看到最新的是openssh9.4版本,其对应的openssl版本是 >= 1.1.1


三、下载对应的openssh、openssl包

openssh : Index of /pub/OpenBSD/OpenSSH/portable/icon-default.png?t=N7T8https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/

openssl : /source/old/1.1.1/index.htmlicon-default.png?t=N7T8https://www.openssl.org/source/old/1.1.1/


四、下载openssh相关依赖包

#该命令是下载rpm包到指定目录中,以下命令的意思是下载zlib、zlib-devel、openssl-devel、pam-devel相关包到/usr/local/powersmart/ssl目录下
yum install --downloadonly --downloaddir=/usr/local/powersmart/ssl zlib zlib-devel openssl-devel pam-devel

后面在进行编译openssh时,缺失包就在下载对应的包即可,这里只是列了常用所需的依赖包,如果服务器上没有gcc的话,还需要加上gcc 、gcc++

五、编译安装dropbear(可选)

dropbear是一款轻量级的ssh工具,安装这个工具主要是防止升级openssh的过程中出现问题后,导致我们无法在连接我们的服务器,保险起见建议安装。

5.1 下载dropbear

Index of /dropbearicon-default.png?t=N7T8https://matt.ucc.asn.au/dropbear/

5.2 解压dropbear文件
 tar jxvf dropbear-2022.82.tar.bz2

5.3 编译安装dropbear
cd dropbear-2022.82
./configure
make  && make install

5.4 配置dropbear,生成密钥
mkdir /etc/dropbear
/usr/local/bin/dropbearkey -t dss -f /etc/dropbear/dropbear_dss_host_key
/usr/local/bin/dropbearkey -t rsa -s 4096 -f /etc/dropbear/dropbear_rsa_host_key

5.5 启动dropbear,注意启动后需要开放2222端口访问权限
/usr/local/sbin/dropbear -p 2222

#要是服务器有防火墙的话要打开,且要保存iptables策略,这里就不做演示了。
iptables -I INPUT -p tcp --dport 2222 -j ACCEPT

5.6 登录验证

六、编译安装openssl

6.1 解压openssl
tar -zxvf openssl-1.1.1p.tar.gz

6.2 编译openssl
#该命令是编译到/usr/local/openssl_1_1_1_p下,这里建议openssl以其版本号命名,我是1.1.1p版本,所以命名为openssl_1_1_1_p
./config --prefix=/usr/local/openssl_1_1_1_p

6.3 安装openssl
#编译成功后,执行安装命令
make && make install

6.4 备份旧版openssl
mv /usr/bin/openssl /usr/bin/openssl.bak

6.5 建立软链接
ln -sf /usr/local/openssl_1_1_1_p/bin/openssl /usr/bin/openssl
echo "/usr/local/openssl_1_1_1_p/lib" >> /etc/ld.so.conf
ldconfig -v

6.6 验证版本
openssl version

七、编译安装openssh

7.1 强制安装所有相关rpm依赖包,也可以逐个安装,我这里图省事
rpm -Uvh  *.rpm  --nodeps  --force 

7.2 解压openssh
tar -zxvf openssh-9.4p1.tar.gz

7.3 编译openssh,注意替换自己的ssl的目录,即--with-openssl-includes、--with-openssl-includes两个参数替换
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib --with-md5-passwords --with-tcp-wrappers --with-openssl-includes=/usr/local/openssl_1_1_1_p/include --with-openssl-includes=/usr/local/openssl_1_1_1_p

小tips:使用命令 echo $? 可以检查编译是否异常,0正常否则异常

7.4 安装openssh
make && make install

7.5 验证ssh启动是否会存在异常
sshd -T

我这里显示有三个文件是没有权限的,对这三个进行授权

chmod 600 /etc/ssh/ssh_host_rsa_key
chmod 600 /etc/ssh/ssh_host_ecdsa_key
chmod 600 /etc/ssh/ssh_host_ed25519_key

授权后在sshd -T 确认是否还有其他问题

此处查看无报错信息后进行下一步

7.6 配置root登录
cd /etc/ssh/
vi sshd_config
#PermitRootLogin yes   去掉#

7.7 重启ssh服务
重启
service sshd restart

7.8 重新连接测试验证版本号
ssh -V

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/xwb602625136/article/details/134457479

智能推荐

Weblogic集群部署详解_weblogic集群部署步骤-程序员宅基地

文章浏览阅读456次。Weblogic集群部署详解_weblogic集群部署步骤

Colossal Fibonacci Numbers! UVA-11582_colossal fibonacci numbers! uva - 11582-程序员宅基地

文章浏览阅读118次。题意紫书第十章的题目。多组数据,每次给出三个数a,b,n,(a,b<2642^{64}264,n<=1000),问第aba^{b}ab个斐波那契数模n的值。斐波那契数列从f(0)=0,f(1)=1开始。题解因为是要求出f(ab)f(a^{b})f(ab)%n的值,所以先在%n条件下算出斐波那契数列。算到哪里结束呢?注意到在%n条件下,斐波那契数列如果前两个数相同,则由递推公式f(i)=f(i−1)+f(i−2)f(i)=f(i-1)+f(i-2)f(i)=f(i−1)+f(i−2),第三个_colossal fibonacci numbers! uva - 11582

HTML基础语法总结_html基本语法共有几种-程序员宅基地

文章浏览阅读454次。Leftmargin topmargin用来调整链接或文字位置Text用来调整字体颜色点击进入百度页面 添加链接alink点击时链接 link当前显示链接 vlink点击后链接 主要用来控制链接字体的颜色bgcolor用来设置背景颜色background用来设置背景图片(GIF、JPG)background=fixed使背景图片成固定效果,不随滚动条_html基本语法共有几种

分享10个超级实用的Python自动化脚本_python写一个脚本-程序员宅基地

文章浏览阅读1w次,点赞13次,收藏262次。在日常的工作学习当中,我们总会遇到各式各样的问题,其中不少的问题都是一遍又一遍简单重复的操作,不妨直接用Python脚本来自动化处理。今天我就给大家分享10个Python高级脚本,帮助我们减少无谓的时间浪费,提高工作学习中的效率。 喜欢记得收藏、关注、点赞。注:完整版代码、数据、技术交流文末获取给照片添加水印给照片添加水印的代码多种多样,下面这种的或许是最为简单的形式,from PIL import Imagefrom PIL import ImageFontfrom PIL import _python写一个脚本

《信息学奥赛一本通 初赛真题解析》第四章 阅读程序 第9节 树和图_信息学奥赛一本通+"第四章 阅读程序"+filetype:pptx-程序员宅基地

文章浏览阅读60次。《信息学奥赛一本通 初赛真题解析》第四章 阅读程序 第9节 树和图_信息学奥赛一本通+"第四章 阅读程序"+filetype:pptx

Android 类似360悬浮窗口实现源码-程序员宅基地

文章浏览阅读195次。当我们在手机上安装360安全卫士时,手机屏幕上时刻都会出现一个小浮动窗口,点击该浮动窗口可跳转到安全卫士的操作界面,而且该浮动窗口不受其他activity的覆盖影响仍然可见(多米音乐也有相关的和主界面交互的悬浮小窗口)。它能悬浮在手机桌面,且不受Activity界面的影响,说明该悬浮窗口是不隶属于Activity界面的,也就是说,他是隶属于启动它的应用程序所在进程。如360App所在的应用进程..._android 模仿360悬浮窗口

随便推点

(算法)通俗易懂的字符串匹配KMP算法及求next值算法_kmp算法next计算方法-程序员宅基地

文章浏览阅读10w+次,点赞979次,收藏2.6k次。大多数据结构课本中,串涉及的内容即串的模式匹配,需要掌握的是朴素算法、KMP算法及next值的求法。在考研备考中,参考严奶奶的教材,我也是在关于求next值的算法中卡了一下午时间,感觉挺有意思的,把一些思考的结果整理出来,与大家一起探讨。以下的顺序为1、最基本的朴素算法2、优化的KMP算法3、应算法需要定义的next值4、手动写出较短串的next值的方法5、最难理解的、足足有5行的代码..._kmp算法next计算方法

为什么工厂招工越来越难-程序员宅基地

文章浏览阅读688次。什么原因导致工厂招工越来越难?辞职农民工说出里面的心酸说到工厂,里面打工的人,几乎都是农村的,每年一过完年出来打工,他们都是直奔工厂,因为条件有限,他们在大城市根本没有更好的选择,只有选择工厂上班,毕竟工厂对学历没有太大的要求,要知道,现在大学生找工作都难,何况这些从农村出来的,可是现在,工厂为什么越来越难招工?这是什么原因导致的,很多人辞职去外面做事,也..._招工难博客

Vue.js菜鸟教程自学(一)_vue.js 菜鸟教程-程序员宅基地

文章浏览阅读1.1w次,点赞2次,收藏19次。导入js:一、hello vue<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title><script src="https://cdn.staticfile.org/vue/2.2.2/vue...._vue.js 菜鸟教程

提高社群活跃度的10个方法_房产社群提升群活跃度-程序员宅基地

文章浏览阅读243次。要想做好社群运营,除了朋友圈搭建、线下活动组织、产品制度设计外,最重要的一点就是群内的维护。群内的维护也不仅仅是靠群规、群主的维系,还要配合一些活动来提升社群的活跃、用户参与和认同。今天为大家罗列一些,做社群运营常用的一些促活、催单的小互动、小游戏。因为不同社群适合的活动不一样的,因此大家根据自己的业务类型来做结合调整。1、群成员的介绍也可以叫群成员破冰,这种比较适合资源型的社群、或者有门槛的小群,给每个成员提供介绍的模板,入群的时候发到群里面。既能避免入群的尴尬冷场,又能方便大家今后资源上的互_房产社群提升群活跃度

处理JAVAsplit分割字符串遇到字段中包含转义了的分隔符_java转义了特殊字符但是需要分号分隔-程序员宅基地

文章浏览阅读229次。在Java中,使用"|“作为分隔符时,可以使用转义字符”|"来表示真正的分隔符。但是,如果字段中包含了"aaa|bb"这样的内容,Java会将其视为分隔符,导致分割结果不正确。为了解决这个问题,可以使用正则表达式的预先查找(lookahead)和后顾查找(lookbehind)来匹配分隔符,而不是直接使用分隔符本身。在上述代码中,使用了正则表达式"(?\)|“来匹配分隔符”|“。\)“表示前面不能有转义字符”",这样就可以排除掉被转义的分隔符。这样就能够正确地将字段中包含转义字符的内容保留在分割结果中。_java转义了特殊字符但是需要分号分隔

NGINX重定向保留域名等信息_ng 保持当前域名-程序员宅基地

文章浏览阅读2.4k次。nginx_ng 保持当前域名

推荐文章

热门文章

相关标签