“Linux 下 OpenSSL 失败”是一个比较宽泛的说法,原因可能有很多种。下面我按常见场景帮你梳理一下可能原因和排查方法。
现象
openssl: command not found
原因
解决
which openssl
安装:
sudo apt install openssl
sudo yum install openssl
# 或
sudo dnf install openssl
常见错误
unable to write 'random state'Can't open ... for writing原因
解决
sudo openssl genrsa -out key.pem 2048
# 或
cd /tmp
openssl genrsa -out key.pem 2048
现象
openssl s_client -connect example.com:443
报错:
certificate verify failedconnection refusedno protocols available可能原因
openssl s_client -connect example.com:443 -CAfile /etc/ssl/certs/ca-certificates.crt
date
openssl s_client -connect example.com:443 -tls1_2
现象
openssl version mismatch原因
排查
openssl version
ldd $(which openssl)
常见问题:
解决:
sudo apt install libssl-dev
编译时:
gcc test.c -lssl -lcrypto
如果能补充以下信息,我可以更准确判断:
如果你愿意,可以把报错贴出来,我可以直接帮你分析。