Рейтинг:0

Можно ли сгенерировать сертификат с CN, содержащим только звездочку

флаг st

Я разрабатываю веб-сервер для локального устройства. Доступ к устройству будет осуществляться локально, а не извне с использованием локального IP-адреса. Я сгенерировал сертификат, используя openssl с CN=*, чтобы избежать проверки имени хоста.

Но это возвращает другую ошибку:

request.exceptions.SSLError: HTTPSConnectionPool (host = '192.168.17.31', port = 443): превышено максимальное количество попыток с URL-адресом: /lua/device (вызвано SSLError (SSLCertVerificationError ("единственный подстановочный знак без дополнительных меток не поддерживается): '* '.)))

мой компьютер не знает имя хоста устройства. но он знает IP-адрес. и я хочу, чтобы проверка сертификата производилась автоматически, а не вручную с использованием открытого ключа с моего компьютера

Как сделать сертификат, который не выдает ошибку при проверке имени хоста?

флаг in
Создание сертификата, скорее всего, нормально, вы, вероятно, уже это сделали. Вопрос в том, действителен ли он и можно ли его использовать. Даже сопоставление по IP может быть затруднено (не разрешено в SNI).
dave_thompson_085 avatar
флаг jp
Обратите внимание, что проверка сертификата состоит из двух частей: (1) подписан ли он доверенным центром сертификации (и не изменен), не является ли он недействительным или отозван? (2) соответствует ли сертифицированное удостоверение хоста (в SAN, если оно присутствует, иначе CN) имени в запрошенном URL-адресе? Только (1) использует открытые ключи root-CA, хранящиеся на вашем компьютере; (2) использует имя в URL.
Рейтинг:1
флаг jp

Вы можете выдать сертификат для известного IP-адреса, используя альтернативное имя субъекта (SAN).

флаг in
Однако помните, что SNI не допускает совпадения по IP. Так что может вызвать проблемы.
флаг jp
@NiKiZe, когда доступ к сайту осуществляется с помощью IP-адреса, такого как «https://1.1.1.1/», тогда SNI вообще не инициируется.
dave_thompson_085 avatar
флаг jp
Использование SAN является лучшей практикой, но большинство клиентов, кроме Chrome (ium?), включая запросы python, также принимают «традиционный» IPaddr-in-CN.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.