OpenSSL是一个强大的开源工具,用于处理加密和解密任务,以及生成和管理证书和密钥。以下是一些基本的OpenSSL命令行用法:
openssl genrsa -out private.key 2048
这条命令会生成一个2048位的RSA私钥,并将其保存到private.key
文件中。
openssl req -new -x509 -days 365 -key private.key -out certificate.crt
这条命令会使用上一步生成的私钥private.key
来创建一个有效期为365天的自签名证书,并将其保存到certificate.crt
文件中。
openssl x509 -in certificate.crt -text -noout
这条命令会显示certificate.crt
证书的详细信息。
openssl enc -aes-256-cbc -salt -in plaintext.txt -out encrypted.bin
这条命令会使用AES-256-CBC算法加密plaintext.txt
文件,并将加密后的内容保存到encrypted.bin
文件中。
openssl enc -d -aes-256-cbc -in encrypted.bin -out decrypted.txt
这条命令会使用相同的AES-256-CBC算法解密encrypted.bin
文件,并将解密后的内容保存到decrypted.txt
文件中。
openssl dhparam -out dhparams.pem 2048
这条命令会生成2048位的Diffie-Hellman参数,并将其保存到dhparams.pem
文件中。
openssl ecparam -genkey -name secp384r1 -out ecdh_key.pem
这条命令会生成一个基于secp384r1曲线的ECDH密钥对,并将其保存到ecdh_key.pem
文件中。
openssl s_client -connect example.com:443 -showcerts </dev/null 2>/dev/null | openssl x509 -outform PEM > chain.pem
这条命令会连接到example.com
的443端口,获取其证书链,并将其保存到chain.pem
文件中。
通过这些基本命令,你可以开始使用OpenSSL进行加密、解密、证书管理和密钥生成等任务。