首先我们应该知道ubuntu18.04内置了1.1.0g版本的openssl:

![](https://img2018.cnblogs.com/blog/1506386/201903/1506386-20190326201008296-1333290882.png)

**使用下面的apt命令更新Ubuntu存储库并安装软件包编译的软件包依赖项:**
```
sudo apt update
sudo apt install build-essential checkinstall zlib1g-dev -y
```

转到'/ usr / local / src'目录并使用wget下载OpenSSL-1.1.1b的源代码:

cd /usr/local/src/
sudo wget https://www.openssl.org/source/openssl-1.1.1b.tar.gz

为什么选这个版本呢?因为它最大······

现在解压缩openssl-1.1.1b.tar.gz文件,然后转到'openssl-1.1.1b'目录:

sudo tar -xf openssl-1.1.1b.tar.gz
cd openssl-1.1.1b

使用以下命令配置和编译OpenSSL:

sudo ./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib

sudo make
sudo make test

注意:

  • prefix和--openssldir =设置OpenSSL的输出路径。
  • shared = force来创建共享库。
  • zlib =使用zlib库启用压缩。

编译过程完成后,使用以下命令安装OpenSSL:

sudo make install

OpenSSL安装在'/usr/local/ssl'目录中。

接下来,我们将为OpenSSL配置共享库。 新的OpenSSL二进制文件将从'/usr/local/ssl/lib'目录加载库文件。

转到'/etc/ld.so.conf.d'目录并创建新配置文件'openssl-1.1.1b.conf':

cd /etc/ld.so.conf.d/
sudo vim openss1-1.1.1b.conf

粘贴openssl库路径目录:

/usr/local/ssl/lib

现在使用以下命令重新加载动态链接:

sudo ldconfig -v

您将看到已加载'/usr/local/ssl/lib'目录中的OpenSSL库:

![](https://img2018.cnblogs.com/blog/1506386/201903/1506386-20190326201016819-100684975.png)

我们将使用新版本'/usr/local/ssl/bin/openssl'替换默认的openssl二进制文件'/usr/bin/openssl或/bin/openssl'。

备份二进制文件:

sudo mv /usr/bin/c_rehash /usr/bin/c_rehash.BEKUP
sudo mv /usr/bin/openssl /usr/bin/openssl.BEKUP

使用vim编辑'/etc/environment'文件:

sudo vim /etc/environment

添加新的OpenSSL二进制目录:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/ssl/bin"

重新加载环境文件并测试新更新的二进制PATH:

source /etc/environment
echo $PATH

查看安装结果:

openssl version -a

应该出现如下结果:

![](https://img2018.cnblogs.com/blog/1506386/201903/1506386-20190326201025000-1477784500.png)

这时openssl已经安装成功了,但依然不能用于编程,只能用于终端。要想用于编程还需安装libssl-dev

使用如下命令:

sudo apt-get install libssl-dev

安装完毕后需按下图所示编译:

![](https://img2018.cnblogs.com/blog/1506386/201903/1506386-20190326202026914-987847219.png)

ubuntu18.04 安装新版本openssl的更多相关文章

  1. ubuntu18.04 安装UHD+GNU Radio

    参考链接: ubuntu16.04下安装uhd与gnuradio:https://blog.csdn.net/qq_37748396/article/details/80339366 GNU Radi ...

  2. Ubuntu18.04安装mysql5.7

    Ubuntu18.04安装mysql5.7 1.1安装 首先执行下面三条命令: # 安装mysql服务 sudo apt-get install mysql-server # 安装客户端 sudo a ...

  3. Ubuntu18.04安装RabbitMQ

    Ubuntu18.04安装RabbitMQ 2018年06月10日 19:32:38 dmfrm 阅读数:2492    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog ...

  4. ubuntu18.04 安装mysql不出现设置 root 帐户的密码问题(装)

    ubuntu18.04 安装mysql不出现设置 root 帐户的密码问题      https://blog.csdn.net/NeptuneClouds/article/details/80995 ...

  5. ubuntu18.04 安装hadoop 2.7.3+hive 2.3.4

    1. 安装hadoop 详细请参见本人的另外一片博文<Hadoop 2.7.3 分布式集群安装> 2. 下载hive 2.3.4 解压文件到/opt/software -bin.tar.g ...

  6. Ubuntu18.04安装Virtualenv虚拟环境

    在Ubuntu18.04安装Virtualenv虚拟环境 [实验环境]: 在这台电脑上已经安装了python3 [安装参考] 1.查看是否已安装virtualenv virtualenv --vers ...

  7. Ubuntu18.04安装thunderbird并设置中文

    Ubuntu18.04安装thunderbird并设置中文 安装thunderbird sudo apt-get install thunderbird 安装中文包 sudo apt-get inst ...

  8. Ubuntu18.04安装Docker, centos7安装Docker

    Ubuntu18.04安装Docker 第一种方法从Ubuntu的仓库直接下载安装: 安装比较简单,这种安装的Docker不是最新版本,不过对于学习够用了,依次执行下面命令进行安装. $ sudo a ...

  9. Ubuntu18.04安装和配置Java JDK11并卸载自带OpenJDK

    卸载自带的OpenJDK方法: 在终端执行命令:sudo apt-get remove openjdk* Ubuntu18.04安装JDK11.0.2 前面步骤一样,可参考:https://www.c ...

随机推荐

  1. 关于bjam编译自己模块出错的问题

    将这个目录下C:\Users\Regubed的user-config.jam改为下面内容 # MSVC configurationusing msvc : 9.0 ; # Python configu ...

  2. 数据加密之DES加密

    DES加密即使用DESCryptoServiceProvider加密.DESCryptoServiceProvider在命名空间下:System.Security.Cryptography; 对称加密 ...

  3. LeetCode38.报数

    报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数.其前五项如下: 1. 1 2. 11 3. 21 4. 1211 5. 111221 1 被读作  "one 1" ...

  4. python windows 安装gensim

    安装gensim要确定numpy和scipy安装 再安装gensim

  5. 正则表达式中\b和\s有什么区别

    字符串:abcsdsadas abc asdsadasdabcasdsa使用\sabc\s和\babc\b都能匹配中间的abc,这种方法不是重复了么,/s是匹配空格回车等得,/b网上教程说得不清楚什么 ...

  6. 第四章 HTML5概述

    HTML5概述1.HTML5优势:解决跨浏览器问题:部分代替原来的js更明确地语义支持:不再单纯使用div增强WEB应用程序地功能:拖拽API等 2.HTML5语法改变标签不再区分大小写元素可以省略结 ...

  7. 恢复Windows10应用商店

    用管理员权限运行powershell,输入 Get-AppxPackage -AllUsers| Foreach {Add-AppxPackage -DisableDevelopmentMode -R ...

  8. Vue系列之 => vue组件创建

    创建方式 一 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT ...

  9. Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现

    https://blog.csdn.net/zouxy09/article/details/9993371 自己平时看了一些论文,但老感觉看完过后就会慢慢的淡忘,某一天重新拾起来的时候又好像没有看过一 ...

  10. E. Kefa and Watch hash 线段树

    2015-09-28 14:11:36 by opas 这题给的是一个字符串 把其中一些子串给取出来 判断是否是周期为d的字符串  还需要把 其中的一个区间完全变成一个数 ,然后在查询,我们把每个字符 ...