我在Windows XP Machine上使用OpenSSL“Win32OpenSSL_Light-1_0_1j”。我创建了以下密钥和证书
根CA,我已经存储了客户端(目标板)。
在此之后,我从命令提示符处发出命令以连接到客户端(目标广泛)。
但我收到了错误。
s_server -accept 443 -cert server-certificate.crt -CAfile RootCA-cert.crt -key servertest.key
Enter pass phrase for servertest.key:
Loading 'screen' into random state - done
15424:error:02001002:system library:fopen:No such file or directory:.\crypto\bio\bss_file.c:169:fopen('RootCA-cert.crt','r')
15424:error:2006D080:BIO routines:BIO_new_file:no such file:.\crypto\bio\bss_file.c:172:
15424:error:0B084002:x509 certificate routines:X509_load_cert_crl_file:system lib:.\crypto\x509\by_file.c:274:
Using default temp DH parameters
Using default temp ECDH parameters
ACCEPT
我在安装OpenSSL时使用默认的.cfg文件。我检查了环境路径设置中openssl.cfg
文件的路径集。安装OpenSSL时会设置OPENSSL_SSL = C:\OpenSSLWin32\bin\openssl.cfg
。
配置文件的扩展名是 .cfg而不是** cnf 或 conf 。
请帮助我。
答案 0 :(得分:1)
RootCA-cert。 pem - 根证书
的OpenSSL> s_server -accept 443 -cert server-certificate.crt -CAfile RootCA-cert。 crt -key servertest.key
... fopen:没有这样的文件或目录:。\ crypto \ bio \ bss_file.c:169:fopen('rootCA-cert。 crt ','r')
您的文件是*.pem
,但您在命令行中指定了*.crt
。难怪它无法找到该文件。