zoukankan      html  css  js  c++  java
  • Ubuntu18.04安装Openssl-1.1.1

    1.查看版本

    Ubuntu的版本是18.04。使用openssl version命令查看openssl版本,可以看到Ubuntu自带了openssl-1.1.0版本,因此安装新版本需要替换旧版本。

    2.下载openssl

    打开openssl官网的下载页面可以看到最新的软件包,下载openssl-1.1.1b.tar.gz。放到Ubuntu系统中。

    3.解压和安装

    • 使用命令tar -xzvf openssl-1.1.1b.tar.gz解压。

    • 使用cd openssl-1.1.1b进入目录,并且使用./config生成MakeFile,不加任何参数,默认的安装位置为:/usr/local/bin/openssl

    • 使用make进行编译

    • 不放心的话可以使用make tset检查一下(可选步骤)

    • 使用sudo make install进行安装,这里一定要选择root用户的权限执行。

    4.备份与替换

    • 到上一步openssl就算安装好了,但是还无法使用,需要通过软链接的方式将新旧版本就行替换,依次运行下列命令。
    sudo mv /usr/bin/openssl /usr/bin/openssl.old    //将旧版本的openssl进行备份
    sudo ln -s /usr/local/bin/openssl /usr/bin/openssl    //将新版本的openssl进行软链接
    cd /etc/   //进入etc目录
    su     //下一步一定要切换到root用户
    echo "/usr/local/lib" >> ld.so.conf    //将openssl的安装路径加入配置中
    ldconfig  //重新加载配置
    
    • 使用openssl version查看,已经安装好。

    • 如果需要更换版本的话(一般也不会),修改软链接的名称即可,参照:

    sudo mv /usr/bin/openssl /usr/bin/openssl.new
    sudo mv /usr/bin/openssl.old /usr/bin/openssl
    

    5.安装依赖库

    • openssl安装结束之后,需要安装依赖库才能够进行编程,使用sudo apt-get install libssl-dev安装依赖库,可以看到同时也下载了libssl-doc。

    • 由于下载的依赖库比较旧,我们在前面安装的openssl包中已经安装了新版本的库,因此需要将新旧库进行替换,仍然要做上一步的原因是尽量把能自动配置安装的东西安装好,只需要手动替换新的东西。下面是新旧库的对比(上面为新):

    • 依次使用以下命令进行替换:

    sudo mv /usr/include/openssl /usr/include/openssl.old    //将旧版本进行备份
    sudo ln -s /usr/local/include/openssl /usr/include/openssl    //将新版本进行软链接
    

    6.测试

    编写一个测试代码test_openssl.c:

    #include <stdio.h>
    #include <openssl/evp.h>
    
    int main(){
        
        OpenSSL_add_all_algorithms();
        
        return 0;
    }
    

    然后用下面的命令编译:
    gcc -o to test_openssl.c -L/usr/local/openssl/lib -lssl -lcrypto -ldl -lpthread
    执行./to;echo $?,结果打印0。

    参考资料

  • 相关阅读:
    nginx 怎么通过域名访问8080端口(指定端口)
    node.js 部署的 vue 项目怎么在局域网访问
    MySQL的疑难问题解决
    win10下装ubuntu双系统(免U盘)
    文件、块、对象存储
    OpenShift定义的安全上下文约束(SCCs)
    OpenShift资源类型
    yum命令详解
    OCP3.9的网络
    NTP时间服务器搭建部署
  • 原文地址:https://www.cnblogs.com/jsjliyang/p/10606908.html
Copyright © 2011-2022 走看看