在 Linux 上使用 OpenSSL 进行“优化”,通常取决于你的使用场景:是做 HTTPS 服务、命令行加解密、还是开发调用 OpenSSL 的程序。下面按常见方向给你一套实用优化建议。
老版本不仅慢,还有安全漏洞。
openssl version
建议:
⚠️ 编译新版注意兼容已有程序(尤其是 Nginx、curl)
现代 CPU 支持 AES-NI,OpenSSL 默认会用,但可确认:
openssl speed aes-128-cbc
若极快(GB/s 级),说明已启用。
确保未禁用:
cat /proc/cpuinfo | grep aes
ssl_protocols TLSv1.2 TLSv1.3;
TLS 1.3:
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
减少重复握手开销。
ssl_ecdh_curve X25519:prime256v1;
X25519 比传统曲线更快。
ssl_stapling on;
ssl_stapling_verify on;
避免客户端访问 CA。
❌ 不推荐:
openssl enc -aes-256-cbc -in big.iso -out big.iso.enc
✅ 可加:
openssl enc -aes-256-cbc -pbkdf2 -iter 100000 \
-in big.iso -out big.iso.enc
减少密码派生成本(视安全需求)。
可用:
split + openssl + cat
或 pigz / parallel
./config --prefix=/usr/local/ssl \
enable-ec_nistp_64_gcc_128 \
no-shared \
-O3 -march=native
make -j$(nproc)
worker_processes auto;
| 场景 | 优化点 |
|---|---|
| HTTPS 慢 | TLS1.3 + 会话复用 |
| CPU 高 | AES-NI + ECDHE |
| 握手多 | OCSP + Session |
| 加密大文件 | 流式 + 合理迭代 |
| 高并发 | 多进程 / 异步 IO |
如果你能说清楚:
我可以给你更针对性的配置示例。