Каковы плюсы и минусы сайта 100% HTTPS? - PullRequest
16 голосов
/ 29 октября 2010

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

Что я знаю, так это то, что безопасность сети важна;эти ужасные истории XSS, CSRF и инъекций базы данных всплывают снова и снова.Я знаю, что превентивная позиция против таких подвигов лучше, чем реактивная.

Но мотивация для этого вопроса исходит с другой точки зрения.Я работаю на сайте, который регулярно принимает платежи от пользователей.Очевидно, что платежи отправляются по безопасному каналу (HTTPS).В основном я работаю над CSS, HTML и JavaScript сайта.Мне сказали, что необходимо дублировать CSS, JavaScript и файлы изображений, прежде чем их можно будет вызывать по HTTPS.Предположим, у меня есть следующие файлы:

  • css / global.css
  • js / global.js
  • images /
    • logo.png
    • bg.png

Насколько я понимаю, эти файлы должны быть продублированы, прежде чем их можно будет "добавить" в HTTPS.Таким образом, файл может быть защищенным (HTTPS) или нет.

Если это так, то это является серьезным препятствием.Даже на самом маленьком сайте было бы очень сложно дублировать файлы, а затем поддерживать их каждый раз, когда вы вносите изменения в CSS или JS.Очевидно, что это можно облегчить, переместив все в HTTPS.

Итак, я хочу знать, каковы плюсы и минусы сайта, который полностью стоит за HTTPS? Это вызывает заметные накладные расходы?Разве глупо ставить весь сайт под шифрование?Будут ли пользователи чувствовать себя безопаснее, увидев «безопасные» уведомления в своем браузере в течение всего посещения?И последнее, но не менее важное: действительно ли это делает сайт более безопасным ?От чего HTTPS не защищает?

Ответы [ 7 ]

11 голосов
/ 29 октября 2010

Вы можете передавать тот же контент через HTTPS, что и через HTTP (просто укажите на тот же корень документа).

Минусы, которые могут быть основными или второстепенными, в зависимости от:

  1. подача контента через HTTPS выполняется медленнее, чем через HTTP.
  2. сертификаты, подписанные известными властями, могут стоить дорого
  3. если у вас нет сертификата, подписанного доверенным органом (например, вы подписываете его самостоятельно), посетители получат предупреждение

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

6 голосов
/ 29 октября 2010

Заметные накладные расходы?Да, но в наши дни это все меньше и меньше значит, что клиенты и серверы работают намного быстрее.

Вам не нужно делать копии всего, но вам нужны эти файлыдоступны через HTTPS.Ваши службы HTTPS и HTTP могут использовать один и тот же корень документа.

Глупо ли шифровать весь сайт?Обычно нет.

Будут ли пользователи чувствовать себя безопаснее?Вероятно.

Действительно ли это делает сайт более безопасным?Только при работе с каналом связи между клиентом и сервером.Все остальное все еще готово.

4 голосов
/ 29 октября 2010

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

Для каждой другой страницы, где вы запускаете сайт по http (незащищенному), вы можете ссылаться на те же файлы в тех жеместоположения, но с http-адресом.

Чтобы ответить на ваш другой вопрос, на самом деле будет снижение производительности, если поместить весь сайт в https.Сервер должен работать, чтобы зашифровать все, что посылает по проводам.И тогда некоторые не очень старые браузеры не будут кэшировать содержимое https на диск по умолчанию, что, конечно, приведет к еще большей нагрузке на сервер.

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

3 голосов
/ 29 октября 2010

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

Что касается плюсов и минусов https против http, то уже есть несколько постов, посвященных этому. HTTP против HTTPS производительности HTTPS против сравнения скорости HTTP

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

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

3 голосов
/ 29 октября 2010

Традиционной причиной отсутствия всего сайта за SSL является время обработки.Клиенту и серверу требуется больше работы для использования SSL.Однако эти издержки довольно малы по сравнению с современными процессорами.

Если вы работаете с очень большим сайтом, вам может потребоваться немного увеличить масштаб, если вы все шифруете.

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

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

Но если вы можете позволить себе сертификат и частный ip и не против, вам понадобитсяНемного более быстрый сервер, использование SSL на всем вашем сайте - отличная идея.

Учитывая количество атак, которые смягчает SSL, я бы сказал, сделайте это.

1 голос
/ 09 января 2014

Важным «профи» для получения дополнительных https на вашем сайте является следующее:

пользователь, подключающийся через незашифрованный WiFi, как в аэропорту, может сообщить свой пароль в https, но если сайт после перехода на страницу пароля переключится обратно на http, cookie сеанса станет доступным и может быть немедленно использован подслушивающим .

См. Эту статью http://steve.grc.com/2010/10/28/why-firesheeps-time-has-come/#comment-2666

1 голос
/ 29 октября 2010

Одной из проблем является то, что трафик https может быть заблокирован, например, на компьютерах Apple, если на нем установлен родительский контроль, он блокирует трафик https, поскольку он не может читать зашифрованный контент, вы можете прочитать здесь:

http://support.apple.com/kb/ht2900

Примечание https: для сайтов, использующих SSL шифрование (обычно начинается URL с https), интернет-контент Фильтр не может проверить зашифрованное содержимое страницы. За По этой причине зашифрованные сайты должны быть явно разрешено с помощью Всегда Разрешить список. Зашифрованные сайты, которые не в списке «Всегда разрешать» быть заблокированным автоматическим интернетом фильтр содержимого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...