SSL是Secure Socket Layer(安全套接层协议)的缩写, OpenSSL提供的功能相当强大和全面,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供了丰富的应用程序供测试或其它目的使用。

检查有没有安装openssl包,如果没有安装,则先安装openssl,这里用yum安装:

[root@master ~]# rpm -q openssl
openssl-1.0.1e-30.el6.x86_64
[root@master ~]# yum -y install openssl

一、使用openssl实现对称加密和解密文件

    使用enc工具为例,加密/tmp/test.txt文件生成test.aes文件


openssl的加密算法 openssl设置加密套件_数据库

    解密test.aes文件

openssl的加密算法 openssl设置加密套件_数据库_02


二、使用openssl生成密钥对

1、  首先生成私钥

openssl的加密算法 openssl设置加密套件_openssl的加密算法_03

2、  从私钥中提取公钥

openssl的加密算法 openssl设置加密套件_存储位置_04

三、使用openssl实现单向加密,提取文件指纹

以dgst工具,md5算法为例

openssl的加密算法 openssl设置加密套件_存储位置_05

四、使用openssl实现构建私有CA

openssl的主配置文件:/etc/pki/tls/openssl.cnf

[CA_default]
dir: CA的主目录
certs: 已颁发证书的存储位置
crl_dir:已吊销证书的存储位置
database:证书索引文件
new_certs_dir:新颁发证书的存储位置
certificate:        CA证书文件
serial:证书颁发时的当前序列号
crlnumber:吊销证书的当前序列号
crl:当前使用的CRL
private_key: CA私钥
RANDFILE:私有随机数生成器文件

(1)      生成私钥

openssl的加密算法 openssl设置加密套件_序列号_06

(2)      生成自签署证书

openssl的加密算法 openssl设置加密套件_存储位置_07

(3)      后续工作

openssl的加密算法 openssl设置加密套件_运维_08

五、给节点颁发证书

(1)      节点申请证书

1、生成私钥

openssl的加密算法 openssl设置加密套件_数据库_09

2、生成证书签署请求

openssl的加密算法 openssl设置加密套件_数据库_10

3、把请求发送给CA

openssl的加密算法 openssl设置加密套件_数据库_11

(2)      CA签署证书

1、  验证请求者的信息并签署证书

openssl的加密算法 openssl设置加密套件_存储位置_12

2、  把签署好的证书发送给请求者

(3)      查看证书信息

openssl的加密算法 openssl设置加密套件_运维_13

六、吊销证书(节点)

(1)      获取证书的serial(证书持有端)

openssl的加密算法 openssl设置加密套件_序列号_14

(2)      CA根据证书持有者提交的serial和subject信息来与index.txt数据库文件中的信息是否一致来确定是否吊销证书

openssl的加密算法 openssl设置加密套件_数据库_15

(3)      第一次吊销证书的后续工作

1、  生成吊销证书的编号

openssl的加密算法 openssl设置加密套件_openssl的加密算法_16

2、  更新证书吊销列表并查看crl文件

openssl的加密算法 openssl设置加密套件_数据库_17


https://blog.51cto.com/zhouxt/1641579