在 Linux 下“测试 OpenSSL”可以有多种含义,下面按常见场景给你一套实用指南,你可以根据需要选用。
openssl version
正常输出示例:
OpenSSL 3.0.2 15 Mar 2022
如果提示 command not found,可安装:
sudo apt update
sudo apt install openssl
sudo yum install openssl
# 生成 RSA 私钥
openssl genrsa -out key.pem 2048
# 生成自签名证书
openssl req -new -x509 -key key.pem -out cert.pem -days 365
测试是否成功:
openssl x509 -in cert.pem -text -noout
echo "hello openssl" > test.txt
# 加密
openssl enc -aes-256-cbc -salt -in test.txt -out test.enc
# 解密
openssl enc -d -aes-256-cbc -in test.enc -out test.dec
cat test.dec
echo "test" | openssl dgst -sha256
openssl s_client -connect www.baidu.com:443
查看:
退出:按 Ctrl+C
openssl s_client -connect www.baidu.com:443 -tls1_2
openssl s_client -connect www.baidu.com:443 -tls1_3
openssl s_server -key key.pem -cert cert.pem -accept 8443
另开终端测试:
openssl s_client -connect localhost:8443
openssl speed
或指定算法:
openssl speed aes-256-cbc
openssl speed rsa
| 问题 | 可能原因 |
|---|---|
| 不支持 TLS1.3 | OpenSSL 版本 < 1.1.1 |
| 证书报错 | 系统时间不正确 |
| 连接失败 | 防火墙 / 端口未开放 |
可测试:
libssl, libcrypto)ssl, cryptography)可以告诉我你具体想测 哪一方面(命令?网络?开发?安全合规?),我可以给你更针对性的测试方案。