您的位置:首页 > 运维架构

使用Openssl构建私有CA

2015-10-22 21:32 190 查看

使用Openssl构建私有CA

Openssl是SSL的开源实现,是一种安全机密程序,主要用于提高远程登录访问的安全性。也是目前加密算法所使用的工具之一,功能很强大。
Openssl为网络通信提供安全及数据完整性的一种安全协议,包括了主要的密码算法、常用的密钥和证书封装管理功能(CA)以及SSL协议,并提供了丰富的应用程序供测试或其它目的使用,例如我们将会使用Openssl实现私有CA,并实现证书颁发。
OpenSSL:SSL的开源实现
libcrypto:通用加密库,提供了各种加密函数
libssl:TLS/SSL协议的实现,基于会话的、实现了身份认证、数据机密性和会话完整性的TLS/SSL库
openssl:多用途的命令行工具;能够实现私有证书颁发机构;即在公司内部实现身份的验证;
SSL:(Secure Socket Layer)安全套接字层,通过一种机制在互联网上提供密钥传输。其主要目标是保证两个应用间通信数据的保密性和可靠性,可在服务器端和用户端同时支持的一种加密算法。目前主流版本SSLV2、SSLV3

一、SSL提供以下功能:
数据的机密性:通过对称加密算法实现数据的机密性。
数据的完整性:通过单向加密算法保证数据的完整性。
身份的安全验证:提供数据发送者的身份。

二、加密类型及功能:
单向加密:提取数据特征码,实现数据完整性验证
对称加密:数据加密,实现数据私密性
公钥加密:使用对方公钥加密,实现秘钥交换;使用自己私钥加密,实现身份验证
三、SSL 会话流程



1.客户端向服务端发起SSL会话信息,将自己支持的一套加密规则发送给网站。
2.服务端从中选出一组加密算法与HASH算法与浏览器进行协商确认,并将自己的身份信息CA证书的发送给浏览器。
证书信息如图所示



3.验证证书的合法性(颁发证书的机构是否合法,证书是否完整有无篡改、证书是否在CA吊销库中、证书中包含的网站地址是否与正在访问的地址一致等);
4.如果证书不受信任,浏览器会弹出警告信息;等待操作人员确认是否继续,继续极为信任证书执行4步骤,如不信任终止会话;
5.如果证书受信任,或者是用户接受了不受信的证书,浏览器会生成一串随机数的密码(这串密码将作为后续对称加密通讯的初始秘钥使用);
6.使用协商好的HASH算法对随机秘钥进行单向加密计算出指纹信息,并使用客户端私钥对指纹信息进行加密,使用服务端公钥信息对秘钥和加密的指纹信息加密后发送给服务端;
7.服务端使用自己的私钥将密文解开后获取秘钥,使用客户端公钥解密获得秘钥指纹信息并作对比并验证客户端身份;
8.之后所有的通信数据将由之前浏览器生成的随机密码并利用对称加密算法进行加密,并按照协商定期更换秘钥。
CA证书是一个加密会话建立信任的初始阶段,互联网上的知名网站的证书肯定是要想CA认证机构申请的,费用也是相当可观的。而公司内部一些建立于CA之上的通讯完成可以通过Openssl来建立私有的CA服务。四、使用Openssl建立私有CAopenssl 配置文件 /etc/pki/tls/openssl.cnf
4.1初始化服务器工作环境
4.2 创建秘钥对及自认证证书
4.3 证书申请节点生成私钥及签名请求
4.4 CA服务器对此证书请求进行签名并返回给此服务器
吊销证书
如果你的私钥泄露了,那么证书就不能使用了,需要去CA服务器申请吊销此证书

国庆假期快乐~!

Openssl是SSL的开源实现,是一种安全机密程序,主要用于提高远程登录访问的安全性。也是目前加密算法所使用的工具之一,功能很强大。
Openssl为网络通信提供安全及数据完整性的一种安全协议,包括了主要的密码算法、常用的密钥和证书封装管理功能(CA)以及SSL协议,并提供了丰富的应用程序供测试或其它目的使用,例如我们将会使用Openssl实现私有CA,并实现证书颁发。
OpenSSL:SSL的开源实现
libcrypto:通用加密库,提供了各种加密函数
libssl:TLS/SSL协议的实现,基于会话的、实现了身份认证、数据机密性和会话完整性的TLS/SSL库
openssl:多用途的命令行工具;能够实现私有证书颁发机构;即在公司内部实现身份的验证;
SSL:(Secure Socket Layer)安全套接字层,通过一种机制在互联网上提供密钥传输。其主要目标是保证两个应用间通信数据的保密性和可靠性,可在服务器端和用户端同时支持的一种加密算法。目前主流版本SSLV2、SSLV3

一、SSL提供以下功能:
数据的机密性:通过对称加密算法实现数据的机密性。
数据的完整性:通过单向加密算法保证数据的完整性。
身份的安全验证:提供数据发送者的身份。

二、加密类型及功能:
单向加密:提取数据特征码,实现数据完整性验证
对称加密:数据加密,实现数据私密性
公钥加密:使用对方公钥加密,实现秘钥交换;使用自己私钥加密,实现身份验证
三、SSL 会话流程



1.客户端向服务端发起SSL会话信息,将自己支持的一套加密规则发送给网站。
2.服务端从中选出一组加密算法与HASH算法与浏览器进行协商确认,并将自己的身份信息CA证书的发送给浏览器。
证书信息如图所示



3.验证证书的合法性(颁发证书的机构是否合法,证书是否完整有无篡改、证书是否在CA吊销库中、证书中包含的网站地址是否与正在访问的地址一致等);
4.如果证书不受信任,浏览器会弹出警告信息;等待操作人员确认是否继续,继续极为信任证书执行4步骤,如不信任终止会话;
5.如果证书受信任,或者是用户接受了不受信的证书,浏览器会生成一串随机数的密码(这串密码将作为后续对称加密通讯的初始秘钥使用);
6.使用协商好的HASH算法对随机秘钥进行单向加密计算出指纹信息,并使用客户端私钥对指纹信息进行加密,使用服务端公钥信息对秘钥和加密的指纹信息加密后发送给服务端;
7.服务端使用自己的私钥将密文解开后获取秘钥,使用客户端公钥解密获得秘钥指纹信息并作对比并验证客户端身份;
8.之后所有的通信数据将由之前浏览器生成的随机密码并利用对称加密算法进行加密,并按照协商定期更换秘钥。
CA证书是一个加密会话建立信任的初始阶段,互联网上的知名网站的证书肯定是要想CA认证机构申请的,费用也是相当可观的。而公司内部一些建立于CA之上的通讯完成可以通过Openssl来建立私有的CA服务。四、使用Openssl建立私有CAopenssl 配置文件 /etc/pki/tls/openssl.cnf
4.1初始化服务器工作环境
4.2 创建秘钥对及自认证证书
4.3 证书申请节点生成私钥及签名请求
4.4 CA服务器对此证书请求进行签名并返回给此服务器
吊销证书
如果你的私钥泄露了,那么证书就不能使用了,需要去CA服务器申请吊销此证书

国庆假期快乐~!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: