Хотя с помощью AWS легко разместить статический веб-сайт, немного сложно получить зеленый значок безопасности, который сообщает посетителю, что ваш сайт защищен и безопасен.
Если вы думаете, зачем защищать веб-сайт?
- Ваш рейтинг в Google улучшится благодаря защищенному SSL веб-сайту
- Безопасный веб-сайт SSL защищает конфиденциальную информацию от посторонних глаз
- Chrome теперь выдает пользователю предупреждение и не загружает ваш сайт, если на страницах, где запрашивается конфиденциальная информация, не найден действительный SSL-сертификат. Firefox и другие браузеры следуют этому примеру, и Google уже разослал предложение для всех веб-браузеров по реализации этой политики.
Итак, в этой статье мы рассмотрим процедуру размещения защищенного статического веб-сайта на Amazon Simple Storage Service (S3) с использованием Amazon Web Services (AWS).
Прежде чем мы перейдем к процедуре и ее техническим особенностям, давайте сначала поймем, почему мы это делаем. Точнее, почему AWS? Это из-за следующих причин:
- Они предлагают хранилище для неограниченного количества файлов с помощью утилиты «Плати за то, что ты используешь».
- Их услуги обеспечивают высокую производительность, масштабируемость, эластичность и безопасность.
- Это один из самых простых в использовании сервисов.
Теперь, когда это исключено, необходимы предварительные условия для выполнения этой процедуры.
- Аккаунт AWS,
- Доменное имя, размещенное на AWS
А теперь приступим!
Шаг 1. Создание корзины S3 и ее настройка для размещения статического веб-сайта
- Войдите в Консоль управления AWS и откройте консоль Amazon S3 по адресу https://console.aws.amazon.com/s3/.
- Выберите «Создать ведро».
- Введите имя корзины. Он должен называться так же, как ваш домен, но без «www». Например: bansalnagesh.com.
- В поле «Регион» выберите регион AWS, в котором вы хотите разместить корзину. Выберите регион, близкий к вашим целевым пользователям, чтобы свести к минимуму задержку и затраты.
- Выберите «Далее», пока не дойдете до вкладки «Установить разрешения».
- На странице «Установить разрешения» измените управление общедоступными разрешениями на «Предоставить общедоступный доступ для чтения к этому сегменту».
- Выберите «Далее», «Просмотреть» свой выбор, а затем нажмите «Готово».
- Чтобы разместить эту корзину в качестве веб-сайта, нажмите на новую корзину.
- Загрузите файлы вашего сайта.
- Откройте ведро «Свойства», выберите «Статический хостинг веб-сайтов».
- Выберите «Использовать это ведро для размещения веб-сайта».
- В поле «Индексный документ» введите имя индексного документа.
- Выберите «Сохранить», чтобы сохранить конфигурацию веб-сайта.
- Затем установите политику корзины, чтобы разрешить общий доступ ко всем объектам в этой корзине. Перейдите на вкладку «Разрешения», затем выберите «Политика корзины». Вставьте следующий документ политики в текстовую область, заменив «{NAGESH}» названием вашей корзины.
{ “Version”: “2012–10–17”, “Statement”: [ { “Sid”: “PublicReadGetObject”, “Effect”: “Allow”, “Principal”: “*”, “Action”: “s3:GetObject”, “Resource”: “arn:aws:s3:::{NAGESH}/*” } ] }
Теперь вы сможете получить доступ к своему веб-сайту по ссылке, указанной на экране. Это конечная точка веб-сайта, предоставляемая Amazon S3, для вашей корзины. Это будет выглядеть примерно так
http://yourbucketname.s3-website.eu-west-2.amazonaws.com.
Далее позвольте нам получить сертификат для вашего веб-сайта
Шаг 2. Запрос общедоступного сертификата с помощью AWS Certificate Manager (ACM)
- Войдите в Консоль управления AWS и откройте консоль ACM по адресу https://console.aws.amazon.com/acm/home.
- Выберите «Запросить сертификат».
- На странице «Запросить сертификат» выберите «Запросить публичный сертификат и Запросить сертификат», чтобы продолжить.
- На странице «Добавить доменные имена» введите свое доменное имя. Введите версии с www и без www. Например, www.bansalnagesh.com и bansalnagesh.com. Это гарантирует, что по какому бы URL-адресу ни перешел пользователь, будет представлен действительный сертификат.
- На странице «Выбор метода проверки» выберите «Проверка DNS» или «Проверка электронной почты», в зависимости от ваших потребностей. Выберите следующий.
- Если на странице «Обзор» содержится верная информация о вашем запросе, выберите «Подтвердить и запросить». Страница подтверждения показывает, что ваш запрос обрабатывается и домены сертификатов проверяются.
- Выберите «Продолжить».
Сертификаты, ожидающие проверки, будут находиться в состоянии проверки "Ожидание", и их выпуск может занять некоторое время. После выпуска сертификата мы готовы создать дистрибутив и защитить наш веб-сайт.
Шаг 3. Создайте веб-раздачу CloudFront
- Войдите в Консоль управления AWS и откройте консоль CloudFront по адресу https://console.aws.amazon.com/cloudfront/.
- Выберите «Создать раздачу».
- На первой странице «Мастера создания дистрибутива» в разделе «Веб» выберите «Начать».
- Выберите поле «Исходное доменное имя» и выберите URL-адрес вашего веб-сайта S3 из раскрывающегося списка.
- В разделе «Политика протокола просмотра» выберите «Перенаправить HTTP на HTTPS».
- Перейдите в «Ценовой класс» и выберите наиболее подходящий для вас вариант. Чем жестче ценовой класс, тем дешевле дистрибуция. Например, если вы выберете «Использовать только США, Канаду и Европу», пользователи по-прежнему смогут получить доступ к вашему сайту со всего мира, но это будет медленнее для пользователей в Австралии.
- В текстовой области «Альтернативные доменные имена (CNAME)» введите домены, которые вы будете размещать в этой раздаче, например, www.bansalnagesh.com и bansalnagesh.com.
- Выберите «Пользовательский SSL-сертификат» и в раскрывающемся списке выберите сертификат, созданный на шаге 2.
- В поле «Корневой объект по умолчанию» введите имя HTML-файла вашей домашней страницы, например index.html.
- Выберите «Создать раздачу».
После того как CloudFront создаст вашу раздачу, значение столбца «Статус» для вашей раздачи изменится с «В процессе» на «Развернуто».
Шаг 4. Обновление записей DNS
- Обновите записи DNS для своего домена, чтобы указать CNAME вашего веб-сайта на доменное имя вашей раздачи CloudFront.
- Вы можете найти доменное имя вашего дистрибутива в «консоли CloudFront» в формате, похожем на d1234abcd.cloudfront.net.
- Подождите, пока ваши изменения DNS вступят в силу и истечет срок действия предыдущих записей DNS.
Через несколько минут вы сможете перейти к своему новому домену и увидеть, что ваш веб-сайт обслуживается с использованием HTTPS.
И вот так ваш безопасный статический веб-сайт готов для всего мира.