Насколько важен сертификат SSL для сайта?

14

Я загружаю свой собственный проект, у него есть область регистрации / входа в систему (через разработку с RoR, конечно, правильно хешированная и соленая). Поскольку я использую субдомены и мне нужен доступ к ним с помощью iframes (это действительно оправдано!), Мне нужен один из тех дорогих сертификатов, которые покрывают субдомены.

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

Я дешев? Это то, что я должен решить перед выпуском в дикую природу. Я, вероятно, должен упомянуть, что у меня есть 25 000 пользователей, подписанных на уведомление при запуске, поэтому я нервничаю по этому поводу.

methodofaction
источник
1
Потому что ему нужен подстановочный сертификат для покрытия его поддоменов.
Притеас
1
Но нужны ли субдомены? Можно ли поставить какой-то (безопасный) прокси перед ними, чтобы он выглядел как один сайт?
Donal Fellows
3
Если у вас есть 25 000 пользователей, ожидающих вашего запуска, то потратить несколько сотен долларов не должно быть проблемой.
Марко-Фисет
2
Несмотря на множество ответов и комментариев, подписанный SSL-сертификат является важной частью защиты данных на вашем сайте. Все, что пользователь видит или отправляет, может быть отслежено, если у вас его нет, независимо от того, откуда он подключается.
Крис
2
@RyanKinal Э-э-э ... те, которые действительно работают и правильно проверяют в стандартных браузерах? Я бы подумал, что любой центр сертификации, предлагающий сертификаты бесплатно, будет иметь свой подписывающий ключ в черном списке
TheLQ

Ответы:

5

За время, прошедшее с тех пор, как был задан этот вопрос, многое изменилось. Вашему сайту нужен HTTPS? ДА!

  1. Сертификаты с проверкой домена бесплатны от многих провайдеров, например Let's Encrypt. Эти сертификаты так же хороши, как и те, за которые вы платите деньги. Благодаря идентификации имени сервера нет необходимости владеть IP-адресом.

  2. Браузеры все чаще отмечают не-HTTPS-страницы небезопасными , а не нейтральными. Ваш сайт, помеченный как небезопасный, выглядит не очень хорошо.

  3. Современные веб-технологии требуют шифрования. Будь то политика Chrome по включению только новых функций для сайтов HTTPS, предпочтительный рейтинг Google для сайтов HTTPS или зашифрованный HTTP / 2, превышающий скорость открытого текста HTTP / 1.1 , вы оставляете возможности на столе. Да, шифрование увеличивает нагрузку на ваши серверы, но это незаметно для большинства сайтов - и особенно незаметно для пользователей.

  4. Конфиденциальность важнее, чем когда-либо. Будь то интернет-провайдеры, продающие ваш клик-поток или секретные сервисы, просеивающие все ваши соединения, нет никаких веских причин, чтобы оставлять какие-либо сообщения общедоступными. Используйте HTTPS по умолчанию и используйте HTTP только в том случае, если вы уверены, что любая передаваемая информация может быть общедоступной и может быть подделана.

    Обратите внимание, что пароли не должны передаваться через незашифрованные соединения.

    В соответствии с некоторыми нормативными актами, такими как EU-GDPR, вы должны применять самые современные меры безопасности, которые обычно включают HTTPS для веб-сайтов.

Есть пара нерешений:

  • «Использовать OAuth вместо паролей» упускает из виду тот факт, что все еще используются токены, подобные паролям. По крайней мере, у ваших пользователей будет файл cookie сеанса, который должен быть защищен, поскольку он служит временным паролем.

  • Самозаверяющие сертификаты отклоняются браузерами. Можно добавить исключение, но большинство пользователей не смогут этого сделать. Обратите внимание, что представление самоподписанного сертификата неотличимо для пользователя от атаки MITM с использованием недействительного сертификата.

Итак: сертификаты бесплатны и HTTPS может сделать ваш сайт быстрее. Больше нет веских оправданий. Следующие шаги: прочитайте это руководство по переходу на HTTPS .

Амон
источник
Я согласен, что в настоящее время наблюдается тенденция к https на вашем сайте, даже если вы не обрабатываете регистрацию пользователей и т. Д. Из-за упомянутых вами преимуществ. Я выбираю это как правильный ответ.
methodofaction
1
В дополнение: HTTPS не только обеспечивает конфиденциальность, но и целостность. Благодаря шифрованию вы также можете быть уверены, что данные, которые пользователь фактически получил, были теми, которые были отправлены и не были изменены кем-то в пути
Йоханнес
24

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

Анджей Бобак
источник
1
Общий SSL - это «хорошо» для людей, не являющихся специалистами в области технологий
Якуб
и с другой стороны: никакой SSL - это «очень плохо и подозрительно» для типичного пользователя
Анджей Бобак,
Только подписанные сертификаты могут обеспечить доверие. Все еще можно украсть данные без подписанного сертификата. Человек в середине атаки все еще работает, предоставляя клиенту ложный сертификат.
Крис
Спасибо за указатели, общий консенсус, кажется, указывает на то, что SSL - это не то, что я должен изучать. Я установил бесплатный сертификат от StartSSL и куплю подстановочный знак при фактическом запуске method.ac
methodofaction
5

Если вы «только» собираете электронные письма и пароли, вы, возможно, захотите попробовать создать собственный сертификат OpenSSL (http://www.openssl.org/), прежде чем вносить какие-либо средства.

Но...

Это просто то, что вы можете сделать, чтобы "попробовать что-то", потому что пользователи сайта получат вражду, так как это не будет признанный / принятый сертификат.

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

Нам нужен защищенный и заслуживающий доверия WEB, и несколько десятков долларов - это небольшая цена за безопасность пользователей. (даже такой простой, как SSL)

Игал Зейфман
источник
5

Проблемы безопасности

Насколько я понимаю, единственная уязвимость возникает, когда пользователь входит в систему или регистрируется из незашифрованной сети (например, кафе) и кто-то прослушивает сеть.

Это не так, данные, передаваемые между пользователем и вашим сайтом, никогда не являются безопасными. В качестве примера http://www.pcmag.com/article2/0,2817,2406837,00.asp подробно рассказывается о вирусе, который изменил настройки DNS. Независимо от того, насколько хорошо ваша текущая сеть защищена, любая заявка в Интернете проходит через множество различных серверов, прежде чем попасть на ваш. Любой из них может быть вредоносным.

Сертификаты SSL позволяют вам шифровать данные односторонним шифрованием, которое может быть дешифровано только на вашем сервере. Поэтому независимо от того, где данные попадают на ваш сервер, никто другой не сможет их прочитать.

В большинстве случаев, и это зависит от вашего хостинга, установка сертификата довольно безболезненна. Большинство провайдеров установят его для вас.

Типы сертификатов SSL

Как отмечено в некоторых ответах, вы можете создавать свои собственные сертификаты SSL. Сертификат SSL - это просто соединение открытого и закрытого ключей. Ваш сервер выдает открытый ключ, клиент использует его для шифрования отправляемых данных, и только закрытый ключ на вашем сервере может расшифровать его. OpenSSL - хороший инструмент для создания своих собственных.

Подписанные SSL-сертификаты

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

Когда подписанный сертификат получен пользователем, его браузер подключится к провайдеру аутентификации (Verisign и т. Д.), Чтобы проверить, что открытый ключ, который он получил, на самом деле является тем же для вашего веб-сайта и что не было взлома.

Итак, да, у вас должен быть подписанный сертификат SSL для вашего сайта. Это заставляет вас выглядеть более профессионально, дает вашим пользователям больше ума при использовании вашего сайта, а самое главное защищает вас от кражи данных.

Больше информации об атаке «Человек в середине», которая является ядром проблемы здесь. http://en.wikipedia.org/wiki/Man-in-the-middle_attack

Крис
источник
2

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

Учитывая это и ваше описание, мне интересно, почему вы вообще храните пароль ...

Я бы использовал OpenID, и если вы чувствуете необходимость иметь свой собственный логин, создайте для этого один поддомен и используйте OpenID где-либо еще.

Если вы не будете использовать OpenID, вы все равно можете использовать тот же шаблон login.yourdomain, чтобы избежать необходимости подстановочного сертификата, но, как я уже сказал, в сегодняшнем мире пароли, по крайней мере, так же чувствительны, как SSN / birthday, не собирайте его если вам не нужно

jmoreno
источник
1

Стоимость RapidSSL через Trustico составляет всего 30 долл. США, или вы можете получить групповой символ RapidSSL менее чем за 160 долл. США - они также имеют гарантию цены, поэтому, если вы сочтете его дешевле, он будет соответствовать.

Clint
источник
1

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

tylerl
источник
1

Было бы разумно купить один. Как уже упоминалось, это ALL about end user trustдля вашего сайта.

so I'm hesitant to drop a couple of hundreds on a certificate - Ну, это не дорого, и вы можете получить один под 50 долларов.

SSL - это действительно важно для обеспечения безопасности вашего сайта и повышения уровня доверия посетителей вашего сайта. Что касается процесса входа в систему, почему НЕ использовать OAuth ? Эта функция избавит пользователя от необходимости тратить время на регистрацию вашего сайта. Трафик пользователей сайта действительно выиграет от этого. Серьезно !, найдите время, чтобы исследовать это .

Хороший справочник по общим вопросам о SSL - Все о SSL-сертификатах

Юсубы
источник
0

Я также подумал бы об использовании стороннего поставщика для входа в систему (например, openid). Большинство CMS уже поддерживают это.

PBrando
источник
-1

У SSL есть недостатки. Это замедляет ваш сайт. В самом деле.

Единственная причина, по которой люди используют SSL-сертификаты, - это вовлечение денег клиентов.

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

Если у вас есть бэкэнд для ваших клиентов, и на сайте нет денег, но они должны быть уверены, что они в безопасности, тогда обязательно берите сертификат. Это инвестиция для доверия ваших клиентов.

Флориан Маргейн
источник
3
-1: Вы должны ВСЕГДА использовать сертификат SSL, когда ваши пользователи отправляют конфиденциальные данные, такие как пароли, для регистрации и входа в систему. Не только когда деньги вовлечены.
Марко-Фисет
2
Я не согласен. С деловой точки зрения это явно не нужно. Покупайте SSL-сертификат только в том случае, если, как сказано в ответе, вы привлекаете деньги клиентов.
Флориан Маргэйн
3
@Florian: SE - неработающий сайт, если он запрашивает у вас личную информацию, но не шифрует ее. Эта огромная сеть сайтов, особенно ориентированная на программистов, должна знать лучше. Для меня, хотя, они перенаправлять мой провайдер OpenID, который КСТАТИ делает использование SSL. Вопрос в том, стоит ли исправлять эту поломку. А для такого сайта, как SO, у которого нет личной информации (кроме пароля и адреса электронной почты), возможно, они решили, что это не так. Но это решение, которое нужно принять и с которым нужно жить, а не просто говорить «нет номеров CC? Тогда винт SSL».
Цао
1
Меня обмануло и отсутствие SSL, но оказалось, что форма регистрации фактически встроена в iframe, который вызывает адрес https.
methodofaction
1
@FlorianMargaine - Google доказал, что ваши претензии на SSL замедляют работу вашего сайта как ошибку.
Ramhound
-1

Сбросить деньги на SSL-сертификат с подстановочными знаками может быть лучшим вариантом, а может и нет. Взгляните на веб-сервер Caddy: https://caddyserver.com/ . Он имеет много приятных функций, в частности встроенную поддержку для получения бесплатных сертификатов от Let's Encrypt. Вы можете просто указать все свои домены в его конфигурационном файле, и он будет получать сертификаты для них. Другая действительно интересная функция - TLS по требованию. Если вы включите его, всякий раз, когда он получает запрос на новый домен, для которого у него нет сертификата, он захватывает его во время первоначального рукопожатия TLS. Это означает, что вы можете иметь буквально тысячи доменов и вам не нужно настраивать каждый отдельный в конфигурации Caddy.

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

Дункан Х Симпсон
источник
-4

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

Вы можете взглянуть на это

http://en.wikipedia.org/wiki/Comparison_of_SSL_certificates_for_web_servers

user827992
источник
Я не думаю, что вы говорите правильно. Сертификат не обеспечивает безопасность, но он идентичен, и способность идентифицировать объекты - это первый уровень безопасности?
Озаир Кафрай
определить кто? как? если у вас есть компания с именем «Stuff», вы покупаете сертификат, и вас признают «Stuff», точка. если вы говорите, что вы «Случайный», вы признаетесь «Случайным»; Вы думаете, что эти парни имеют минимальный интерес быть полицейскими через Интернет?
user827992
Нет, но мы недавно купили сертификат для нашего продукта vcred.com, и geotrust понадобилось 3 месяца, чтобы подтвердить, что мы являемся компанией riksof.com. Это для Пакистана, для других стран они занимают меньше времени, и это потому, что они проверяют нас. Я думаю, что Verisign также будет строгий процесс проверки. Таким образом, они не продают это просто как продукт, на мой взгляд. Можно также сгенерировать сертификат сам, и тогда легко определить отсутствие CA
Ozair Kafray
эта компания является исключением, также это зависит от того, какой сертификат вы покупаете, но в итоге вы можете просто стать другим человеком, и это не так сложно достичь.
user827992
2
-1 Сертификаты обеспечивают безопасность. Это их основная функция.
Крис