OpenSSL 常见问题

OpenSSL 配置

openssl 命令可以显示配置目录路径:

~# openssl version -d
OPENSSLDIR: "/usr/lib/ssl"

加密套件

显示加密套件列表,并支持根据 SECLEVEL 进行过滤:

~# openssl ciphers -s -v 'DEFAULT:@SECLEVEL=2'

为新版本 OpenSSL 开启 TLSv1 支持

较新版本的 OpenSSL 默认禁用了 TLS v1.0 版本,如果确实需要连接使用 TLSv1 的服务器,可以自定义配置文件。

例如新增一个 ~/.openssl.cnf 配置文件,指定 MinProtocol

openssl_conf = openssl_init

[openssl_init]
ssl_conf = ssl_sect

[ssl_sect]
system_default = system_default_sect

[system_default_sect]
CipherString = DEFAULT@SECLEVEL=1
MinProtocol = TLSv1.0

然后指定 OpenSSL 配置文件环境变量运行 curl 等命令进行请求:

~# OPENSSL_CONF=~/.openssl.cnf curl -v -k https://server/