Тогда я ничего не понимаю :) Можно я вам расскажу свое понимание работы nginx, а вы меня поправите? Может быть у меня фундаментальная дара в знаниях, я такое не отрицаю :)
Есть два файла конфигов в директории conf.d example1.conf server { listen *:80; listen *:443 ssl; server_name example1; ssl_certificate 1.crt; ssl_certificate_key 1.key; } example2.conf server { listen *:80; listen *:443 ssl; server_name example2; ssl_certificate 1.crt; ssl_certificate_key 1.key; ssl_client_certificate ca.crt; ssl_verify_client on; } Клиент устанавливает с сайтом example1 соединение. Запрос с хэдером этого сайта приходит на сервер, обслуживающий указанный ИП адрес (Client Helo). Nginx принял запрос, по хедеру сравнил server_name и стал обрабатывать этот запрос по правилам конфига example1 (т.к listen равноправные, приоритет отдается конфигу с правильынм server_name) Сервер отправляет свое Helo с открытым ключем, клиент его проверяет и если все ок - оба договариваются об алгоритмах шифрования и начинается обмен данными. Это если без особых подробностей. Для конфига example2 все тоже самое, только сервер запрашивает сертификат клиента и если его нет - 400 ошибка. В итоге у меня получается два сайта - первый работает без клиентских сертификатов, второй с ними.. Если я вас достал глупыми вопросами - извините, я хочу разобраться в проблеме. По поводу своего первоначального вопроса - выставили конфиг первым в списке, что неправильно, но работает :) Илья Шипицин Wrote: ------------------------------------------------------- > нельзя настроить "только один сайт требует аутентификацию по > сертификату" > этот параметр согласуется в SSL Server Hello. т.е. вы требуете > аутентификацию для всех сайтов. Posted at Nginx Forum: http://forum.nginx.org/read.php?21,256951,257035#msg-257035 _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru