我对HTTPD相当陌生,所以我需要从专业人士那里了解一些情况。
以前的管理员在Linux机器上设置HTTPD。它被配置为由访问特定DNS (ex:https://cxg-now-test.abc)的用户读取Certs。然后使用反向代理将用户发送到应用程序服务器,如果他们的证书是有效的,该证书驻留在同一个框中。这个很好用。
在HTTPD配置中,我有一个类似于这样的部分:
...
SSLVerifyClient require
SSLVerifyDepth 3
SSLOptions +ExportCertData +StdEnvVars
SSLCACertificateFile 每当有人访问https://cxg-now-test.abc时,他们的证书就会被读取并发送到应用程序。再一次,这很好用。
我想要做的是从特定的DNS或IP地址绕过SSLVerifyClient。例: 10.54.12.34
我知道我可以将SSLVerifyClient设置为“可选的”,但对我来说,这似乎不太安全。
我认为最终的解决办法是:
SSLVerifyClient requireSSLVerifyClient optional顺便说一下,我们运行的是Apache2.2
这可行吗?
任何帮助都是非常感谢的。
发布于 2018-01-31 15:20:42
答案似乎是否定的。例如,SSLVerifyClient不包括根据环境变量选择其设置的任何选项。
但是,可以在虚拟主机或目录上下文中设置SSLVerifyClient。因此,如果您将Apache配置为从不同的虚拟主机或目录向10.54.12.34提供内容,则可以在其中设置不同的SSLVerifyClient值。例如,在一个mod_rewrite中使用VirtualHost:
SSLVerifyClient require
RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^10\.54\.12\.34$
RewriteRule ^(.*)$ /path/to/host-specific-dir/$1 [QSA]
SSLVerifyClient optionalhttps://serverfault.com/questions/894981
复制相似问题