🔧
blog.cat.ssl

Self-signed SSL сертификат: использование в разработке и риски в production

20.11.2035
← Все статьи

Self-signed сертификат — это SSL сертификат, созданный и подписанный непосредственно владельцем сервера, без участия центра сертификации. С технической точки зрения он не отличается от обычного сертификата, то есть обеспечивает шифрование и устанавливает соединение по протоколу HTTPS. Однако браузеры не доверяют такому сертификату, поскольку он не подтвержден доверенной третьей стороной. В результате при заходе на сайт пользователь видит большое красное предупреждение об ошибке безопасности. Именно поэтому self-signed сертификаты не должны использоваться в production среде.

Когда полезен self-signed сертификат

Самый первый и распространенный сценарий использования — это процесс разработки. Когда разработчики работают на локальном компьютере или внутреннем тестовом сервере, они используют self-signed сертификат для тестирования HTTPS протокола. Второй сценарий — это сервисы во внутренней корпоративной сети, например внутренний API сервер или внутренняя панель мониторинга. В этом случае сертификат используется только сотрудниками компании, и его можно заранее установить на их компьютеры. Третий сценарий — это IoT устройства и embedded системы, которые не всегда подключены к интернету и работают в изолированной сети.

Процесс создания self-signed сертификата

С помощью утилиты OpenSSL создать self-signed сертификат очень просто. Сначала создается приватный ключ, затем на его основе готовится CSR, то есть запрос на сертификат, и наконец выполняется команда самоподписи. В процессе вводятся срок действия сертификата, доменное имя, информация об организации и другие параметры. Созданный сертификат обычно сохраняется в формате CRT или PEM и затем добавляется в конфигурацию веб-сервера. Для Nginx, Apache и других серверов синтаксис немного отличается, но основной принцип одинаков.

Риски в production среде

Использование self-signed сертификата в production влечет несколько серьезных рисков. Во-первых, пользователи, увидев предупреждение, немедленно покидают сайт и переходят к конкурентам, что резко снижает конверсию. Во-вторых, Google и другие поисковые системы понижают такие сайты в выдаче, а иногда и вовсе не показывают. В-третьих, нет защиты от man-in-the-middle атак, поскольку пользователь вынужден каждый раз принимать сертификат и не может отличить подлинный от поддельного. В-четвертых, платежные системы и другие важные интеграции не работают с такими сайтами.

Что использовать вместо self-signed

Для production среды всегда используйте сертификат, подписанный доверенным центром сертификации. Самый простой и бесплатный вариант — сертификат Let's Encrypt, действительный 90 дней и обновляющийся автоматически. Для коммерческих целей можно использовать сертификаты DigiCert, Sectigo, GlobalSign, которые дают дополнительную гарантию и страховку. Для банков и платежных систем рекомендуется EV сертификат, прошедший высший уровень проверки и отображающий название организации в адресной строке.

Практика Sayt.uz

Клиентам хостинга Sayt.uz сертификат Let's Encrypt устанавливается полностью бесплатно и автоматически. Обновление происходит автоматически каждые 60 дней, без участия клиента. Коммерческие DV сертификаты начинаются от 89 тысяч сум, OV от 290 тысяч сум, а EV от 890 тысяч сум. Наши специалисты в 99 процентах случаев устанавливают сертификат за 20 минут. Переход с self-signed на доверенный сертификат выполняется бесплатно.

Похожие статьи

📱 SSL pinning: самая надежная защита мобильных приложений от MITM-атак 🤝 Процесс SSL handshake: внутренняя механика TLS-рукопожатия по этапам 🔓 Пропал зеленый замок HTTPS: причины и пошаговое исправление Мониторинг срока действия SSL: системы оповещений и автоматические проверки
🌐 Язык
🇺🇿 O'zbek 🇺🇿 Ўзбек 🇷🇺 Русский 🇬🇧 English