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

linux下升级openssl到新版本

0,安装fips版本,据说比单纯的openssl快五倍

./config fips --with-fipsdir=/usr/local/related/openssl-fips-2.0.16 --prefix=/usr/local/related/openssl-1.0.2o --openssldir=/usr/local/related/openssl-1.0.2o/ssl

make depend

make install

安装第二次生成动态链接库

./config shared fips --with-fipsdir=/usr/local/related/openssl-fips-2.0.16 --prefix=/usr/local/related/openssl-1.0.2o --openssldir=/usr/local/related/openssl-1.0.2o/ssl

make clean

make depend

make install

如果报库文件找不到可以 :--with-fipslibdir=/usr/local/related/openssl-fips-2.0.16/lib 指定fips的lib库位置

然后软链 :
ln -s /usr/local/related/openssl-1.0.2o/bin/openssl /usr/bin/openssl

其实到这一步已经能看到系统中的openssl已经更新了

openssl version -a  查看下

但是建议仍然把步骤进行完,虽然我也不知道不进行完会产生什么后果。


1,

安装新版

prefix 是安装目录,openssldir 是配置文件目录,另外建议安装两次,shared 作用是生成动态连接库。

tar -zxf openssl-1.1.0f

cd openssl-1.1.0f/

./config  --prefix=/usr/local/related/openssl --openssldir=/usr/local/related/openssl/ssl

make && make install

./config shared --prefix=/usr/local/related/openssl --openssldir=/usr/local/related/openssl/ssl

make clean

make && make install


2,

进行配置

备份原来的openssl命令
mv /usr/bin/openssl /usr/bin/openssl.bak

备份原来的openssl目录 (一些环境下本地include下面没有旧的openssl目录,这里我的环境是liunx7,centos6.8)
mv /usr/include/openssl  /usr/include/openssl.bak

将安装好的bin目录中的openssl文件软连到/usr/bin/openssl
ln -s /usr/local/related/openssl/bin/openssl /usr/bin/openssl

将安装好的openssl 的openssl目录软连到/usr/include/openssl
ln -s /usr/local/related/openssl/include/openssl /usr/include/openssl

修改系统自带的openssl库文件,如/usr/local/lib64/libssl.so(根据机器环境而定) 软链到升级后的libssl.so
ln -s /usr/local/related/openssl/lib/libssl.so.1.1 /usr/local/lib64/libssl.so     ----注意时usr/local下的lib64不是/usr/lib64,两个目录下有同名目录,有可能在/usr/local/lib64/并不存在文件

在/etc/ld.so.conf文件中写入openssl库文件的搜索路径
echo "/usr/local/related/openssl/lib" >> /etc/ld.so.conf

使修改后的/etc/ld.so.conf生效 
ldconfig -v

最好查看下openssl版本号,看是否已经更新成最新的,

openssl version -a

3,

使用头文件目录:

/usr/local/related/openssl/include  

gcc编译的时候加-lssl,同时指定libssl.so。

4,如果需要加入fips模块:

最近在弄openssl,发现openssl-fips-2.0.6.tar.gz其实是编译出来一个fips的模块,编译出来的东西指定安装在/usr/local/ssl/fips-2.0/目录,然后编译openssl-1.0.1h.tar.gz时config时指定OPENSSL_FIPS,就可以把fips模块编进来,如果报头文件错误可以把/usr/local/ssl/fips-2.0/include/openssl替换系统的/usr/include/openssl,如果找不到相关库可以用--with-fipslibdir=/usr/local/ssl/fips-2.0/lib指定,我测试龙芯的机器加入fips模块后比直接编译openssl-1.0.1h.tar.gz,openssl speed rsa512测试能提高20倍



相关文章:

  • linux7下centos6.8版本完全编译php7.17与nginx
  • linux7下centos6.8版本完全编译php7.17与nginx --后续,配置nginx.conf与php-fpm.conf,www.conf
  • jquery将serializeArray转为可用的json对象
  • PHP用户登录后跳转回上一访问页面的实现思路及代码
  • ckeditor 的简单调用
  • centos下的中文分词coreseek-4.1的编译安装与基本配置
  • linux下php支持sphinx的扩展安装
  • sphinx增量索引和主索引来实现索引的实时更新
  • 一个可用的coreseek以及sphinx的csft.conf配置
  • PHP获取用户真实 IP , 淘宝IP接口获得ip地理位置
  • PHP攻击网站防御代码-以及攻击代码反译
  • coreseek及sphinx的.conf典型简单配置
  • PHP 对sphinx的api调用
  • Sphinx配置文件详解
  • 单独编译安装php的mysqli,pdo_mysql,mysqlnd扩展
  • 「前端」从UglifyJSPlugin强制开启css压缩探究webpack插件运行机制
  • 【399天】跃迁之路——程序员高效学习方法论探索系列(实验阶段156-2018.03.11)...
  • Java 最常见的 200+ 面试题:面试必备
  • Java|序列化异常StreamCorruptedException的解决方法
  • ReactNativeweexDeviceOne对比
  • UEditor初始化失败(实例已存在,但视图未渲染出来,单页化)
  • Vue UI框架库开发介绍
  • Vue源码解析(二)Vue的双向绑定讲解及实现
  • yii2中session跨域名的问题
  • 大型网站性能监测、分析与优化常见问题QA
  • 技术攻略】php设计模式(一):简介及创建型模式
  • 老板让我十分钟上手nx-admin
  • 如何选择开源的机器学习框架?
  • 使用前端开发工具包WijmoJS - 创建自定义DropDownTree控件(包含源代码)
  • 思否第一天
  • 通过git安装npm私有模块
  • #100天计划# 2013年9月29日
  • #我与Java虚拟机的故事#连载05:Java虚拟机的修炼之道
  • (a /b)*c的值
  • (NO.00004)iOS实现打砖块游戏(九):游戏中小球与反弹棒的碰撞
  • (pojstep1.1.2)2654(直叙式模拟)
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (黑客游戏)HackTheGame1.21 过关攻略
  • (黑马C++)L06 重载与继承
  • (三)uboot源码分析
  • (一)Java算法:二分查找
  • (转)甲方乙方——赵民谈找工作
  • .net6+aspose.words导出word并转pdf
  • .NET版Word处理控件Aspose.words功能演示:在ASP.NET MVC中创建MS Word编辑器
  • .NET教程 - 字符串 编码 正则表达式(String Encoding Regular Express)
  • /etc/shadow字段详解
  • @拔赤:Web前端开发十日谈
  • [ 云计算 | AWS 实践 ] Java 如何重命名 Amazon S3 中的文件和文件夹
  • [1159]adb判断手机屏幕状态并点亮屏幕
  • [ACL2022] Text Smoothing: 一种在文本分类任务上的数据增强方法
  • [android] 看博客学习hashCode()和equals()
  • [ArcPy百科]第三节: Geometry信息中的空间参考解析
  • [BUG] Hadoop-3.3.4集群yarn管理页面子队列不显示任务
  • [CISCN2019 华北赛区 Day1 Web5]CyberPunk --不会编程的崽
  • [Codeforces1137D]Cooperative Game