Re: curl и самоподписанные сертификаты
> Да, я как-то прогнал. Признаю.
> Но подписан-то он тем же ключом, и по логике добавление публичного ключа
> в доверенные должно быть достаточно.
Фигня в том, что в доверенные добавляется не ключ, а сертификат. Вместе со
своей служебной информацией. А ключ cacert (ну, там его аргумент тупо
передается в соответствующий вызов libcrypto) включает проверку с таким вот
списком сертификатов, которые должны быть сертификатами CA. Оно, помимо
подписей, проверяет еще и корректность структуры PKI, построенной от
сертификата сервера к корневому, и эта корректность подразумевает, помимо
всего прочего, что сертификат сервера нифига не самоподписанный, а сертификат,
на котором он подписан и далее по цепочке до корневого - он таки да,
сертификат CA, т.е. с правом подписи сертификатов. Если я правильно ошибаюсь
(в случае чего Витус поправит) libcrypto можно попросить верить конкретному
сертификату сервера, но это другой вызов, потому что это совершенно другая
проверка.
> А механизма включения определенного сертификата (по отпечатку) в список
> доверенных curl, похоже, не имеет.
> Впрочем, мне сложно понять, нафига самоподписанные сертификаты без CA,
> когда можно за 10 минут поднять свой CA.
Для этого надо сначала потратить несколько хотя бы часов на изучение матчасти.
Чтобы понимать, что делаешь, а не тупо содрать пример из интернетов. После
чего, впрочем, все равно дерется пример из интернетов :-), но уже правильный
пример.
Интересно, он там не на Snake Oil ли, часом, выписан, тот доверенный
сертификат?.. Ну, доменное имя там, понятно, должно быть правильным, иначе
браузер обидится, а остальное?
--
... и углупился в свои мысли
Кнышев
Reply to: