Ubuntu OpenSSL命令主要用于处理加密和解密任务,以下是一些常用的OpenSSL命令:
openssl genrsa -out rsa_key.pem 2048
:生成2048位的RSA私钥。openssl rsa -in rsa_key.pem -pubout -out rsa_pub.pem
:从私钥生成公钥。openssl req -new -key rsa_key.pem -out csr.pem
:创建一个新的CSR文件。openssl req -x509 -days 365 -in csr.pem -signkey rsa_key.pem -out certificate.pem
:生成自签名证书。openssl x509 -in certificate.pem -text -noout
:显示证书的详细信息。openssl enc -aes-256-cbc -salt -in plaintext.txt -out encrypted.bin -pass pass:yourpassword
:使用AES-256-CBC算法加密文件。openssl enc -d -aes-256-cbc -in encrypted.bin -out decrypted.txt -pass pass:yourpassword
:解密文件。openssl rand -hex 32
:生成32字节的随机十六进制字符串。openssl dgst -sha256 -sign private_key.pem -out signature.bin plaintext.txt
:使用SHA-256算法对文件进行签名。openssl dgst -sha256 -verify public_key.pem -signature signature.bin plaintext.txt
:验证签名。openssl x509 -in certificate.pem -outform DER -out certificate.der
:将PEM格式的证书转换为DER格式。openssl x509 -in certificate.der -outform PEM -out certificate.pem
:将DER格式的证书转换回PEM格式。openssl rsa -in rsa_key.pem -check
:检查私钥的有效性。openssl rsa -in rsa_key.pem -passin pass:yourpassword -out rsa_key_unencrypted.pem
:去除私钥的密码保护。openssl s_client -connect example.com:443
:连接到指定服务器并显示SSL/TLS握手信息。openssl s_server -www -port 443
:启动一个简单的SSL/TLS服务器。这些命令涵盖了OpenSSL的大部分常用功能,但在实际应用中可能还需要根据具体需求进行调整和扩展。