Welcome! Log In Create A New Profile

Advanced

Re: Проброс SSL-аутентификации на backend

September 07, 2009 06:14PM
On Sat, Sep 05, 2009 at 01:36:22PM +0400, Бондарец Иван wrote:

> Добрый день!
> Есть стандартная схема:
> Интернет -> nginx --> backend (Apache либо WebSphere)
> nginx сейчас терминирует на себе ssl и проксирует на backend.
> Возникла задачка аутентифицировать пользователей на некоторых разделах сайта
> на backend'e при помощи сертификатов. Можно ли настроить nginx на такой
> режим работы? В моем понимании, на backend'е нужно поднять ssl (с более
> слабым ключом, например) и настроить авторизацию по сертификатам, это я
> сделал:
> SSLEngine on
> SSLCipherSuite
> ALL:!ADH:!DH:!EDH:!KRB5:!IDEA:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
> SSLCertificateFile /etc/apache2/ssl.crt/apache.crt
> SSLCertificateKeyFile /etc/apache2/ssl.key/apache.key
> SSLProtocol +SSLv3 +TLSv1
> SSLVerifyClient require
> SSLCACertificateFile /path/to/ca.crt
>
> Далее в конфиге nginx пишу:
> server {
> listen 443;
> server_name test1;
> ssl on;
> ssl_certificate /etc/apache2/ssl.crt/apache.crt;
> ssl_certificate_key /etc/apache2/ssl.key/apache.key;
>
> ssl_session_timeout 5m;
>
> ssl_protocols SSLv2 SSLv3 TLSv1;
> ssl_ciphers
> ALL:!ADH:!DH:!EDH:!KRB5:!IDEA:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL;
> ssl_prefer_server_ciphers on;
> location / {
> proxy_pass https://1.2.3.4:443;
> }
>
> }
>
> Проверяю аутентификацию при обращении непосредственно к backend'у - на
> IE6,7,8 и Safari 4.0.2 работает, на FF 3.5.2, Opera 10, Chrome - не
> работает, пишет что-то вроде этого:
> SSL-узлу не удалось договориться о приемлемом наборе параметров
> безопасности.
> (Код ошибки: ssl_error_handshake_failure_alert)
>
> Пробую через nginx, соответственно тоже не работает, в логе nginx пишет:
> [error] 14221#0: *106 SSL_do_handshake() failed (SSL: error:14094410:SSL
> routines:SSL3_READ_BYTES:sslv3 alert handshake failure) while SSL
> handshaking to upstream
>
> Как это поправить? И вообще реализуема ли задачка, описанная в начале? Т.е.
> аутентификация пользователей именно на backend'е?

В таком виде - нет, потому что nginx не передаёт клиентский сертификат
в proxy_pass. Можно аутентифицировать на nginx'е, а результат проверки
и прочие ssl-параметры передавать бэкенду без https:

server {
ssl_verify_client optional;

http://sysoev.ru/nginx/docs/http/ngx_http_ssl_module.html#ssl_verify_client
http://sysoev.ru/nginx/docs/http/ngx_http_ssl_module.html#variables


--
Игорь Сысоев
http://sysoev.ru
Subject Author Posted

Проброс SSL-аутентификации на backend

Бондарец Иван September 07, 2009 06:20PM

Re: Проброс SSL-аутентификации на backend

Igor Sysoev September 07, 2009 06:14PM

Re: Проброс SSL-аутентификации на backend

Igor Sysoev September 07, 2009 06:14PM

Re: Проброс SSL-аутентификации на backend

Daniel Podolsky September 07, 2009 06:16PM

Re: Проброс SSL-аутентификации на backend

Бондарец Иван September 07, 2009 06:18PM

Re: Проброс SSL-аутентификации на backend

Бондарец Иван September 07, 2009 06:18PM

Re: Проброс SSL-аутентификации на backend

Daniel Podolsky September 07, 2009 06:20PM

Re: Проброс SSL-аутентификации на backend

Бондарец Иван September 07, 2009 06:18PM

Re: Проброс SSL-аутентификации на backend

Daniel Podolsky September 07, 2009 06:18PM

Re: Проброс SSL-аутентификации на backend

Бондарец Иван September 07, 2009 06:24PM

Re: Проброс SSL-аутентификации на backend

Pavel Labushev September 07, 2009 06:40PM

Re: Проброс SSL-аутентификации на backend

Dmitry Morozovsky September 07, 2009 06:20PM

Re: Проброс SSL-аутентификации на backend

Sergey Shepelev September 07, 2009 06:20PM

Re: Проброс SSL-аутентификации на backend

Pavel Labushev September 07, 2009 06:24PM

Re: Проброс SSL-аутентификации на backend

Бондарец Иван September 07, 2009 06:24PM

Re: Проброс SSL-аутентификации на backend

Sergey Shepelev September 07, 2009 06:32PM

Re: Проброс SSL-аутентификации на backend

Бондарец Иван September 07, 2009 06:40PM

Re: Проброс SSL-аутентификации на backend

Alexander Moskalenko September 07, 2009 06:14PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 245
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready