linux

Linux系统中OpenSSL的常用命令有哪些

小樊
40
2025-04-11 18:51:38
栏目: 云计算

在Linux系统中,OpenSSL是一个强大的加密工具包,它提供了多种命令来处理加密、解密、签名、验证等任务。以下是一些常用的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 certificate_signing_request.csr
  3. 生成自签名证书

    • openssl req -x509 -new -nodes -key private_key.pem -sha256 -days 365 -out certificate.pem
  4. 查看证书信息

    • openssl x509 -in certificate.pem -text -noout
  5. 加密文件

    • 对称加密:openssl enc -aes-256-cbc -salt -in plaintext.txt -out encrypted.bin
    • 非对称加密:openssl pkeyutl -encrypt -pubin -inkey public_key.pem -in plaintext.txt -out encrypted.bin
  6. 解密文件

    • 对称解密:openssl enc -d -aes-256-cbc -in encrypted.bin -out decrypted.txt
    • 非对称解密:openssl pkeyutl -decrypt -inkey private_key.pem -in encrypted.bin -out decrypted.txt
  7. 生成Diffie-Hellman参数

    • openssl dhparam -out dhparams.pem 2048
  8. 生成或转换密钥格式

    • 将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
  9. 签名和验证

    • 签名文件:openssl dgst -sha256 -sign private_key.pem -out signature.bin file.txt
    • 验证签名:openssl dgst -sha256 -verify public_key.pem -signature signature.bin file.txt
  10. 创建和管理PKCS#12文件(PFX)

    • 导出PKCS#12文件:openssl pkcs12 -export -in certificate.pem -inkey private_key.pem -out keystore.pfx
    • 导入PKCS#12文件:openssl pkcs12 -in keystore.pfx -out certificate.pem -clcerts -nokeys
  11. 查看私钥信息

    • openssl rsa -in private_key.pem -check
  12. 更改私钥密码

    • openssl rsa -aes256 -in private_key.pem -out new_private_key.pem

这些命令只是OpenSSL功能的一部分。OpenSSL非常强大,可以执行许多其他任务,包括处理SSL/TLS连接、创建和管理证书颁发机构(CA)、以及进行各种加密算法的操作。在使用这些命令时,请确保你了解它们的作用以及如何安全地使用它们。

0
看了该问题的人还看了