Linux 从源码编译安装 OpenSSL
来源:http://wangyan.org/blog/install-openssl-from-source.html
OpenSSL 是一款开源的 SSL 软件包,采用 SSL 的公开密钥技术,用于实现传输层的通信加密功能。OpenSSL 支持 Linux、Windows、BSD、Mac 等平台,功能强大,包含丰富的密码算法库,SSL 协议库和应用程序。
一、SSL 基本常识
1.1、什么是 SSL?
安全套接层(Secure Sockets Layer,SSL), 最初由 netscape 公司设计,建立在传输层的安全通信协议,采用公开密钥体系的证书认证方式来确保客户端和 SSL 服务器之间的通信安全。
1.2、SSL 认证流程
SSL 客户端在 TCP 连接建立之后,发出一个消息(包含了客户端所支持的算法列表)给服务器端,然后服务器端返回一个数据包(确定了这次通信所需算法)和 SSL 服务器端的证书(包含了公钥)给客户端。客户端随后会用收到的公钥将消息加密再传送,该加密消息只能用 SSL 服务器端私钥解密,即便中途被截取也无法获知内容。
二、编译安装 OpenSSL
2.1、准备工作
系统版本:Ubuntu-10.10-Server-I386
更新源:apt-get update
升级软件:apt-get upgrade
更新系统:apt-get dist-upgrade
2.2、查看OpenSSL版本
部分 Linux 系统已默认安装了 OpenSSL 0.9.8,特别是 VPS 一般都安装了。
1 |
openssl version -a |
2.3、安装基础编译环境
1 |
apt-get install build-essential |
2.3、编译安装 Zlib 库
1 2 3 4 5 |
wget http://zlib.net/zlib-1.2.5.tar.gz tar -zxf zlib-1.2.5.tar.gz cd zlib-1.2.5/ ./configure --prefix=/usr/local make && make install |
2.4、卸载旧版本 OpenSSL
1 2 |
apt-get purge openssl rm -rf /etc/ssl #删除配置文件 |
2.5、编译与安装 OpenSSL
prefix 是安装目录,openssldir 是配置文件目录,另外建议安装两次,shared 作用是生成动态连接库。
1 2 3 4 5 6 7 8 |
wget ftp://ftp.openssl.org/source/openssl-1.0.0c.tar.gz tar -zxf openssl-1.0.0c.tar.gz cd openssl-1.0.0c/ ./config --prefix=/usr/local --openssldir=/usr/local/ssl make && make install ./config shared --prefix=/usr/local --openssldir=/usr/local/ssl make clean make && make install |
进一步的配置可参考《OpenSSL-0.9.8g 安装与配置指南》
Linux 从源码编译安装 OpenSSL相关推荐
- 【Python 笔记】Linux 下源码编译安装 python
本文记录在 Linux 上源码编译安装 python 的过程. 文章目录 1. 源码编译安装说明 2. 安装 python2.7 3. 安装 python3.6 1. 源码编译安装说明 安装过程比我想 ...
- Python 3.10版本及其依赖项 Linux下源码编译 安装到指定路径/目录
Python 3.10版本及其依赖项 Linux下源码编译 安装到指定路径/目录 安装需求 准备工作 Python及其依赖项 libffi glibc GDBM mpdecimal bz2 xz re ...
- Linux 下源码编译安装 vim 8.1
前言 目前 linux 的各个发行版基本上都是带了一个 vi 编辑器的,而本文要说的 vim 编辑器对 vi 做了一些优化升级,更好用.当我们需要远程操作一台 linux 服务器的时候,只能使用命令行 ...
- Linux下源码编译安装新版libxcb
前言 上一篇文章提到,linux 下编译Qt源码如果要用到Quick的话,那么运行时会依赖qxcb库,而编译生成qxcb库就需要先安装libxcb,并且最低要求 版本大于1.9.1 Requires ...
- git安装 perl ubuntu_【Git】Linux Ubuntu——源码编译安装Git 2.x 版本
Git是一个开源的分布式版本控制系统,可以有效,高速的处理从很小到非常大的项目版本管理.Git与常用的版本控制工具CVS,Subversion等不同,它采用了分布式版本库的方式,不必服务器端软件支持. ...
- Linux环境源码编译安装SVN
zhoulf 2015/2/28 原创 安装说明 安装环境:Red Hat Enterprise Linux 安装方式:源码安装 软件:apr-1.5.0.tar.gz.apr-iconv-1.2.1 ...
- linux 编译配置文件,Linux程序源码编译安装的configure配置详解
Linux环境下,如果通过源代码编译安装程序的简单过程可以 描述为:./configure-->make-->make install.其中./configure配置脚本功能就是对你的系统 ...
- Linux /centos7源码编译安装Nginx
1.下载或上传nginx安装包 我这边使用wget命令直接在centos7上下载,上传安装包的可以忽略直接下一步 [root@localhost ~]# wget http://nginx.org/d ...
- Linux程序源码编译安装的configure配置详解
Linux环境下,如果通过源代码编译安装程序的简单过程可以描述为:./configure–>make–>make install.其中./configure配置脚本功能就是对你的系统做很多 ...
最新文章
- linux系统调用理解之摘录(1)
- easyui datagrid java_EasyUI DataGrid 显示不了数据????
- selenium之截图
- Linux安装Yum包管理器
- SilverLight:基础控件使用(6)-Slider控件
- 后端服务接口都在测试什么?怎么测?
- OpenLayers 绘制,选中,鼠标悬浮
- Apache Tomcat漏洞总结
- JavaEE - 集合 - Collection集合
- 10019---JavaScript--闭包
- python爬虫之创建表格
- Maven学习(一)---Maven简介
- 2017第二届上海DAC体验
- 图文讲解安装Adobe Photoshop 2021 for Mac(附下载dmg安装包)
- JavaScript入门学习指南
- 计算机模拟飞行,模拟飞行 DCS F-14B Tomcat雄猫 中文指南 3.22计算机地址面板
- 如何度过生活的低谷?
- 电脑计算机桌面窄,大神讲解电脑屏幕变窄且两边是黑的鼠标点不到?
- HTML做一个简单漂亮的旅游网页(纯html代码)重庆旅游 7页
- CKEditor5记
热门文章
- c#中一个进程启动另一个进程并传递参数
- win32汇编基础概念
- IOS15使用Masonry和自动计算Cell的高度
- C++踩坑之连接mysql数据库
- micropython 实时音频传输_在线实时合唱的实现原理与难点是什么?
- JuPyter(IPython) Notebooks中使用pip安装Python的模块
- .net excel循环插数据_Python实战: 如何将数据从一个Excel文件移动到另一个?
- Android开发之Java的IO流读写的十种方法
- git生成秘钥配置SSH公钥的简单方法
- html vw自动跳到ie,CSS3动画/关键帧,在IE11问题中使用vw进行转换