debian

OpenSSL在Debian上的使用案例

小樊
36
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
看了该问题的人还看了