Назад | Перейти на главную страницу

Проверка подлинности клиента SSL для прокси-сервера Apache Forward

Я пытаюсь аутентифицировать конкретного пользователя, для которого я выпустил сертификат для аутентификации на моем веб-прокси, используя указанный сертификат. Думаю, я перепробовал почти 20 комбинаций следующих вариантов, и у меня ничего не работает. На страницах документации apache все примеры для аутентификации клиента ssl часто основаны на <Location>директива. Мой случай никогда не упоминается, и сейчас мне интересно, возможно ли это вообще:

<VirtualHost *:8080>

ProxyRequests On
SSLCACertificateFile /etc/apache2/myca/ca.cer

<Proxy "*">
    SSLVerifyClient Require
    SSLVerifyDepth 10
    SSLOptions  +FakeBasicAuth +StrictRequire
    SSLRequire ( %{SSL_CIPHER} !~ m/^(EXP|NULL)-/   \
        and %{SSL_CLIENT_S_DN_O} eq "MyComp"       \
        and %{SSL_CLIENT_S_DN_OU} eq "IT"           \
        and %{SSL_CLIENT_S_DN_Email} eq "my@email.com")
</Proxy>

ErrorLog ${APACHE_LOG_DIR}/proxy_error.log
CustomLog ${APACHE_LOG_DIR}/proxy_access.log combined
</VirtualHost>

С приведенной выше конфигурацией прокси работает, но не запрашивает аутентификацию, каждый может его использовать.

Я пробовал аналогичную конфигурацию в простом <Location />директиву, как показано в примерах apache, и она действительно работает. Но я не могу решить эту проблему для своего случая с прокси.