Как бесплатно добавить HTTPS на свой веб-сайт за 10 минут и почему это нужно сделать сейчас больше, чем…

kak besplatno dobavit https na svoj veb sajt za 10 minut?v=1656678508

автор Айо Исайя

CNtduudM3wPaW7j79NJvmq2w-RcTpNa4ab1v
Фото Дэниела Корнески на Unsplash

На прошлой неделе Google объявил, что поступивший в июле Chrome 68 будет обозначать все HTTP-страницы как «Незащищенные».

KJlpSH4gFVWnNr3gacsE9dQS1bnioHJHOdQK
Планируемая смена адресной строки Chrome

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

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

«Зачем мне это для блога

Я уже писал о ценности HTTPS раньше, но хочу повторить:

Если вы не уверены, прочтите dosmysiteneedhttps.com, чтобы получить полное представление о том, почему каждый веб-сайт должен обслуживаться безопасно.

И если вы все равно этого не поймете, то жить вам станет гораздо труднее.

Чтобы оттолкнуть пользователей от опасных сайтов, браузеры стыдили веб-сайты, которые обслуживались опасно в определенных контекстах.

Chrome 56 положил начало этой тенденции, отметив страницы с конфиденциальными полями для входа как «Незащищенные», тогда как Chrome 62 распространил это предупреждение на все HTTP-страницы, содержащие любые типы полей ввода. Кроме того, предупреждение отображается на всех страницах HTTP в режиме анонимного просмотра независимо от того, содержали они поле ввода или нет.

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

UOg75ZXyl499GSy1spRo5U2Vbzlob96XccHK

Теперь Chrome решил разместить это предупреждение на всех страницах HTTP. Впоследствии значок возле метки «Опасно» изменится, а текст станет красным, чтобы еще больше подчеркнуть, что HTTP-страницам нельзя доверять.

EXVHgs7peMi19ChWdueYMGkF-9wH0beGtkZX

Чтобы пользователи не видели это предупреждение на вашем веб-сайте, вам нужно только получить действительный сертификат SSL. Хорошая новость состоит в том, что делать это не так сложно или дорого, как раньше. На самом деле, я покажу вам, как бесплатно развернуть HTTPS на вашем сайте с помощью Cloudflare. И это не займет много времени.

Почему Cloudflare?

CloudFlare может помочь вам бесплатно защитить сертификат SSL, независимо от того, какую инфраструктуру на стороне сервера у вас есть. Это также работает для сайтов, размещенных на платформах, не предоставляющих доступ к серверу, например GitHub Pages, Ghost и т.д.

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

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

Как работает Cloudflare

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

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

Lc-xzCU5Cw0u2x-u8zDwE3TFVbv-aUj-JjqK
Распространение глобальной сети Cloudflare

Теперь, когда мы знаем, как работает Cloudflare, давайте рассмотрим, как настроить веб-сайт на их инфраструктуре и как бесплатно подключиться к HTTPS. Основное внимание здесь будет сосредоточено на функциях, которые Cloudflare предоставляет бесплатно, но заметьте, что платные планы также доступны с кучей дополнительных функций.

Настройка нового сайта

После регистрации в Cloudflare первое, что нужно сделать это добавить домен и просканировать записи DNS.

o1eN1nEZhtbcRaATWZ1p-nQUCwFBsrWEpalQ

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

XTjdrU156BPJ2Foa2rZuyNAjs53doMdCrJRN

Выберите бесплатный план и нажмите Продолжить.

Nc7rVPCFdQ9LKxx-oEFCj-3zlrjrQqgNQvcO

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

xnHu2o4MJrpckhGOvUsDcUoGz0UuujOvxDsU

Вот как это выглядит в Namecheap:

-C7vA1eZcIpP3B5vcq-qYK1eC1Y8Khq8PI9H
Изменение серверов имен в Namecheap

Теперь вы должны дождаться завершения распространения изменений сервера имен. Нажмите на Повторно проверьте имена серверов через некоторое время, чтобы проверить, сейчас ли ваш сайт активен в Cloudflare. Это самая длинная часть настройки, которая может занять до 24 часов, но, по моему опыту, она занимает менее 5 минут.

9oHlGNn4TMApCJw1v2GWyQ9ulTA-egOhF6Ew

После того, как Cloudflare проверит ваши обновления сервера имен, ваш сайт станет активным в службе.

1AgkTO0uBz8lv0fAdrJhGXz8Rg5nkPfaZDVO

Если вы хотите быть абсолютно уверены, что ваши настройки DNS распространяются повсюду, What’s My DNS предоставляет способ проверить, какой IP-адрес определяет ваш домен в разных местах.

Вы также можете использовать dig или nslookup в командной строке для проверки конфигурации DNS вашего домена.

WAC1LFbxuDtbk-hXxrqot4vUKIxl6b3yFUi9
В РАЗДЕЛЕ ОТВЕТЫ вы увидите, какой IP-адрес определяет ваш домен

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

Прежде чем начать настраивать Cloudflare, убедитесь, что ваш браузер не использует старые записи DNS из кэша. В Chrome и Firefox это можно сделать, очистив историю обозревателя.

Получение SSL бесплатно

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

kIkCSgOncnKEkE5LClz1UeV0dVDP4i8CFZPw
Comodo взимает 99,95 долларов в год за сертификат SSL

Теперь, когда в вашем веб-трафике находится Cloudflare, необходимо автоматически установить SSL в своем домене. Чтобы сертификат стал активным, может потребоваться до 24 часов, но по моему опыту это совсем недолго.

cZyriRiq6Ao4k48mLCYMjtaLR-aHLa824hXj
Вы можете проверить, активен ли сертификат вашего сайта в настройках Crypto.

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

7ehfhEpKBWEG71hCcQY147j1bBiOQ2Q4YLSF

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

E6A0jelflOxpON3l4OG-p16p7Qy8udwHqtps

Разница между гибким, полным и полным (строгим) SSL

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

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

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

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

Если вы не хотите покупать SSL у подобных Comodo, вы можете получить бесплатные сертификаты Origin CA от Cloudflare, которые можно использовать с опциями «Полный» или «Полный (строгий), поскольку Cloudflare им доверяет». Но учтите, что этим сертификатам доверяет только Cloudflare, поэтому они перестанут работать, если вы решите удалить свой веб-сайт из инфраструктуры Cloudflare.

N2mQFmlgiPlsshjqQml8DLEYBpCfSAwW0049

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

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

Усилить использование SSL

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

f9yR7vx-50TyrX2lWQjMTOiFBwc2oUzoUr3W

Даже несмотря на то, что я получаю оценку A в домене, если вы подробно ознакомитесь с результатами, то увидите, что, безусловно, есть место для улучшения в аспекте обмена ключами и устойчивости шифра.

EflHwo97oxMhSWGIz6Gu3Xkbq32PwDsBMUl-

Давайте рассмотрим несколько вещей, которые мы можем сделать в Cloudflare, чтобы усилить наш SSL и повысить рейтинги.

Принудительно использовать HTTPS везде

Перейдя на HTTPS, вы точно захотите предотвратить доступ пользователей к вашему сайту через незащищенное соединение. Вы можете сделать это в Cloudflare, перенаправив 301 весь трафик HTTP на HTTPS.

В настройках Crypto найдите Всегда используйте HTTPS и включите его.

x1VBeW7nD6Hitnfm6QHowq2bhGAhDXZEsOHw

Включить строгую транспортную защиту HTTP (HSTS)

Ранее я писал о том, как HSTS усиливает SSL ваших сайтов, но давайте кратко поговорим об этом еще раз.

Проблема только с перенаправлением HTTP-трафика 301 на HTTPS состоит в том, что исходный незащищенный запрос все еще поступает по проводу, что означает, что его может прочитать любой, кто имеет доступ к трафику.

HSTS — это заголовок ответа, который решает эту проблему, сообщая браузеру, что он может не посылать опасный запрос на веб-сайт в течение определенного периода времени.

Вот как выглядит заглавие:

strict-transport-security: max-age=31536000

Как только браузер получит этот заголовок, он не будет посылать опасный запрос на ваш сайт в течение следующих 31 536 000 секунд (стоимость 1 года). Все HTTP-запросы будут внутренне обновлены до HTTPS перед отправкой через сеть.

Если вы хотите запретить доступ ко всем субдоменам через HTTP, вам понадобится includeSubdomains директива. Вы также можете добавить preload директива, чтобы разрешить поставщикам браузеров запекать ваш сайт в сам браузер только как HTTPS.

strict-transport-security: max-age=31536000; includeSubdomains; preload

После того, как вы включили HSTS в домене, вы можете быть почти уверены, что если кто-то загрузит ваш веб-сайт через HTTPS, они смогут получить доступ к нему только через защищенную схему.

Итак, прежде чем включить HSTS на своем сайте, убедитесь, что весь ваш трафик будет обслуживаться через HTTPS, иначе у вас возникнут проблемы.

Чтобы включить это в Cloudflare, перейдите к Крипто настройки и прокрутите вниз до HTTP Strict Transport Security (HSTS) См. раздел. Нажмите на Изменить настройки HSTS, включите все соответствующие настройки и нажмите сохранить.

duTVMCLbBXZtlp5QoKLu4gBuzz-qnGRH3CRS

И в случае, если вам интересно, браузер поддерживает HSTS достаточно хорошо.

kvk9x7Ffgtm8Hj7uJG3SNbqcVvhv6bdv0Sxy

Исправьте незащищенные ссылки на схему

Если вы незащищенно вставите пассивный ресурс (например, изображение) на безопасную страницу, браузер все равно загрузит его нормально. Он просто снимает зеленый замок с адресной строчки. Вы можете увидеть пример этой ошибки здесь.

PztuGkSktiMG9zRjN4Dc1Haa9ZU4ExWAkcvG

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

<img class="mixed" src=" alt="HTTP image">
WD4db17NSC2rNZo4gXdamnM6A4q54CE0Y0kQ

Чтобы исправить это, просто смените схему на HTTPS, и все снова будет хорошо.

<img class="mixed" src=" alt="HTTP image">

Если на вашем сайте есть много незащищенного встроенного содержимого, поиск и исправление каждого из них может быть достаточно изнурительным. Но Cloudflare снова может помочь вам с функцией автоматической перезаписи HTTPS.

TInVTocyWO2EfauqD6OfOpmHWb0x65C5-cq3

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

Теперь давайте посмотрим, как эти изменения повлияли на наш отчет SSL Labs. Я повторно провел тест в домене, и теперь мы получили оценку A+.

Q0jdFp2spaP7pWbehBEXBQJMFblx4K3YPKIT

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

L9vbROCIfrsio5SwUybP-eTil0YGuclRgUzy

Альтернативы Cloudflare для бесплатного SSL

Если вы по какой-либо причине не хотите использовать Cloudflare, есть другие способы, которыми вы можете бесплатно перевести свой веб-сайт на HTTPS. Вот два варианта, которые вы можете попробовать:

Давайте зашифруем

Если вы контролируете свой сервер, вы можете быстро развернуть HTTPS на своем сайте с помощью Let’s Encrypt. Они предлагают бесплатные сертификаты SSL, действующие в течение трех месяцев и могут автоматически обновляться.

Даже если у вас нет доступа к серверу, обратитесь к веб-хосту. Некоторые хосты позволят вам использовать Let’s Encrypt SSL без предоставления доступа к оболочке.

Менеджер сертификатов Amazon AWS

Amazon также выдает и автоматически обновляет сертификаты SSL для клиентов в своей инфраструктуре Amazon Web Services (AWS). Таким образом, вы можете установить и забыть HTTPS на своем сайте, если вы используете ресурсы AWS, такие как Cloudfront.

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

Если вам понравилась эта статья, поделитесь ею с другими, кому может быть полезно ее прочесть. Кстати, проверьте мой блог на freshman.tech, чтобы найти статьи о веб-разработке. Спасибо, что прочли.

Добавить комментарий

Ваш адрес email не будет опубликован.