Траблы с ssl сертификатом

Igor Sysoev is at rambler-co.ru
Sun Aug 23 10:45:49 MSD 2009


On Sat, Aug 22, 2009 at 10:50:36AM +0200, Anton Kuznetsov wrote:

> Игорь, огромное спасибо за это письмо, я-то все это время мучался - не знал
> как устроить дебаг-проверку ssl-соединению.
> 
> На своего хомяка цепочку приклеил, так правильно конечно, но это ладно...

Теперь работает.

> С app.inntelligenz.com ситуация дома странная, из 4 броузеров - safari &
> chrome признали, а IE8 & FF3.5 - по прежнему ругаются. Я им почистил уже все
> что мог и профиль новый и все равно никак... Ну ладно, надеюсь это уже мои
> локальные проблемы, а nginx свое дело делает правильно...

Как именно ругаются - вообще не дают зайти на сайт ?

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

> Антон.
> 
> 2009/8/22 Igor Sysoev <is at rambler-co.ru>
> 
> > On Sat, Aug 22, 2009 at 03:23:31AM +0200, Anton Kuznetsov wrote:
> >
> > > Ну с порядком сложно ошибиться. К основному я приклеил промежуточные. Их
> > там
> > > три.
> > > Обе конторы свои промежуточные конечно присылают вместе с основным - это
> > не
> > > проблема.
> > > С глобе все работает. Интересно что делать с godaddy? Вроде как на апаче
> > > работает, где промежуточные прописываешь отдельной строчкой, в чем трабла
> > на
> > > nginx?
> > > Сейчас, когда он работает со склееными сертификатами в один файл, то wget
> > > ругается на них так:
> > >
> > > $wget "https://app.inntelligenz.com/sign"
> > > --2009-08-22 05:22:19--  https://app.inntelligenz.com/sign
> > > Распознаётся app.inntelligenz.com... 174.129.210.211
> > > Устанавливается соединение с app.inntelligenz.com
> > |174.129.210.211|:443...
> > > соединение установлено.
> > > ОШИБКА: невозможно проверить сертификат app.inntelligenz.com,
> > запрошенный
> > > `/C=US
> > > /ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./OU=
> > > http://certificates.godaddy.com/
> > > repository/CN=Go Daddy Secure Certification
> > > Authority/serialNumber=07969287':
> > >   Обнаружен самостоятельно подписанный сертификат.
> > >
> > > Как-то странно все это...
> >
> > Потому что wget должен знать про эти серфтификаты.
> >
> > Сейчас "openssl s_client -connect app.inntelligenz.com:443" выдаёт такую
> > цепочку сертификатов:
> >
> > Certificate chain
> >  0 s:/O=app.inntelligenz.com/OU=Domain Control Validated/CN=
> > app.inntelligenz.com
> >   i:/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./OU=
> > http://certificates.godaddy.com/repository/CN=Go Daddy Secure
> > Certification Authority/serialNumber=07969287
> >  1 s:/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./OU=
> > http://certificates.godaddy.com/repository/CN=Go Daddy Secure
> > Certification Authority/serialNumber=07969287
> >   i:/C=US/O=The Go Daddy Group, Inc./OU=Go Daddy Class 2 Certification
> > Authority
> >  2 s:/C=US/O=The Go Daddy Group, Inc./OU=Go Daddy Class 2 Certification
> > Authority
> >   i:/L=ValiCert Validation Network/O=ValiCert, Inc./OU=ValiCert Class 2
> > Policy Validation Authority/CN=
> > http://www.valicert.com//emailAddress=info@valicert.com
> >  3 s:/L=ValiCert Validation Network/O=ValiCert, Inc./OU=ValiCert Class 2
> > Policy Validation Authority/CN=
> > http://www.valicert.com//emailAddress=info@valicert.com
> >   i:/L=ValiCert Validation Network/O=ValiCert, Inc./OU=ValiCert Class 2
> > Policy Validation Authority/CN=
> > http://www.valicert.com//emailAddress=info@valicert.com
> >
> > У firefox 3.0.13 с чистым профайлом есть второй сертификат
> > "/C=US/O=The Go Daddy Group, Inc./....". Поэтому доверяет он этой цепочке
> > и запоминает первый сертификат
> > "C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./...".
> >
> > "openssl s_client -connect arjlover.net:443" сейчас выдаёт единственный
> > сертификат:
> >
> > Certificate chain
> >  0 s:/OU=Domain Control Validated/OU=Provided by Globe Hosting,
> > Inc./OU=Globe Standard SSL/CN=arjlover.net
> >   i:/C=RO/O=GLOBE HOSTING CERTIFICATION AUTHORITY/CN=GLOBE SSL Domain
> > Validated CA
> >
> > который не нравится чистому firefox'у, потому что у него нет
> > "/C=RO/O=GLOBE HOSTING CERTIFICATION AUTHORITY/...". Однако если зайти
> > на http://globessl.com, то это серфтикат появится и после этого
> > https://arjlover.net начинает работать.
> >
> >
> > > Антон.
> > >
> > > 2009/8/21 Igor Sysoev <is at rambler-co.ru>
> > >
> > > > On Fri, Aug 21, 2009 at 09:27:44PM +0400, Igor Sysoev wrote:
> > > >
> > > > > On Fri, Aug 21, 2009 at 06:45:23PM +0200, Anton Kuznetsov wrote:
> > > > >
> > > > > > В первый раз ставлю честный купленный сертификат, в большом
> > недоумении
> > > > от
> > > > > > результатов.
> > > > > >
> > > > > > Купил первый на пробу от globessl.com
> > > > > > поставил на хомяка https://arjlover.net - почти везде работает,
> > хотя у
> > > > меня
> > > > > > на работе не проходит в любом броузере.
> > > > > >
> > > > > > Сделал по инструкции от globe:
> > > > > > #openssl req -nodes -newkey rsa:2048 -keyout myserver.key -out
> > > > server.csr
> > > > > >
> > > > > > в конфиг nginx написал так:
> > > > > >
> > > > > > ssl                     on;
> > > > > > ssl_protocols           SSLv3 TLSv1;
> > > > > > ssl_certificate      /usr/local/etc/nginx/ssl/arjlover_net.crt;
> > > > > > ssl_certificate_key  /usr/local/etc/nginx/ssl/myserver.key;
> > > > > >
> > > > > > Ну вроде завелось...  nginx version: nginx/0.8.5 FreeBSD 6.3
> > > > > >
> > > > > > ===============
> > > > > > Теперь делаю для апликухи
> > > > > > https://app.inntelligenz.com/sign
> > > > > > Все аналогично, купить решил у godaddy.com, сделал сертификаты, те
> > же
> > > > > > строчки в nginx и... не работает!!! Хотя вчера вечером дома у меня
> > одна
> > > > > > страница открылась с валидным сертификатом и так и закэшировалась.
> > > > Остальные
> > > > > > урлы ругаются. Смех! nginx version: nginx/0.8.6 Ubuntu
> > > > > > Что делать, куда копать?
> > > > > >
> > > > > > Еще один побочный вопрос - что это за файл gd_bundle.crt?
> > Прописывается
> > > > в
> > > > > > апач строчкой
> > > > > > SSLCertificateChainFile /ssl/gd_bundle.crt
> > > > > > Почему аналогичной строчки нет у nginx?
> > > > > > Если я все это поднимаю на апаче вот так:
> > > > > > SSLCertificateFile /ssl/app.inntelligenz.com.crt
> > > > > > SSLCertificateKeyFile /ssl/myserver.key
> > > > > > SSLCertificateChainFile /ssl/gd_bundle.crt
> > > > > >
> > > > > > То верификация работает!!! Но надо на nginx...
> > > > >
> > > > > gd_bundle.crt - это не побочный вопрос, а основной. Нужно сделать
> > так:
> > > > > cat app.inntelligenz.com.crt gd_bundle.crt >
> > app.inntelligenz.com.full
> > > > >
> > > > > и использовать получённую цепочку сертификатов:
> > > > > ssl_certificate
> >  /usr/local/etc/nginx/ssl/app.inntelligenz.com.full
> > > > >
> > > > > То же самое нужно повторить с globessl.com - добавить их
> > промежуточные
> > > > > сертификаты к основному. Тогда должно работать со всеми браузерами.
> > > >
> > > > Вот тут берутся промежуточные сертификаты globessl.com:
> > > >
> > > >
> > http://customer.globessl.com/knowledgebase/48/GlobeSSL_CA_Root_and_Intermediate_Certificates.html
> > > >
> > > >
> > > > --
> > > > Игорь Сысоев
> > > > http://sysoev.ru
> > > >
> > > >
> >
> > --
> > Игорь Сысоев
> > http://sysoev.ru
> >
> >

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





More information about the nginx-ru mailing list