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