OpenSSL命令行工具的常用功能和操作指南是什么?
基礎(chǔ)證書(shū)操作
OpenSSL提供完整的證書(shū)管理功能:
- 生成私鑰:openssl genrsa -out private.key 2048
- 創(chuàng)建證書(shū)簽名請(qǐng)求:openssl req -new -key private.key -out cert.csr
- 自簽名證書(shū)生成:openssl x509 -req -days 365 -in cert.csr -signkey private.key -out cert.crt
加密解密操作
文件加密與解密是OpenSSL的核心功能:
- 加密文件:openssl enc -aes-256-cbc -in plain.txt -out encrypted.txt
- 解密文件:openssl enc -d -aes-256-cbc -in encrypted.txt -out decrypted.txt
- 支持多種加密算法:AES、DES、3DES等
密鑰管理與轉(zhuǎn)換
靈活的密鑰格式轉(zhuǎn)換功能:
- PEM轉(zhuǎn)DER格式:openssl x509 -in cert.pem -outform der -out cert.der
- 提取公鑰:openssl rsa -in private.key -pubout -out public.key
- 密鑰格式轉(zhuǎn)換:openssl pkcs12 -export -in cert.pem -inkey private.key -out cert.p12
證書(shū)驗(yàn)證與檢查
證書(shū)信息查看與驗(yàn)證工具:
- 查看證書(shū)信息:openssl x509 -in cert.pem -text -noout
- 驗(yàn)證證書(shū)鏈:openssl verify -CAfile ca.crt cert.crt
- 檢查證書(shū)過(guò)期:openssl x509 -enddate -noout -in cert.pem
哈希與摘要計(jì)算
文件完整性驗(yàn)證功能:
- 計(jì)算MD5:openssl md5 filename
- 生成SHA256:openssl sha256 filename
- 多種哈希算法支持:SHA1、SHA384、SHA512等
網(wǎng)絡(luò)安全測(cè)試
SSL/TLS連接測(cè)試工具:
- 連接測(cè)試:openssl s_client -connect host:port
- 協(xié)議版本檢查:openssl s_client -connect host:port -tls1_2
- 密碼套件測(cè)試:openssl ciphers -v 'HIGH:!aNULL'
性能優(yōu)化建議
證書(shū)和密鑰管理最佳實(shí)踐:
- 使用強(qiáng)密鑰長(zhǎng)度(RSA 2048位以上)
- 定期更新證書(shū)和密鑰
- 妥善保管私鑰文件
- 建立完整的證書(shū)更新流程
常見(jiàn)問(wèn)題解決
日常使用中的技術(shù)要點(diǎn):
- 證書(shū)鏈配置問(wèn)題處理
- 密鑰格式兼容性解決
- 證書(shū)簽名錯(cuò)誤診斷
- 加密性能優(yōu)化方案