Linux下的安全工具openssl

 

【安全特性】

 1、保密性:数据保密性、隐私性

 2、完整性:数据完整性、系统完整性

 3、可用性

 4、真实性:确保数据发送方不是被替换的

 5、可追溯性

【安全攻击】

被动攻击:窃听

主动攻击:伪装、重播、消息修改、拒绝服务

【安全服务】

 认证、访问控制、数据保密性、数据完整性、不可否认性

【安全机制】

加密、数字签名、访问控制、数据完整性、认证交换、流量填充、路由控制、公证

【密码算法和协议】

对称加密、公钥加密、单向加密、认证协议

 

 

Linux上公用的加密解密工具:gpgopenssl

 

Openssl的组成】

1、openssl 多用途命令工具(各功能用子命令实现)

2、/usr/lib/libcrypto 公共加密库

3、Libssl   ssl协议的实现

 

【用openssl实现对称加密】

语法格式:openssl enc -des 3 -a -salt -in 源文件 -out 目标文件(存放生成的密码)

例:

Linux之加密解密工具openssl的用法以及自建CA_openssl


上述例子是加密过程,我们再来演示一下解密过程。

Linux之加密解密工具openssl的用法以及自建CA_linux_02


【用openssl实现单向加密】

语法格式:openssl dgst [-md5 | -sha1] [-out 文件路径文件路径

 

【生成随机数】

Openssl rand -base64 | hex 4

Openssl passwd -1 -salt openssl rand -hex 4

【生成密钥】

语法格式:openssl genrsa [-out 文件路径长度

(umask 077; openssl genrsa -out /root/key 1024)

提出公钥:openssl rsa -in /root/key -pubout

 

 

【使用openssl创建私有CA

CA服务1CA自身生成密钥

            2、给自己发证书(字签证书)

通信节点:1、生成密钥文件

          2、生成证书签署请求

          3、把请求发给CA

CA服务:1、验证请求信息

         2、签署证书

         3、把签好的证书发给节点

实际过程:建立CA服务器:1、生成密钥

                         cd /etc/pki/CA

                         (umask 077; openssl genrsa -out private/cakey.pem 2048)

                         2、生成证书签署请求

                           openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days 3000

Linux之加密解密工具openssl的用法以及自建CA_openssl_03


   3、初始化工作环境

            touchu /etc/pki/CA/{index.txt,serial}

            echo 00 > /etc/pki/CA/serial

二、节点申请证书

     1、节点生成请求

         生成密钥对:(umask 077; openssl genrsa -out /etc/httpd/ssl/httpd.key 2048)

生成证书签署请求:openssl req -new -key /etc/httpd/ssl/httpd.key -out /etc/httpd/ssl/httpd.csr

 

三、CA签署证书请求

        openssl ca -in /path/to/somefile.csr -out /path/to/somefile.crt -days N

 

【吊销证书】

一、节点

1、获取证书serial

 openssl x509 -in /path/to/certificate_file.crt -noout -serial -subject

二、 CA

2、根据节点提交的serialsubject信息来验正与index.txt文件中的信息是否一致;

    3、吊销证书

 openssl ca -revoke /etc/pki/CA/newcerts/SERIAL.pem

    4、生成吊销证书的编号(如果是第一次吊销)

 echo 00 > /etc/pki/CA/crlnumber

    5、更新证书吊销列表

 cd /etc/pki/CA/crl/

 openssl ca -gencrl -out thisca.crl

 

查看crl内容:openssl crl -in /path/to/crlfile.crl -noout -text