Неплохо ли использовать самоподписанные SSL-сертификаты?

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

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

29 голосов | спросил Wookai 21 J000000Wednesday10 2010, 23:33:58

4 ответа


14

В общем, плохо использовать самоподписанный сертификат. Если вы это сделаете, вы рискуете, что люди покинут ваш сайт, когда они получат предупреждение о том, что ваш сертификат плохой. Что еще более важно, у вас больше риск того, что кто-то сделает инъекционную атаку, где они используют свой собственный самозаверяющий сертификат на вашем месте, и посетитель не будет знать ничего лучше.

Просмотрите статью здесь, http: //www.sslshopper.com/article-when-are-self-signed-certificates-acceptable.html для получения дополнительной информации об этом.

ответил Ben Hoffman 21 J000000Wednesday10 2010, 23:46:40
14

Как отметил RandomBen, самоподписанные сертификаты, как правило, не одобряются по причинам, которые он объяснил. Но есть одна ситуация, в которой они прекрасны: если набор людей, которым необходимо отправлять конфиденциальные данные на ваш сайт, является небольшим и ограниченным, все они несколько технически компетентны, и вы можете общаться со всеми из них. В этом случае вы можете предоставить каждому человеку данные сертификата, затем они могут вручную проверить сертификат, когда они отправятся на ваш сайт, и при необходимости добавить исключение безопасности.

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

В тех случаях, когда самозаверяющий сертификат не работает или у вас есть «реальный», я рекомендую Let's Encrypt , проект, начатый Исследовательской группой Internet Security Research и поддерживаемый крупными интернет-компаниями, который бесплатно предоставляет сертификаты SSL. Они могут это сделать, потому что процесс проверки, который они используют, полностью автоматизирован и фактически является веб-сервером, который поддерживает их ACME (например, Caddy , который я использую в настоящее время) может получить сертификаты полностью самостоятельно. Давайте зашифровать не будем проверять, что вы , как человек, являются тем, кем вы говорите; он только проверяет, что ваш веб-сервер способен обслуживать контент в домене, на который он претендует. Давайте зашифруем поддержку всех основных браузеров, но хорошо известно, что проверка минимальна, поэтому, если у вас работает что-то вроде сайта электронной коммерции или чего-либо еще, где люди будут отправлять конфиденциальную информацию, вам, вероятно, стоит потратить деньги, чтобы получить сертификат с более высоким уровнем проверки.

Я рекомендовал бесплатные сертификаты StartSSL из StartCom для людей, которые не хотели платить за подтверждение, но не больше. StartCom был тайно приобретен WoSign в 2016 году и впоследствии выдал незаконные сертификаты для нескольких доменов. В результате основные браузеры удалили поддержку сертификатов StartCom. (Насколько я знаю, IE никогда не поддерживал их в любом случае.) В любом случае Let's Encrypt намного удобнее.

ответил David Z 22 J000000Thursday10 2010, 06:00:45
3

Плохая практика не использовать самозаверяющие сертификаты. Самоподписанные сертификаты имеют множество практических целей, для которых просто не имеет смысла использовать сертификат, подписанный CA.

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

Вместо этого я использую самоподписанный сертификат SSL, который я создаю на каждом из моих клиентских компьютеров (рабочая станция в офисе, ноутбук и домашняя рабочая станция). Такая настройка позволяет мне использовать довольно длинные, безопасные и полностью уникальные кодовые фразы для каждого из моих серверов, не влияя на производительность. И поскольку у меня есть прямой доступ к серверам, где я могу установить открытый ключ для каждого сертификата, во мне нет смысла использовать сертификат с сертификатом CA.

I мог настроить мой собственный корневой центр сертификации, с помощью которого я могу подписывать все сертификаты внутреннего использования для нашей компании, и таким образом мне нужно было бы установить только один открытый ключ на каждом сервере , Тем не менее, наша организация не выросла до такого размера, что действительно требует этого, и для целей безопасного HTTP это все равно будет таким же, как наличие самозаверяющего сертификата.

Аналогично, самоподписанные сертификаты часто используются для соединений электронной почты, подписи PGP и соединений «сервер-сервер», где тривиально предварительно обменивать открытые ключи. Во многих из этих случаев это на самом деле более безопасно, чем полагаться на цепочку сертификатов, которая может быть скомпрометирована в любой точке цепи.

ответил Lèse majesté 24 FebruaryEurope/MoscowbFri, 24 Feb 2012 10:51:36 +0400000000amFri, 24 Feb 2012 10:51:36 +040012 2012, 10:51:36
2

Если вы защищаете несколько поддоменов, вы можете использовать подстановочные сертификаты , которые (в зависимости от того, как многие поддомены, которые вы обеспечиваете) могли бы работать значительно дешевле, чем покупать по одному домену; например, RapidSSL имеет подстановочный знак, который становится дешевле, чем отдельные сертификаты, когда у вас есть четыре используемых домена.

ответил Cebjyre 22 J000000Thursday10 2010, 06:43:10

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132