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

Centos7升级openssl和openssh最新版

1、事前准备

下载openssl3.4.1和openssh9.9p2压缩包上传到服务器

https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable//

Release OpenSSL 3.4.1 · openssl/openssl · GitHub

2、查看centos7、ssh以及openssl的版本信息

# 查看CentOS系统版本信息
cat /etc/redhat-release
# 查看openssl版本信息
openssl version
# 查看openssh的版本信息
ssh -V

3、安装依赖

yum -y install gcc pam-devel zlib-devel openssl-devel net-tools
yum install -y perl-IPC-Cmd perl-Data-Dumper

4、安装openssl-3.4.1版本

(1)解压openssl-3.4.1压缩包

tar zxvf openssl-3.4.1.tar.gz -C /usr/local/
cd /usr/local/openssl-3.4.1/
mkdir /opt/openssl

(2)编译安装openssl-3.4.1

./config --prefix=/opt/openssl
make -j4 && make install   ###-j后面的数字为你的内核数

(3)更新lib文件

ldd /opt/openssl/bin/openssl
echo "/opt/openssl/lib" >> /etc/ld.so.conf
echo "/opt/openssl/lib64" >> /etc/ld.so.conf
echo "/usr/local/openssl-3.4.1" >> /etc/ld.so.conf
ldconfig -v
ldd /opt/openssl/bin/openssl

(4)更新bin文件

# 查看旧版本的openssl命令路径
which openssl
# 重命名为openssl.old
mv /usr/bin/openssl /usr/bin/openssl.old   #重命名openssl文件
# 使用软连接的方式更新openssl命令
ln -s /opt/openssl/bin/openssl /usr//bin/openssl
# openssl命令查看版本呢
openssl version

5、编译安装openssh9.9p2

(1)解压缩openssh9.9p2压缩包

# 卸载openssh的rpm包
for i in $(rpm -qa | grep openssh);do rpm -e $i --nodeps;done
# 解压缩openssh9.7p1包到目标目录
cd ~
tar zvxf openssh-9.9p2.tar.gz -C /usr/local/
# 进入openssh9.7p1的源码目录
cd /usr/local/openssh-9.9p2/
# 安装前查看一下安装文件INSTALL(建议看一下)
more INSTALL

(2)编译安装openssh9.9p2

# 配置编译和安装过程,"--prefix=" 配置安装目录,"--sysconfdir=" 配置文件路径,"--with-ssl-dir=" openssl的安装路径
./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-pam --with-ssl-dir=/opt/openssl --with-md5-passwords --mandir=/usr/share/man --with-zlib=/usr/local/zlib --without-hardeningchmod 600 /etc/ssh/ssh_host_*_key
chown root:root /etc/ssh/ssh_host_*_keymake -j4 && make install

(3)复制并修改启动sshd.init脚本

# 从源码目录下复制sshd.init到/etc/init.d/
cp /usr/local/openssh-9.9p2/contrib/redhat/sshd.init /etc/init.d/## 查看并修改SSHD的新路径,将新的openssh安装路径更新
cat /etc/init.d/sshd.init | grep SSHD
sed -i "s/SSHD=\/usr\/sbin\/sshd/SSHD=\/usr\/local\/openssh\/sbin\/sshd/g" /etc/init.d/sshd.init
cat /etc/init.d/sshd.init | grep SSHD## 查看并修改ssh-keygen的新路径,将新的ssh-keygen安装路径更新
cat -n /etc/init.d/sshd.init | grep ssh-keygen
sed -i "s#/usr/bin/ssh-keygen -A#/usr/local/openssh/bin/ssh-keygen -A#g" /etc/init.d/sshd.init
cat -n /etc/init.d/sshd.init | grep ssh-keygen

(4)修改配置文件(sshd_config)

# 开启允许X11转发
echo 'X11Forwarding yes' >> /etc/ssh/sshd_config 
# 开启允许密码验证
echo "PasswordAuthentication yes" >> /etc/ssh/sshd_config 

(5)启动openssh,并设置开机启动

# 复制ssh的相关命令
cp -arp /usr/local/openssh/bin/* /usr/bin/
# 启动sshd服务
/etc/init.d/sshd.init start
# 查看版本
ssh -V
# 添加开机启动
chmod +x /etc/rc.d/rc.local
echo "/etc/init.d/sshd.init start" >> /etc/rc.d/rc.local  
systemctl enable --now rc-local

(6)测试openssh连接

使用ssh协议连接centos7,检查openssh9.9p2服务

重启系统后ssh协议登录centos7,检查openssh9.9p2自动启动

6、检查系统、openssl和openssh的版本信息

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

相关文章:

  • 相控阵扫盲
  • nginx 配置 301跳转
  • 开发环境搭建-03.后端环境搭建-使用Git进行版本控制
  • vivado 充分利用 IP 核
  • 外盘农产品期货数据:历史高频分钟回测的分享下载20250305
  • 计算机毕设-基于springboot的网上商城系统的设计与实现(附源码+lw+ppt+开题报告)
  • 用DeepSeek-R1-Distill-data-110k蒸馏中文数据集 微调Qwen2.5-7B-Instruct!
  • 【C++设计模式】第四篇:建造者模式(Builder)
  • 【杂谈】信创电脑华为w515(统信系统)登录锁定及忘记密码处理
  • VBA信息获取与处理第五节:如何在单个工作表中查找某个给定值
  • 版本控制器Git和gdb
  • 关于tresos Studio(EB)的MCAL配置之GPT
  • 大学至今的反思与总结
  • 我们来学nginx -- 优化下游响应速度
  • 国内外优秀AI外呼产品推荐
  • 观察者模式的C++实现示例
  • 爬虫(持续更新ing)
  • AD学习-最小系统板,双层
  • 自动驾驶---不依赖地图的大模型轨迹预测
  • 【五.LangChain技术与应用】【8.LangChain提示词模板基础:从入门到精通】
  • 【AGI】智谱开源2025:一场AI技术民主化的革命正在到来
  • Markdown HTML 图像语法
  • DeepSeek 角色设定与风格控制
  • 国产化替换案例:CACTER邮件网关为Groupwise系统加固邮件安全防线
  • Element UI-Select选择器结合树形控件终极版
  • 《底层逻辑》总结书摘
  • 【Linux】【网络】UDP打洞-->不同子网下的客户端和服务器通信(未成功版)
  • 【微信小程序】每日心情笔记
  • PMP项目管理—沟通管理篇—3.监督沟通
  • 在Linux中开发OpenGL——检查开发环境对OpenGL ES的支持