####1.查看版本 Ubuntu的版本是18.04。使用openssl version
命令查看openssl版本,能够看到Ubuntu自带了openssl-1.1.0版本,所以安装新版本须要替换旧版本。 html
####2.下载openssl 打开openssl官网的下载页面能够看到最新的软件包,下载openssl-1.1.1b.tar.gz。放到Ubuntu系统中。 编程
####3.解压和安装测试
使用命令tar -xzvf openssl-1.1.1b.tar.gz
解压。.net
使用cd openssl-1.1.1b
进入目录,而且使用./config
生成MakeFile,不加任何参数,默认的安装位置为:/usr/local/bin/openssl
。 3d
使用make
进行编译code
不放心的话可使用make tset
检查一下(可选步骤)htm
使用sudo make install
进行安装,这里必定要选择root用户的权限执行。blog
####4.备份与替换ssl
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
查看,已经安装好。 get
若是须要更换版本的话(通常也不会),修改软连接的名称便可,参照:
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。
####参考资料