是否可以只允许 Apache 中的某些客户端证书登录?

Enc*_*ncy 6 ssl certificate mod-ssl ssl-certificate apache-2.2

在我的虚拟主机中,我有类似的东西:

    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
Run Code Online (Sandbox Code Playgroud)

到目前为止,我可以使用CA“ICA-Standart.0”颁发的任何证书登录,但我想指定一种白名单,只允许某些证书登录,可以吗?
如果是这样,我应该查看哪个指令?

另请注意,CA 是公共证书颁发机构。

daw*_*wud 6

您需要使用以下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
Run Code Online (Sandbox Code Playgroud) 可以在Apache文档中找到更多参考。