SSL сертификат для сайта ?

  1. 5 г. назад

    Всем доброго здравия!

    Что-то прям до х*ена большой разброс цен и всяких ссылок с очень красивыми картинками.

    Кто что посоветует для небольших инет магазинов ? Желательно с реальным опытом покупки в рекомендуемом месте.

    Спасибо.

  2. 20.07.2018 15:24:48 отредактировано sda553

    Ну а для небольшого инетмагазина тебе вообще бесплатный Let's Encrypt должен сойти https://letsencrypt.org/

    Ответы: (2)
  3. (1) как я понял из бесплатных это впринципе единственный серт.центр верно ?

    Ответы: (3)
  4. 20.07.2018 15:32:08 отредактировано sda553

    (2) не смогу ответить. Но если есть еще какой то, то Let's encrypt уж точно самый известный

    Ответы: (4)
  5. (3) это я понял, заказчик категорически против бесплатных ((

    Ответы: (5)
  6. 20.07.2018 15:44:17 отредактировано sda553

    (4) тогда пофиг вообще.
    Подпишет CA1 твой сертификат за 100$ или подпишет CA2 твой сертификат за 1000$, конечному пользователю вообще до фени.
    Он у него в обоих случаях будет выглядеть одинаково в браузере.

  7. есть ещё вариант самоподписания, но будут выскакивать предупреждения безопасности в браузерах

    Ответы: (7)
  8. 20.07.2018 16:17:27 отредактировано sda553

    (6) не ну это уж фуфло какое то. Я так понимаю, ему ssl не просто же так нужен. Лучше уж вообще тогда не ставить ничего чем делать сайт с выскакивающими "Я принимаю риск продолжить"

  9. Ну и раз уж такая тема подвернулась, поделюсь своей небольшой памяткой по тому, как работать с сертификатами
    Создание корневого центра сертификации
    ===============================
    - Создание ключа длиной 2048 и сохранение его в /etc/pki/CA/private/rootCA.key - держится в тайне

    openssl genrsa -out /etc/pki/CA/private/rootCA.key 2048

    - Создание корневого сертификата с использованием созданного ключа, сроком действия в 10000 дней и сохранение его в /etc/pki/CA/certs/rootCA.crt

    openssl req -x509 -new -key /etc/pki/CA/private/rootCA.key -days 10000 -out /etc/pki/CA/certs/rootCA.crt

    Country Name (2 letter code) [XX]:RU - обязательный параметр, остальные не обязательны
    State or Province Name (full name) []:RU
    Locality Name (eg, city) [Default City]:Moscow
    Organization Name (eg, company) [Default Company Ltd]:
    Organizational Unit Name (eg, section) []:tech
    Common Name (eg, your name or your server's hostname) []:
    Email Address []:

    Полученный сертификат далее свободно распространяется и устанавливается как доверенный там где это нужно.

    Создание запроса на выпуск сертификата подписанного корневым сертификатом
    ===============================================================

    - Генерируем ключ /etc/pki/CA/private/domainkey.key для какого то домена длиной 2048, владельцы домена держат его в тайне

    openssl genrsa -out /etc/pki/CA/private/domainkey.key 2048

    - Создаем запрос на сертификат для домена mysite.ru с использованием созданного ключа и сохраняем его в /etc/pki/CA/certs/domainsert.csr

    openssl req -new -key /etc/pki/CA/private/domainkey.key -out /etc/pki/CA/certs/domainsert.csr

    Country Name (2 letter code) [XX]:RU - обязательно заполнять
    State or Province Name (full name) []:RU
    Locality Name (eg, city) [Default City]:
    Organization Name (eg, company) [Default Company Ltd]:
    Organizational Unit Name (eg, section) []:
    Common Name (eg, your name or your server's hostname) []:mysite.ru - обязательно заполнять
    Email Address []:

    Please enter the following 'extra' attributes
    to be sent with your certificate request
    A challenge password []:
    An optional company name []:

    Далее созданный реквест domainsert.csr передается корневому центру для выпуска сертификата

    Выпуск корневым центром по запросу *.csr сертификата подписанного корневым сертификатом, сроком на 5000 дней в файле /etc/pki/CA/certs/domainsert.crt
    ==========================================

    openssl x509 -req -in /etc/pki/CA/certs/domainsert.csr -CA /etc/pki/CA/certs/rootCA.crt -CAkey /etc/pki/CA/private/rootCA.key -CAcreateserial -out /etc/pki/CA/certs/domainsert.crt -days 5000

    Создание промежуточного центра сертификации
    ===================================================
    - Генерируем ключ /etc/pki/CA/private/ca2lvl.key для какого то iCA длиной 2048, владельцы промежуточного центра держат его в тайне

    openssl genrsa -out /etc/pki/CA/private/ca2lvl.key 2048

    - Создаем запрос на сертификат для промежуточного центра ca2lvl с использованием созданного ключа и сохраняем его в /etc/pki/CA/certs/ca2lvl.csr
    Для этого создаем конфиг файл /etc/pki/CA/intemediate/ca2lvl.conf
    -----------
    [req]
    distinguished_name=ca2lvl
    [ca2lvl]
    [ext]
    basicConstraints=CA:TRUE,pathlen:0
    ------------
    Потом создаем запрос с использованием ключа, конфиг файла по пути /etc/pki/CA/certs/ca2lvl.csr
    openssl req -config /etc/pki/CA/intemediate/ca2lvl.conf -new -key /etc/pki/CA/private/ca2lvl.key -out /etc/pki/CA/certs/ca2lvl.csr -subj "/CN=ca2lvl" -extensions ext

    В дальнейшем выпуск сертификата для промежуточного центра по запросу - показан выше, как и создание сертификата для домена
    openssl x509 -req -in /etc/pki/CA/certs/ca2lvl.csr -CA /etc/pki/CA/certs/rootCA.crt -CAkey /etc/pki/CA/private/rootCA.key -CAcreateserial -out /etc/pki/CA/certs/ca2lvl.crt -days 5000
    Подписание сертификатов - показано выше, как и подпиасние корневым сертификатом
    openssl x509 -req -in /etc/pki/CA/certs/somecertreq.csr -CA /etc/pki/CA/certs/ca2lvl.crt -CAkey /etc/pki/CA/private/ca2lvl.key -CAcreateserial -out /etc/pki/CA/certs/somecertreq.crt -days 5000

    Ответы: (9) (12)
  10. (8) Спасибо.

    Ответы: (10)
  11. (9) это и есть самоподписание

    Ответы: (11) (12)
  12. 20.07.2018 20:04:50 отредактировано sda553

    (10) нет, самоподписание, это когда своим сертификатом подписываешь этот же свой сертификат.
    А в (8) там подписание через отдельный CA со своим отдельным ключом.

    Ответы: (13) (14)
  13. sda553 нет, самоподписание, это когда своим сертификатом подписываешь этот же свой сертификат.

    нет

    wiki:Самозаверенный_сертификат

    Ответы: (16)
  14. sda553 там подписание через отдельный CA со своим отдельным ключом.

    ты создаёшь свой корневой сертификат, а потом им подписываешь. суть самоподписание

    Ответы: (16)
  15. 20.07.2018 20:11:46 отредактировано andrewks

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

    Ответы: (17)
  16. 20.07.2018 20:15:16 отредактировано sda553

    (13) как раз таки да
    (14) нет, суть самоподписания не в этом.

  17. 20.07.2018 20:13:28 отредактировано sda553

    andrewks в данном случае, УЦ ты заменяешь пустотой, т.е. как бы удостоверяешь сам себя,

    Нет, я создал свой УЦ, смотри внимательнее и им заверил отдельного субьекта.

    Ответы: (18)
  18. (17) да вижу я. как это ни назови, суть остаётся той же - один и тот же субъект удостоверяет своим корневиком сам себя

    Ответы: (19)
  19. (18) у меня разные субьекты

    Ответы: (20)
  20. (19) формально.
    это как если один учредитель создаст два юрлица, и будет отрицать аффилированность

    Ответы: (21)
  21. (20) самоподписанный сертификат это штука, который не зависит от формальностей, доверия пользователей или еще чего. Он просто по техническому своему определению самоподписанный и всё тут.

  22. Вот, самоподписанный сертификат:

    openssl genrsa -out /etc/pki/CA/private/selfsign.key 2048

    openssl req -new -key /etc/pki/CA/private/selfsign.key -out /etc/pki/CA/certs/selfsign.csr

    openssl x509 -req -in /etc/pki/CA/certs/selfsign.csr -signkey /etc/pki/CA/private/selfsign.key -CAcreateserial -out /etc/pki/CA/certs/selfsign.crt -days 5000

    Чувствуешь разницу?

  23. Экспериментировал с сайтом подключал ssl сертификат. По скольку на сайте вылезло куча ошибок, сертификат удалил.

    Но теперь из браузера не могу зайти на сайт так, как он пытается зайти всегда через https, а поскольку сертификата больше там нет
    то не пускает ни в какую. Через инкогнито режим заходит!

    Для хроме нашел такую фишку chrome://net-internals/#hsts
    Там есть вкладка Domain Security Policy и там можно удалить все политики любого домена который запомнил гуглхром!

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

  24. И теперь вопрос! В ходе моих экспериментов люди которые заходили на сайт в этот момент, они теперь на сайт попасть
    не могут так же как и я ? Ведь они не будут лезть в столь глубокие настройки, ну не работает сайт тем более еще и связано с безопасностью так и хер бы с ним!

    В firefox`е оказалось проблему с HSTS решить чуть проще, нужно именно через историю забыть этот сайт. Причем удаление локальных данных вместе с кешем и куками сайта эффекта не давали.

    Ответы: (25)
  25. 08.10.2018 11:22:26 отредактировано sda553

    Будущий_Олигарх В ходе моих экспериментов люди которые заходили на сайт в этот момент, они теперь на сайт попасть
    не могут так же как и я ?

    Если они заходили (или редиректились) на https в тот момент, когда сервер выдавал hsts - то да не могут.
    Если они заходили по http и не получали от сервера hsts, то смогут

    В заголовке hsts есть срок действия, по его окончании люди снова смогут заходить

  26. А срок действия hsts задается в конфиге твоего апача (или что там у тебя)
    https://itigloo.com/security/how-to-configure-http-strict-transport-security-hsts-on-apache-nginx/

или зарегистрируйтесь чтобы ответить!