溫馨提示×

OpenSSL在Debian上的使用案例

小樊
37
2025-09-09 13:12:46
欄目: 云計算

以下是OpenSSL在Debian上的幾個典型使用案例:

一、安裝OpenSSL

sudo apt update
sudo apt install openssl

二、生成SSL證書(自簽名,用于測試)

  1. 生成私鑰
openssl genpkey -algorithm RSA -out private.key -aes256
  1. 生成證書簽名請求(CSR)
openssl req -new -key private.key -out server.csr
  1. 生成自簽名證書
openssl x509 -req -days 365 -in server.csr -signkey private.key -out server.crt
  1. 配置Nginx使用證書
    將私鑰和證書復制到服務器目錄并修改配置:
sudo cp private.key /etc/ssl/private/
sudo cp server.crt /etc/ssl/certs/
# 編輯Nginx配置文件,指定證書路徑后重啟服務
sudo nginx -t && sudo systemctl restart nginx

三、數據加密與解密

1. 對稱加密(AES-256-CBC)

  • 加密文件
echo "敏感數據" | openssl enc -aes-256-cbc -a -salt -pbkdf2 -out encrypted.enc
  • 解密文件
openssl enc -d -aes-256-cbc -a -pbkdf2 -in encrypted.enc -out decrypted.txt

2. 非對稱加密(RSA)

  • 生成密鑰對
openssl genpkey -algorithm RSA -out rsa_key.pem -aes256  # 私鑰
openssl rsa -pubout -in rsa_key.pem -out rsa_pubkey.pem  # 公鑰
  • 用公鑰加密
echo "機密信息" | openssl pkeyutl -encrypt -pubin -inkey rsa_pubkey.pem -out encrypted.bin
  • 用私鑰解密
openssl pkeyutl -decrypt -inkey rsa_key.pem -in encrypted.bin -out decrypted.txt

四、數字簽名

  1. 生成簽名
echo "待簽名數據" | openssl dgst -sha256 -sign rsa_key.pem -out signature.bin
  1. 驗證簽名
openssl dgst -sha256 -verify rsa_pubkey.pem -signature signature.bin -data "待簽名數據"

五、證書轉換(可選)

將證書和私鑰打包為PKCS#12格式(用于部分服務器):

openssl pkcs12 -export -out cert.p12 -inkey private.key -in server.crt

以上案例覆蓋了證書管理、數據加密、簽名等常見場景,可根據實際需求選擇使用。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女