2012-02-08 23 views
1

对于客户端认证,我的要求是对同一IP上的不同定位器URL使用不同的证书。Apache配置为同一台服务器上的不同定位器使用不同的证书

例如:

当客户端连接到https://a.b.c.d/locatorA,我要验证对证书A中的客户端,通过CA X签署,

如果一个客户端连接到https://a.b.c.d/locatorB,我想验证客户端针对证书B,由CA Y签名。

还有其他任何关于abcd的URL,客户端认证是不需要的。

要在locatorA和locatorB上启用客户端验证,我在locator伪指令中将SSLVerifyClient设置为true。默认情况下,SSLVerifyClient设置为none。

但我面临的问题是如何指定使用证书A的locatorA和证书B的locatorB。我尝试在locatorA和locatorB的locator指令中添加SSLCertificateFile,但是apache表示配置错误。

有没有一种方法可以根据URL类型为同一服务器上的不同URL颁发不同的证书?

谢谢, Kowsik [email protected]

回答

0

这是不可能在同一主机下直接映射不同的证书到URL。

通常情况下,您仅限于每个IP一个证书。如果您实施了SNI,则可以在相同IP下将不同证书映射到主机名。例如,您可以将证书A映射到主机locatorA.example.com

如果有帮助,您可以另外将http://a.b.c.d/locatorA和/或https://a.b.c.d/locatorA(由公共证书X保护)重定向到https://locatorA.example.com/locatorA(由证书A保护)。

请注意,一些较老的客户端不支持SNI。

相关问题