Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Сетевые технологии » http/web - Создать свой сертификат для localhost

Ответить
Настройки темы
http/web - Создать свой сертификат для localhost
ES ES вне форума

Ветеран


Сообщения: 971
Благодарности: 15

Профиль | Отправить PM | Цитировать


Здравствуйте!

У нас на ПК работает своя служба.
Для работы с настройками этой службы используется браузер и подключается к адресу localhost.
Мы используем Google Chrome.

Подключение идет на адрес https://localhost/.
И при первом подключении всегда выдается ошибка:
"Ваше подключение не защищено..."
Приходится каждый раз нажимать кнопку "Дополнительно" и далее нажимать "Перейти на сайт".

Хочется сделать так, чтобы это сообщение не появлялось.
В интернете прочитал, что для этого нужно сделать свой сертификат для localhost.

Подскажите, пожалуйста, как это делается?

Отправлено: 12:32, 01-08-2018

 
ES ES вне форума Автор темы

Ветеран


Сообщения: 971
Благодарности: 15

Профиль | Отправить PM | Цитировать


Цитата Jula0071:
Тогда самым правильным будет обратиться с вашей просьбой к его разработчику/поставщику/поддержке. »
Это я сделал в первую очередь.
Только их техподдержка работает не очень активно, и ответ был такой: можно добавить свой действительный сертификат.
А как это делается - они считают, что это уже мои проблемы.
А я в этом плохо разбираюсь.

Цитата Jula0071:
Наверное, это из-за
Цитата Busla:
попробуйте в хроме выставить флаг: chrome://flags/#allow-insecure-localhost » »
Нет, я этот флаг не менял.

Цитата Jula0071:
самоподписной сертификат CA нужно поместить в доверенные. В винде это Trusted Root Certification Authorities. »
Я попробовал сделать это с моим сертификатом.
Но у него нету кнопки "Install certificate".

Цитата Jula0071:
Кстати, проверьте, может поставщик не настолько ленив, как вы думаете и таки прописал localhost. Это будет видно на закладке "подробнее" почти в самом низу "Альтернативное имя субъекта (2.5.29.17)". »
Нету такого поля в моем сертификате.

----
Что-то я запутался...
Давай еще раз, пожалуйста.

Итак, чтобы у меня все заработало мне нужно два сертификата.
Один сертификат - корневой, и второй сертификат - "рабочий" (кстати как он правильно называется?).
"Рабочий" сертификат вроде бы есть - он был в дистрибутиве - это два файла с именем user.crt и user.key.

Объясните пожалуйста.
Для чего используется этот "рабочий" сертификат? И зачем еще нужен корневой?
Почему разработчик сделал только один сертификат, а не сделал сразу два сертификата?
А может быть это у нас корневой сертификат?
Как понять какой у нас сертификат: "рабочий" или корневой?

Последний раз редактировалось ES, 06-08-2018 в 15:31.


Отправлено: 14:45, 06-08-2018 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.

ES ES вне форума Автор темы

Ветеран


Сообщения: 971
Благодарности: 15

Профиль | Отправить PM | Цитировать


Изображения
Тип файла: png Ответ openssl.png
(12.7 Kb, 4 просмотров)
Вложения
Тип файла: txt cert.txt
(3.3 Kb, 2 просмотров)

Цитата Jula0071:
Я-то как админ привык, что некий набор привычных инструментов есть всегда под рукой »
Скачал, выполнил.
Вот что мне вернула эта команда: в прикрепленных файлах

Отправлено: 15:34, 06-08-2018 | #12


Забанен


Сообщения: 6345
Благодарности: 1436

Профиль | Цитировать


Цитата ES:
user.crt »
Покажите вывод openssl x509 -in user.crt -text -noout
Ну или просто выложите файл, я сам посмотрю. Конфиденциальной инфы там нету, а вот ключ (user.key) не показывайте никому! Хотя уже то, что он поставлялся с дистрибутивом, говорит о том, что он скомпрометирован... впрочем, это сейчас не важно.

Цитата ES:
Объясните пожалуйста. »
Цифровые сертификаты слишком большая тема, чтобы её на пальцах объяснить. Попробуйте изучить её самостоятельно – инфа общедоступна.
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:38, 06-08-2018 | #13

ES ES вне форума Автор темы

Ветеран


Сообщения: 971
Благодарности: 15

Профиль | Отправить PM | Цитировать


Вложения
Тип файла: txt user_crt.txt
(2.7 Kb, 2 просмотров)

Цитата Jula0071:
Покажите вывод openssl x509 -in user.crt -text -noout »
Во вложенном файле

Отправлено: 16:32, 06-08-2018 | #14

ES ES вне форума Автор темы

Ветеран


Сообщения: 971
Благодарности: 15

Профиль | Отправить PM | Цитировать


Цитата Jula0071:
Цифровые сертификаты слишком большая тема, чтобы её на пальцах объяснить. Попробуйте изучить её самостоятельно – инфа общедоступна. »
Ответьте, пожалуйста, хотя бы на последний вопрос: мой сертификат - это корневой или нет?
И как это определить?

Отправлено: 16:34, 06-08-2018 | #15


Забанен


Сообщения: 6345
Благодарности: 1436

Профиль | Цитировать


Цитата ES:
мой сертификат - это корневой или нет? »
Нет. Он подписан самоподписным корневым сертификатом C=RU, ST=Samara, L=city, O=ATOL, OU=CRI, CN=ROOT
SAN также нет, всё что есть – CN=501

Кстати, в user.crt точно один сертификат?
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:45, 06-08-2018 | #16

ES ES вне форума Автор темы

Ветеран


Сообщения: 971
Благодарности: 15

Профиль | Отправить PM | Цитировать


Цитата Jula0071:
Кстати, в user.crt точно один сертификат? »
Как это узнать?

Цитата Jula0071:
SAN также нет »
Как его добавить?

Цитата Jula0071:
всё что есть – CN=501 »
А что такое "501"?

Отправлено: 18:15, 06-08-2018 | #17


Забанен


Сообщения: 6345
Благодарности: 1436

Профиль | Цитировать


Цитата ES:
Как это узнать? »
Сертификат в pem-формате начинается строкой
Код: Выделить весь код
-----BEGIN CERTIFICATE-----
и заканчивается
Код: Выделить весь код
-----END CERTIFICATE-----
Между этими строками ровно один сертификат.
Цитата ES:
Как его добавить? »
Уже говорил.
Цитата ES:
А что такое "501"? »
Common Name субъекта сертификации. Ну вот такое вам сделали.

UPD Вот простая хавтушка, как создать свою CA и подписать ею сертификат. Единственно, там не показано, как добавлять SAN в свой сертификат. Но там ничего сложного, вам следует лишь создать текстовый файл такого содержания:
Код: Выделить весь код
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
subjectAltName = @alt_names

[alt_names]
DNS.1 = localhost
IP.1 = 127.0.0.1
И модифицировать команду подписи сертификата, чтобы он подхватил данные из этого файла (я назвал его x509v3.txt):
Код: Выделить весь код
openssl x509 -req -in user.csr -CA rootCA.crt -CAkey rootCA.key -CAcreateserial -out user.crt -days 10000 -extfile x509v3.txt
Проверяем
Скрытый текст

Код: Выделить весь код
openssl x509 -in user.crt -text -noout
Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number: 15242530643563015011 (0xd38858dca7946b63)
    Signature Algorithm: sha1WithRSAEncryption
        Issuer: C=RU, ST=Samara, L=Samara, O=ATOL, OU=CRI, CN=ROOT
        Validity
            Not Before: Aug  7 07:39:14 2018 GMT
            Not After : Dec 23 07:39:14 2045 GMT
        Subject: C=RU, ST=Samara, L=Samara, O=ATOL, OU=CRI, CN=501
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                Public-Key: (2048 bit)
                Modulus:
                    00:a8:cb:e9:b0:07:6e:36:37:c3:be:54:6e:96:6e:
                    25:12:27:02:25:a2:9e:5d:ff:0d:35:0e:3c:8e:3f:
                    cb:e5:fe:3c:5c:6c:c8:07:d9:7f:b5:53:76:d0:18:
                    90:4f:3d:1b:86:32:37:40:7d:e2:ab:dd:ab:2f:15:
                    0b:de:21:e9:81:b2:15:23:58:f9:2c:ac:3d:34:92:
                    e7:cc:2f:10:49:59:42:9d:c1:c5:c3:af:d0:15:9a:
                    f3:79:52:d3:18:25:88:62:de:57:94:4b:c6:04:fc:
                    9b:32:7e:3d:d8:d8:86:88:6a:d6:56:80:5e:43:46:
                    ef:8f:0a:da:28:00:28:11:54:fe:d7:76:2a:34:10:
                    53:55:01:53:68:d9:4f:8e:f3:85:3d:df:cb:86:fa:
                    bb:9e:44:92:a0:7b:b9:6e:8d:8d:c6:17:a8:c0:cd:
                    d8:c9:77:d0:4d:e7:c0:f6:2a:06:b2:64:12:57:9f:
                    8c:1f:c1:e1:a6:de:a6:c0:e3:b7:6f:cc:ea:82:a7:
                    ad:9c:c3:f5:3f:90:03:e2:bd:b1:ed:79:3e:78:4d:
                    54:db:b5:e8:6a:d4:8e:00:dc:aa:e3:66:47:ec:d6:
                    1e:77:f9:b1:6b:b0:2b:6e:45:1a:4a:ff:02:d7:90:
                    89:05:3a:64:b4:70:52:7b:da:64:4c:22:4a:0b:fe:
                    f7:55
                Exponent: 65537 (0x10001)
        X509v3 extensions:
            X509v3 Authority Key Identifier:
                DirName:/C=RU/ST=Samara/L=Samara/O=ATOL/OU=CRI/CN=ROOT
                serial:9E:9B:A3:25:09:11:E9:11

            X509v3 Basic Constraints:
                CA:FALSE
            X509v3 Key Usage:
                Digital Signature, Non Repudiation, Key Encipherment, Data Encipherment
            X509v3 Subject Alternative Name:
                DNS:localhost, IP Address:127.0.0.1
    Signature Algorithm: sha1WithRSAEncryption
         40:63:50:2a:8e:e0:5b:be:f7:6a:fd:d3:a2:f1:80:d9:b9:e0:
         79:fa:0b:3f:24:66:f6:c0:cf:a6:29:46:ac:95:b7:01:0b:65:
         7b:66:6d:8c:ad:56:de:97:5a:a4:76:ff:4a:22:ae:9b:b7:3c:
         64:8b:58:c2:84:21:10:1e:9c:77:3f:66:c8:e1:c2:42:7c:22:
         02:84:9a:ee:91:f5:63:d3:bc:41:c5:99:a8:2b:cf:17:0d:e9:
         32:6d:75:b2:11:54:cb:7a:28:c7:af:fa:08:4d:2a:cd:39:86:
         98:5f:4c:75:06:2e:3f:b8:80:80:cf:de:90:02:80:c6:0c:cb:
         ce:78:78:24:e7:6e:dc:cd:54:e2:0d:24:be:43:17:34:33:1d:
         e3:b4:f3:42:e1:c4:c8:df:66:5c:5c:0d:89:20:69:ed:11:15:
         5f:a7:ae:c3:e4:3e:ed:7a:e9:56:a3:04:7e:d4:a8:82:c3:f6:
         32:92:dc:56:fb:70:00:9c:2b:d8:fa:72:b1:52:22:4e:db:89:
         fc:c3:33:03:d4:68:a4:42:5c:21:a9:b1:8e:76:e2:07:3f:95:
         c0:08:46:9b:f8:14:df:28:9b:99:f3:5b:bd:fd:9b:37:eb:8e:
         c5:0b:6f:65:4d:78:3e:3c:52:3f:d0:79:bb:a7:dc:fd:14:7d:
         05:5d:b5:3e

Код: Выделить весь код
X509v3 Subject Alternative Name:
                DNS:localhost, IP Address:127.0.0.1
- всё в порядке. Теперь осталось закинуть rootCA.crt Trusted Root CA и установить новые сертификат с ключом в ваше мега-приложение.

Последний раз редактировалось Jula0071, 07-08-2018 в 12:50.


Отправлено: 19:14, 06-08-2018 | #18

ES ES вне форума Автор темы

Ветеран


Сообщения: 971
Благодарности: 15

Профиль | Отправить PM | Цитировать


Цитата Jula0071:
Между этими строками ровно один сертификат. »
Да, значит в моем файле только один сертификат.

Цитата Jula0071:
Как его добавить? »
Уже говорил. »
Вы говорили, что надо добавить, а как это делать - перечитал тему - не нашел.

Цитата Jula0071:
Он подписан самоподписным корневым сертификатом C=RU, ST=Samara, L=city, O=ATOL, OU=CRI, CN=ROOT »
А если разработчик пришлет нам этот корневой сертификат, мы его добавим в систему.
Это возможно? Это решит проблему?

И все-таки по каким признакам отличается не-корневой сертификат (который у нас) от корневого?
На что надо смотреть, чтобы их отличить?

Отправлено: 10:17, 07-08-2018 | #19


Забанен


Сообщения: 6345
Благодарности: 1436

Профиль | Цитировать


Цитата ES:
Вы говорили, что надо добавить, а как это делать - перечитал тему - не нашел. »
Я апдейтнул пост.
Цитата ES:
А если разработчик пришлет нам этот корневой сертификат, мы его добавим в систему.
Это возможно? »
Возможно.
Цитата ES:
Это решит проблему? »
Нет, не решит. Поскольку CN у вас 501, то и добавление в hosts записи, указывающей на 127.0.0.1 не решит, так как стандарт запрещает использовать в именах только цифры. Хотя ему не все следуют, не знаю как в винде, но на маке у меня не сработало.
Цитата ES:
И все-таки по каким признакам отличается не-корневой сертификат (который у нас) от корневого? »
Корневой сертификат подписан сам собой. Примерно так это выглядит:
Код: Выделить весь код
openssl x509 -in rootCA.crt -text -noout
Certificate:
    Data:
        Version: 1 (0x0)
        Serial Number: 11428907858844051729 (0x9e9ba3250911e911)
    Signature Algorithm: sha256WithRSAEncryption
        Issuer: C=RU, ST=Samara, L=Samara, O=ATOL, OU=CRI, CN=ROOT
        Validity
            Not Before: Aug  7 07:34:49 2018 GMT
            Not After : Dec 23 07:34:49 2045 GMT
        Subject: C=RU, ST=Samara, L=Samara, O=ATOL, OU=CRI, CN=ROOT
Соответственно некорневой (промежуточный или "листовой") сертификат подписан сертификатом, стоящим выше в цепочке.

Последний раз редактировалось Jula0071, 07-08-2018 в 14:46.

Это сообщение посчитали полезным следующие участники:

Отправлено: 10:56, 07-08-2018 | #20



Компьютерный форум OSzone.net » Компьютеры + Интернет » Сетевые технологии » http/web - Создать свой сертификат для localhost

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - Не создать самоподписанный сертификат и закрытый ключ win7x64 sp1 bmer87@vk Microsoft Windows 7 0 15-02-2018 13:30
Пытаюсь создать свой блог, как добавить свой фон? HappyPlayer1997 Вебмастеру 4 22-04-2015 18:54
Как создать свой dashboard для huawei e1550? hxygen Поиск драйверов, прошивок и руководств 0 27-01-2011 16:19
2010 - [решено] При создании сертификата произошла ошибка. Selfcert не удалось создать ваш сертификат okshef Microsoft Office (Word, Excel, Outlook и т.д.) 3 11-11-2010 00:28
Как создать сертификат? password Вебмастеру 2 15-01-2003 11:37




 
Переход