以下是OpenSSL在Debian中的使用技巧:
快速安装
使用APT包管理器安装OpenSSL及开发库:
sudo apt update && sudo apt install openssl libssl-dev
验证安装:openssl version
。
源码编译安装(需特定版本)
下载源码后编译:
wget https://www.openssl.org/source/openssl-版本号.tar.gz
tar -xzvf openssl-版本号.tar.gz
cd openssl-版本号
./config shared zlib
make && sudo make install
sudo ldconfig
```。
生成RSA密钥对
openssl genpkey -algorithm RSA -out private.key -aes256 # 私钥(加密存储)
openssl rsa -in private.key -pubout -out public.key # 提取公钥
```。
生成自签名证书
openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 -nodes
(-nodes
表示不加密私钥)。
查看证书信息
openssl x509 -in cert.pem -text -noout
```。
对称加密(AES-256-CBC)
echo "敏感数据" | openssl enc -aes-256-cbc -a -salt -pass pass:密码 -out encrypted.enc
openssl enc -d -aes-256-cbc -a -pass pass:密码 -in encrypted.enc -out decrypted.txt
```。
非对称加密(RSA)
echo "数据" | openssl rsautl -encrypt -inkey public.key -pubin -out encrypted.bin
openssl rsautl -decrypt -inkey private.key -in encrypted.bin -out decrypted.txt
```。
生成文件哈希
openssl dgst -sha256 file.txt
```。
数字签名
echo "数据" | openssl dgst -sha256 -sign private.key -out signature.bin
openssl dgst -sha256 -verify public.key -signature signature.bin file.txt
```。
配置SSL/TLS服务器
# Nginx示例(编辑/etc/nginx/sites-available/default-ssl.conf)
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/private.key;
重启服务:sudo systemctl restart nginx
。安全优化
openssl genrsa -aes256 -passout pass:强密码 -out private.key
。chmod 600 private.key
。调试与排查
openssl list -cipher-commands
。openssl s_client -connect example.com:443 -showcerts
。sudo apt upgrade openssl
。以上技巧覆盖日常加密、证书管理及服务器配置需求,更多命令可参考man openssl
或官方文档。