在我的虚拟主机中我有类似的东西:
SSLEngine on
SSLCertificateKeyFile /etc/apache2/ssl/svn.XXXXX.me.key
SSLCertificateFile /etc/apache2/ssl/svn.XXXXX.me.crt
SSLProtocol all
SSLCipherSuite HIGH:MEDIUM
SSLVerifyClient require
SSLCACertificateFile /etc/ssl/certs/ICA-Standart.0
到目前为止,我可以使用 CA“ICA-Standart.0”颁发的任何证书登录,但我想指定一种白名单,只有某些证书才允许登录,这可能吗?
如果可以,我应该查看哪个指令?
另请注意,CA 是一个公共认证机构。
答案1
您需要使用SSL_CLIENT_S_*
指令:
Require ssl
Require ssl-verify-client
SSLRequireSSL
SSLOptions +FakeBasicAuth +StrictRequire
SSLRequire %{SSL_CIPHER_USEKEYSIZE} >= 256
SSLRequire %{SSL_CLIENT_S_DN_O} eq "Company, LTD." \
and %{SSL_CLIENT_S_DN_OU} eq "Development" \
and %{SSL_CLIENT_S_DN_CN} in {"John Doe", "Jane Doe", "Other One"}
SSLRenegBufferSize 131072
更多参考资料请参见阿帕奇文档。