我有一个Ubuntu系统,我已经安装了OpenSSL。现在我想对配置文件进行更改。我搜索了我的文件夹,找到了配置文件的以下位置。哪个是我应该用来进行更改的主要/正确的?我需要在这里添加引擎。任何帮助,将不胜感激。以下是地点:
/usr/local/ssl/openssl.cnf
/usr/lib/ssl/openssl.cnf
/etc/ssl/openssl.cnf
答案 0 :(得分:30)
/usr/local/ssl/openssl.cnf
这是本地安装。您使用prefix
或./config --prefix=/usr/local/ssl
配置的默认./config --openssldir=/usr/local/ssl
下载并构建了OpenSSL。
您将使用如果在/usr/local/ssl/bin
中使用OpenSSL。也就是说,发出时会使用/usr/local/ssl/openssl.cnf
:
/usr/local/ssl/bin/openssl s_client -connect localhost:443 -tls1 -servername localhost
/usr/lib/ssl/openssl.cnf
这是Ubuntu为他们提供的OpenSSL放置openssl.cnf
的地方。
您将使用如果在/usr/bin
中使用OpenSSL。也就是说,发出时会使用/usr/lib/ssl/openssl.cnf
:
openssl s_client -connect localhost:443 -tls1 -servername localhost
/etc/ssl/openssl.cnf文件
我不知道何时使用它。 /etc/ssl
中的内容通常是证书和私钥,有时包含openssl.cnf
的副本。但我从来没有见过它用于任何事情。
我应该使用哪个主要/正确的进行更改?
根据它的声音,您应该将引擎添加到/usr/lib/ssl/openssl.cnf
。这确保了大多数“现成”装备将使用新发动机。
执行此操作后,请将其添加到/usr/local/ssl/openssl.cnf
,因为复制/粘贴很简单。
以下是如何查看哪个openssl.cnf
目录与OpenSSL安装相关联。图书馆和程序会在openssl.cnf
中查找OPENSSLDIR
。 OPENSSLDIR
是一个配置选项,其设置为--openssldir
。
我在MacBook上有3种不同的OpenSSL(Apple,MacPort和我建的):
# Apple
$ /usr/bin/openssl version -a | grep OPENSSLDIR
OPENSSLDIR: "/System/Library/OpenSSL"
# MacPorts
$ /opt/local/bin/openssl version -a | grep OPENSSLDIR
OPENSSLDIR: "/opt/local/etc/openssl"
# My build of OpenSSL
$ openssl version -a | grep OPENSSLDIR
OPENSSLDIR: "/usr/local/ssl/darwin"
我有一个Ubuntu系统,我已经安装了openssl。
只是自行车脱落,但要小心Ubuntu的OpenSSL版本。它禁用TLSv1.1和TLSv1.2,因此您只能拥有能够使用旧密码套件的客户端;并且您将无法使用更新的密码,如AES / CTR(替换RC4)和椭圆曲线齿轮(如 ECDHE_ECDSA_*
和ECDHE_RSA_*
)。请参阅Launchpad中的Ubuntu 12.04 LTS: OpenSSL downlevel version is 1.0.0, and does not support TLS 1.2。
编辑:Ubuntu最近启用了TLS 1.1和TLS 1.2。请参阅错误报告中的Comment 17。
答案 1 :(得分:18)
RHEL:/etc/pki/tls/openssl.cnf
答案 2 :(得分:6)
/usr/local/ssl/openssl.cnf
是
的软链接/etc/ssl/openssl.cnf文件
您可以在/ usr / local / ssl /目录中使用长列表(ls -l)查看
lrwxrwxrwx 1 root root 20 Mar 1 05:15 openssl.cnf - > /etc/ssl/openssl.cnf文件
答案 3 :(得分:1)
您可以运行以下命令来获取 openssl.cnf
文件的位置:
% openssl version -d
在我的电脑上,结果是:
% openssl version -d
OPENSSLDIR: "/private/etc/ssl"
openssl.cnf
文件的路径:
% echo "$(openssl version -d | sed 's/.*"\(.*\)"/\1/g')/openssl.cnf"
/private/etc/ssl/openssl.cnf
答案 4 :(得分:-1)
在CentOS 6上,我有两个openssl.cnf:
/openvpn/easy-rsa/
/pki/tls/