openssl version算法
显示当前openssl的版本数据库
libcrypto libssl openssl服务器
标准命令dom
ca工具
randthis
enc加密
x509ip
genrsamd5
gendsassl
req
...
消息摘要(dgst子命令)
加密命令
对称加密
工具 openssl enc gpg
openssl enc -e(-d解密 -e加密) -des3(算法) -a(base64文本) -salt -in fstab(被加密的文件) -out fstab.ciphertext (输出文件)
单向加密
工具 openssl dgst md5sum sha1sum sha224sum...
md5sum dgst -md5 fstab 计算文件特征码
生成用户密码:
工具 passwd openssl
openssl passwd -1 -salt 12345678
生成随机数:
工具 openssl rand
openssl rand -base64 10(生成位数)
openssl rand -hex 10(十六进制生成长度为10)
openssl passwd -1 -salt $(openssl rand -hex 4)
公钥加密
加密解密
算法 rsa elgamal
工具 openssl rsautl gpg
数字签名
算法 ras dsa elgamal
工具 openssl rsautl gpg
密钥交换
算法 dh
openssl genrsa 1024(位数) 生成private key
openssl genrsa -out /path/to/some/where
(umask 077; openssl genrsa -out /path/to/some/where 2048)
提取公钥
openssl ras in /path/to/somewhere -pubout
Linux系统上的随机数生成器
/dev/random 仅从熵池返回随机数,随机数用尽,阻塞
/dev/urandom 从熵池返回随机数,随机数用尽,会利用软件生成伪随机数,非阻塞
熵池中的随机数来源
硬盘io中断时间间隔
键盘io中断时间间隔
ca 公共ca 私有ca
创建私有ca
openssl
openca
构建过程
在肯定配置为CA的服务器上生成一个自签证书,并为CA提供所须要的目录及文件便可
1,生成私钥 (/etc/pki/CA/private)
(umask 077; openssl genrsa -out /etc/pki/CA/private/cakey.perm 4096)
2,生成自签证书
提供所需目录
mkidr /etc/pki/CA/{certs.,crl,newcerts}
touch /etc/pki/CA/{serial,index.txt}
echo 01> /etc/pki/serial
openssl req -new -x509 -key /et/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days 3650
-new 生成新证书的签署请求
-x509 生成自签格式的证书,专用于建立私有CA时
-key 生成请求时用到的私有文件路径
-out 生成请求文件的路径,若是自签操做将直接生成签署过的证书
-days 证书的有效时长,单位天,默认时长为10年
为其余主机或机构签署证书
openssl ca -in xxx -out xxx -days xxx
证书信息查看
openssl x509 -in xxx -noout -serial -subject
吊销证书
步骤 在CA上执行
1 客户端获取要吊销的证书serial (在使用的主机上执行)
openssl x509 -in xxx -noout -serial -subject
2 CA端吊销证书
先根据客户端提交的serial和subject信息,对比与本机的数据库index中存储的是否一致
openssl ca -revoke /etc/pki/CA/newcerts/SERIAL.perm
3 生成吊销证书的吊销编号 只在第一次吊销执行
echo 01 > /etc/pki/CA/crlnumber
4 更新吊销列表
openssl ca -genrsa -out thisca.crl
查看crl文件
openssl crl in xxx -noout -text