当前位置: 首页 > news >正文

《Linux运维总结:Centos7.6之OpenSSH7.4p1升级版本至9.4p1》

Centos通过yum升级OpenSSH

在官方支持更新的CentOS版本,如果出现漏洞,都会通过更新版本来修复漏洞。这时候直接使用yum update就可以升级版本。

yum -y update openssh

但是,CentOS更新需要有一段时间,不能在漏洞刚出来的时候就有更新包。这时候就可以使用源码编译OpenSSH,来升级版本,修复漏洞。

源码编译安装OpenSSH

编译的时候需要一些依赖包及编译工具,需要先安装一下。

yum -y install wget tar gcc make wget openssl-devel pam-devel rpm-build

wget -c https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.4p1.tar.gz

(此链接需要翻**墙才能访问,我下载好放百度网盘里了)

wget -c https://www.openssl.org/source/openssl-1.1.1v.tar.gz  --no-check-certificate

wget -c   https://zlib.net/current/zlib.tar.gz

百度网盘

portable/openssh-9.4p1.tar.gz

链接:https://pan.baidu.com/s/1yUP1ixDd3-Dfoc4fB0TH8A?pwd=o2im 
提取码:o2im 

tar zxvf openssh-9.4p1.tar.gz

tar zxvf openssl-1.1.1v.tar.gz

tar zxvf zlib-1.3.tar.gz

cd zlib-1.3

./configure --prefix=/usr/local/zlib

make&&make install

cd  openssl-1.1.1v

./config --prefix=/usr/local/ssl -d shared

#默认没有编译出.so的文件,而openssh编译的时候需要,所以需要手动添加 -d shared的选项

make && make install

echo '/usr/local/ssl/lib' >> /etc/ld.so.conf

ldconfig -v

cd ../openssh-9.4p1

./configure --prefix=/usr/local/openssh --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/ssl --without-zlib-version-check

make && make install

更改默认端口

vim /usr/local/openssh/etc/sshd_config

更改为

Port 2222

 

把上图的PermitRootLogin,PubkeyAuthentication的设置打开。

启动

/usr/local/openssh/sbin/sshd -f /usr/local/openssh/etc/sshd_config

如果不指定配置文件也可以,默认就是加载 /usr/local/openssh/etc/sshd_config

如果是CentOS6可以修改/etc/init.d/sshd中的对应路径即可,如果是CentOS 7需要修改/usr/lib/systemd/system/sshd.service。

更换sshd服务路径

vim /usr/lib/systemd/system/sshd.service

为了方便使用可以修改PATH变量

echo 'PATH=/usr/local/openssh/bin:/usr/local/openssh/sbin:$PATH' >> /etc/profile

source /etc/profile

ssh -V

OpenSSH_7.9p1, OpenSSL 1.0.2q 20 Nov 2018

回退

如果是使用yum一般都是没有问题,都是经过测试的。

如果是源码编译回退也是简单,只要把启动脚本里面的程序路径修改一下即可。

总结

升级过程一般不可能跑去机房蹲着升级;如果是yum升级,也是比较稳定的,直接重启sshd服务即可。

如果是源码编译呢?也可以直接kill sshd这个进程,远程是不会断开了,升级过程都不要断开,然后真的就连接不上了。

如果怕网络突然断开,导致远程连接不上,可以先启动sshd进程,使用 -f 指定另外的配置文件,端口指定非22端口,等升级完成,再关闭即可。

http://www.lryc.cn/news/134318.html

相关文章:

  • 七夕节日表白:七大网页风格与其适用人群
  • 通达信指标公式16:使用BARSLAST函数写一个指标回测的思路
  • Jenkins自动化部署Vue项目
  • Android JNI打印logcat日志
  • 第28次CCF计算机软件能力认证(测试)
  • 九耶丨阁瑞钛伦特-Java高频面试题-请谈谈 ReadWriteLock 和 StampedLock
  • 【Linux操作系统】深入探索Linux系统编程中的信号集操作函数
  • [C初阶笔记]P2
  • C++并发编程学习01——hello concurrent world
  • 大数据扫盲(2): 数据分析BI与ETL的紧密关系——ETL是成功BI的先决条件
  • Java web 中的 jsp
  • uniapp 数组操作
  • 数据结构算法--4堆排序
  • C++学习系列之DLL动态库使用
  • Java实现钉钉企业内部应用机器和自定义机器人发送消息
  • 基于QT4的GPX文件编辑器开发
  • 树结构使用实例---实现数组和树结构的转换
  • 论文阅读_条件控制_ControlNet
  • 全链路数据湖开发治理解决方案2.0重磅升级,全面增强数据入湖、调度和治理能力
  • 【算法题】2769. 找出最大的可达成数字
  • 023:vue中解决el-date-picker更改样式不生效问题
  • 爬虫借助代理会让网速快点吗?
  • 探索智能文字识别:技术、应用与发展前景
  • STL——list用法
  • Linux的基础指令
  • 深入浅出Pytorch函数——torch.nn.init.normal_
  • Vue.js知识点学习的一点笔记
  • Sui第四轮资助:16个团队瓜分
  • ATC模型转换环境问题案例
  • dart其他语法