温馨提示×

Linux下OpenSSL命令怎么用

小樊
62
2025-09-10 21:41:15
栏目: 云计算

OpenSSL是一个强大的加密工具,它可以在Linux系统下用于执行各种加密和解密任务。以下是一些常用的OpenSSL命令及其用法:

1. 生成密钥对

  • 生成RSA私钥
    openssl genrsa -out private_key.pem 2048
    
  • 生成RSA公钥
    openssl rsa -in private_key.pem -pubout -out public_key.pem
    

2. 生成证书签名请求(CSR)

openssl req -new -key private_key.pem -out request.csr

在执行此命令时,系统会提示你输入一些信息,如国家、组织名称等。

3. 自签名证书

openssl req -x509 -new -nodes -key private_key.pem -sha256 -days 3650 -out certificate.crt

4. 验证证书

openssl verify -CAfile ca_certificate.pem certificate.crt

5. 加密文件

openssl enc -aes-256-cbc -salt -in plaintext.txt -out encrypted.txt -pass pass:yourpassword

6. 解密文件

openssl enc -d -aes-256-cbc -in encrypted.txt -out decrypted.txt -pass pass:yourpassword

7. 生成随机数

openssl rand -base64 32

8. 查看证书信息

openssl x509 -in certificate.crt -text -noout

9. 转换证书格式

  • 从PEM转换到DER
    openssl x509 -in certificate.pem -outform DER -out certificate.der
    
  • 从DER转换到PEM
    openssl x509 -in certificate.der -inform DER -outform PEM -out certificate.pem
    

10. 创建PKCS#12文件(PFX)

openssl pkcs12 -export -in certificate.crt -inkey private_key.pem -out keystore.pfx -name mycert

在执行此命令时,系统会提示你输入一个导出密码。

11. 导入PKCS#12文件

openssl pkcs12 -in keystore.pfx -out private_key.pem -nocerts -nodes
openssl pkcs12 -in keystore.pfx -clcerts -nokeys -out certificate.crt

12. 生成Diffie-Hellman参数

openssl dhparam -out dhparams.pem 2048

13. 生成ECDH密钥对

openssl ecparam -genkey -name secp384r1 -out ecdh_private_key.pem
openssl ec -in ecdh_private_key.pem -pubout -out ecdh_public_key.pem

注意事项

  • 在使用OpenSSL命令时,确保你有足够的权限来读取和写入相关文件。
  • 对于敏感操作(如生成私钥),请确保在安全的环境中进行,并妥善保管生成的密钥文件。
  • 在处理证书和密钥时,遵循最佳实践,如使用强密码、定期更新密钥等。

通过这些命令,你可以在Linux系统下执行各种加密和解密任务。如果你需要更详细的帮助或有特定的需求,请查阅OpenSSL的官方文档或使用openssl help命令获取更多信息。

0