服务器源码安装openssh7.4p1

news2024/11/14 15:01:14

系统环境:
OS:Kylin-Server-10-SP2-x86-Release-Build09-20210524
软件版本:OpenSSH_8.2p1, OpenSSL 1.1.1f
在这里插入图片描述

一、源码安装升级
1、下载源码包
下载zlib-1.2.11.tar.gz、openssl-1.0.2k.tar.gz、openssh-7.4p1.tar.gz,
openssl不要使用1.1.0版本的,编译openssh必定报错
wget http://zlib.net/zlib-1.2.11.tar.gz
wget https://www.openssl.org/source/openssl-1.0.2k.tar.gz
wget -c http://mirror.mcs.anl.gov/openssh/portable/openssh-7.4p1.tar.gz
也可以直接上官网下载。
0524系统zlib默认版本为1.2.11,无需再安装下载
在这里插入图片描述

2、安装必要的依赖包
yum -y install gcc libcap libcap-devel glibc-devel pam-devel krb5-devel krb5-libs
在这里插入图片描述
在这里插入图片描述

3、编译安装zlib(省略)
tar -zxf zlib-1.2.11.tar.gz -C
cd /tmp/zlib-1.2.11
./configure --shared
make
make install
4、编译安装openssl
tar -zxf openssl-1.0.2k.tar.gz
cd openssl-1.0.2k/
./config --prefix=/usr --shared
Make
make install
openssl version -a
在这里插入图片描述

5、编译安装openssh
tar -zxf openssh-7.4p1.tar.gz
cd openssh-7.4p1/
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib --with-ssl-dir=/usr --with-md5-passwords --mandir=/usr/share/man --with-kerberos5=/usr/lib64/libkrb5.so
make
make install
echo “Ciphers aes128-cbc,aes192-cbc,aes256-cbc,aes128-ctr,aes192-ctr,aes256-ctr,3des-cbc,arcfour128,arcfour256,arcfour,blowfish-cbc,cast128-cbc”>>/etc/ssh/sshd_config
ssh -V
在这里插入图片描述

6、安装后配置
6.1 此时升级完成后,本服务器无法远程连接别的服务器
在这里插入图片描述

检查该配置文件,将第3和第5行注释掉解决该问题
在这里插入图片描述
在这里插入图片描述

6.2且systemctl重启sshd服务一直activating,自动重启
在这里插入图片描述

怀疑是systemctl无法托管源码安装的openssh,尝试使用源码包自带的sshd.init文件可以托管sshd
解决方法:
1.将源码安装包中 contrib/redhat/sshd.init 文件复制到 /etc/init.d/ 目录下并添加可执行权限。
2.然后,使用该脚本启动sshd服务
在这里插入图片描述

这时,/run/systemd/generator.late/ 目录下会产生一个名为 sshd.service的 systemd 服务配置文件。
3.将这个文件复制到 systemd 的服务配置文件目录下
cp /run/systemd/generator.late/sshd.init.service /usr/lib/systemd/system/sshd.service
在这里插入图片描述

4.重新加载systemd,这时再通过systemctl命令操作sshd服务就正常了。
systemctl daemon-reload
systemctl restart sshd

在这里插入图片描述

参考文档:https://github.com/Feyico/OpenSSH7.4p1_Update
https://blog.csdn.net/weixin_43863487/article/details/109902142

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/393257.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【强化学习】一文弄懂,Q-learning和Sarsa的区别

一文弄懂,Q-learning和Sarsa的区别 2023.3.6 本文主要参考莫烦老师内容1. 理解Q_learning算法 主要看下面讲解,就不抄了: https://mofanpy.com/tutorials/machine-learning/reinforcement-learning/intro-q-learning 读懂几个内容&#xf…

旋转数组的几种做法

千淘万浪虽辛苦,吹尽黄沙始到金。 ——刘禹锡 第一种方法:遍历整个数组 题目描述: 一个数组A中存有N (N>0) 个整数,允许使用另外数组,将每个整数循环向右移动M(M>0)个位置。如果需要…

【Redis学习3】Redis四种模式之主从复制

主从复制模式 主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服务器。 前者称为主节点(master),后者成为从节点(slave);数据的复制是单向,主要是由主节点到从…

一把火烧掉了苹果摆脱中国制造的幻想,印度制造难担重任

这几年苹果不断推动印度制造,希望摆脱对中国制造的依赖,然而近期苹果在印度的一家代工厂发生大火却证明了苹果的这一计划遭受重大打击,印度制造根本就无法中国制造。一、印度制造屡屡发生幺蛾子苹果推动印度制造已有多年了,然而印…

Allegro如何刷新封装和库里的封装同步操作指导

Allegro如何刷新封装和库里的封装同步操作指导 在做PCB设计的过程中,有时会因为库里的封装有更新,所以PCB上使用到了这个封装时候需要和库里的同步,如下图 如何刷新,具体操作如下 点击Place点击Update Symbols

算法刷题-python版-最大回文子串

文章目录回文字符串如何判断是回文字符串求解字符串的最大回文子串暴力求解中心扩展(比较优的方式)两种方式性能对比回文字符串 正读、反读都是同一个字符串本身,这样的字符串就是回文字符串。 如 abccba 是回文字符串; 而 abcd …

产品EMC传导发射超标问题分析与整改

某产品在入网测试电磁骚扰项目中,直流电源端口(DC端口)传导发射测试超标严重,在低频150kHz~2MHz之间,某些频点超标10dBuV以上。经过对电源单板现场整改,再次测试DC端口传导发射顺利通过,余量在5…

准备好了吗?加入 GDE 成长计划,成为下一位谷歌开发者专家!

谷歌开发者专家 (Google Developer Experts,GDE),又称谷歌开发者专家项目,是由一群经验丰富的技术专家、具有社交影响力的开发者和思想领袖组成的全球性社区。通过在各项活动演讲以及各个平台上发布优质内容来积极助力开发者、企业和技术社区…

C#基础篇

枚举enum 枚举的使用 using System.Net.Http.Headers; using System.Runtime.InteropServices; using System.Security.Cryptography;namespace game_code {enum E_MonsterType{Normal,// 普通怪Boos// Boos怪}internal class Program{static void Main(string[] args){// 枚…

Linux信号量详解

一、什么是信号量信号量的本质是一种数据操作锁、用来负责数据操作过程中的互斥、同步等功能。信号量就和互斥锁类似,本质上就是一个计数器(全局变量)。不同之处在于,互斥锁的值只有 2 个(加锁 "lock" 和解锁…

Mysql Server原理简介

Mysql客户端包括JDBC、 Navicat、sqlyog,只是为了和mysql server建立连接,向mysql server提交sql语句。mysql server组件第一部分叫连接器主要承担的功能叫管理连接和验证权限,每次在进行数据库访问的时候,必然要输入用户名和密码…

421 Maximum login limit has been reached. on hdfs-over-ftp

使用 hdfs-over-ftp 时登录报错421 Maximum login limit has been reached. 本地测试连接第10个用户的时候会报这个异常 就是默认限制了用户登录数量。 DefaultConnectionConfig.java里private int maxLogins 10; 在HdfsOverFtpServer.java里修改了startServer()这个metho…

MSTP基础

MSTP基础引入背景技术概览PVSTP(过渡)MSTP单生成树的缺陷1:部分VLAN不通单生成树的缺陷2:无法实现流量的负载分担多生成树解决单生成树实例引入背景 RSTP在STP基础上进行了改进,实现了网络拓扑快速收敛。但由于局域网…

【redis学习篇】Redis三种持久化方式详解

官方文档 一、Redis持久性 Redis如何将数据写入磁盘 持久性是指将数据写入持久存储,如固态磁盘(SSD)。Redis提供了一系列持久性选项。其中包括: RDB(快照):RDB持久性以指定的时间间隔执行数据…

程序员的上帝视角(4)——视角

对于开发人员来说,工作都是从评估一个需求开始。我们第一个要解决的问题就是看待需求的视角。视角的不同,得到的设计方案可能是完全不同的。作为一个程序员,不能单单从个人视角来看待问题。而是要尝试从不同角色出发,不停思考。上…

C++——内存管理

一,为什么要有内存管理因为在C/C中各个内置类型或者是自定义类型的大小都不一样,而如何让各个类型在内存中合理分布就非常有必要,由此我们就需要有内存管理。我们来看看下面这个程序中的各个变量都是如何分布的int globalVar 1; static int …

100种思维模型之混沌与秩序思维模型-027

人类崇尚秩序与连续性,我们习惯于我们的日常世界,它以线性方式运作,没有不连续或突跳。 为此,我们学会了期望各种过程以连续方式运行,我们的内心为了让我们更有安全感,把很多事物的结果归于秩序&#xff0c…

链表的中间结点与链表的倒数第k个结点(精美图示详解哦)

全文目录引言链表的中间结点题目描述与思路实现链表的倒数第k个结点题目描述与思路实现总结引言 在上一篇文章中,介绍了反转链表 我们利用了链表是逻辑连续的特点,逆置了链表的逻辑连接顺序,从而实现反转链表: 戳我查看反转链表详…

【编程基础之Python】11、Python中的表达式

【编程基础之Python】11、Python中的表达式Python中的表达式表达式与运算符算术表达式赋值表达式比较表达式逻辑表达式位运算表达式总结Python中的表达式 在Python中,表达式是由操作数、运算符和函数调用等组成的语法结构,可以进行各种数学运算、逻辑判…

Maven环境下构建多模块项目

使用maven提供的多模块构建的特征完成maven环境下多模块的项目的管理和构建 这里以四个模块为例来搭建项目,以达到通俗易懂的初衷 模块 maven_parent -- 基模块,也就是常说的parent (pom) 模块 maven_dao -- 数据库访问层,例如jdbc操作(jar) …