OpenSSL命令行工具Linux使用指南
以下是Linux下OpenSSL命令行工具的核心使用指南,涵盖基础操作与常见场景:
一、基础安装与验证
- 安装OpenSSL
- Debian/Ubuntu:
sudo apt update && sudo apt install openssl
- CentOS/RHEL:
sudo yum install openssl
- Debian/Ubuntu:
- 验证安装
输出版本号即表示安装成功。openssl version
二、密钥与证书管理
- 生成RSA私钥
openssl genrsa -out private_key.pem 2048 # 2048位私钥,默认不加密 openssl genrsa -aes256 -out encrypted_key.pem 2048 # 加密私钥(需输入密码)
- 提取公钥
openssl rsa -in private_key.pem -pubout -out public_key.pem
- 生成自签名证书
openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 # 有效期365天
- 生成证书签名请求(CSR)
openssl req -new -key private_key.pem -out request.csr # 需填写国家、组织等信息
- 验证证书
openssl verify -CAfile ca_cert.pem certificate.pem # 验证证书是否由指定CA签发
三、加密与解密
- 文件加密(AES-256-CBC)
openssl enc -aes-256-cbc -salt -in plaintext.txt -out encrypted.bin -pass pass:yourpassword # 直接输入密码
- 文件解密
openssl enc -d -aes-256-cbc -in encrypted.bin -out decrypted.txt -pass pass:yourpassword
四、其他常用操作
- 查看证书详情
openssl x509 -in cert.pem -text -noout # 显示证书有效期、颁发者等信息
- 转换证书格式
openssl x509 -in cert.pem -outform der -out cert.der # PEM转DER openssl x509 -in cert.der -inform der -outform pem -out cert.pem # DER转PEM
- 生成随机数
openssl rand -base64 32 # 生成32字节随机数,Base64编码
- 测试SSL/TLS连接
openssl s_client -connect example.com:443 -servername example.com # 查看服务器证书链
五、注意事项
- 权限管理:私钥文件需设置为
600
权限,避免泄露。 - 密码安全:加密操作中使用的密码需妥善保管,可通过
-pass
参数指定密码来源(如文件、环境变量)。 - 算法选择:优先使用AES-256-CBC等强加密算法,避免过时算法(如DES)。
更多高级功能(如DH密钥交换、OCSP请求等)可参考官方文档或使用openssl help
命令查看详细参数。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权请联系我们,一经查实立即删除!