INTEGRITY Документация

AWS

В этом руководстве описано, как подключить инстанс Amazon Web Services (AWS) EC2 к Cloudflare с помощью cloudflared и опубликуйте веб-приложение через Cloudflare Tunnel.

Предварительные требования

1. Создайте экземпляр EC2

  1. В консоли AWS перейдите в раздел Вычисления > EC2 > Экземпляры

  2. Выберите Запустить экземпляр.

  3. Назовите VM-инстанс. В этом примере мы назовём его http-test-server.

  4. Для *Amazon Machine Image (AMI) выберите нужную операционную систему и характеристики. В этом примере мы будем использовать Ubuntu Server 24.04 LTS (HVM), SSD Volume Type.

  5. Для Тип экземпляра:, вы можете выбрать t2.micro также предоставляется на бесплатном тарифе.

  6. В Пара ключей (вход), создайте новую пару ключей для использования с SSH. Вам потребуется скачать .pem файл на локальную машину.

  7. В Настройки сети, выберите Создать группу безопасности.

  8. Включите следующие правила Security Group:

    • Разрешить SSH-трафик от My IP и запретите публичный доступ к инстансу.
    • Разрешить HTTPS-трафик из интернета
    • Разрешить HTTP-трафик из интернета
  9. Выберите Запустить экземпляр.

  10. После того как экземпляр запущен и работает, перейдите в Экземпляры сводную страницу и скопируйте её Публичный IPv4 DNS имя хоста (например, ec2-44-202-59-16.compute-1.amazonaws.com).

  11. Чтобы войти в инстанс по SSH, откройте терминал и выполните следующие команды:

cd Downloads
chmod 400 "YourKeyPair.pem"
ssh -i "YourKeyPair.pem" [email protected]
  1. Запустите sudo su чтобы получить полные права администратора на инстансе.

  2. Для тестирования вы можете развернуть базовый веб-сервер Apache на порту 80:

apt update

apt -y install apache2

cat <<EOF > /var/www/html/index.html
<html><body><h1>Hello Cloudflare!</h1>
<p>This page was created for a Cloudflare demo.</p>
</body></html>
EOF
  1. Чтобы проверить, что сервер Apache запущен, откройте браузер и перейдите по адресу http://ec2-44-202-59-16.compute-1.amazonaws.com (обязательно подключайтесь через http, а не https). Вы должны увидеть Hello Cloudflare! тестовая страница.

2. Создайте туннель

  1. В Панель управления Cloudflare ↗, перейдите в Сеть > Tunnels.
  2. Выберите Create Tunnel и введите имя (например, aws-tunnel).
  3. Выберите Create Tunnel.
  4. В разделе Настройка окружения, выберите Debian 64-bit.
  5. Скопируйте команды установки и выполните их на инстансе EC2.
  6. После подключения туннеля выберите Продолжение.

3. Опубликуйте приложение

  1. В разделе Маршруты, выберите Добавить маршрут > Published application.
  2. Введите имя хоста (например, hellocloudflare.<your-domain>.com).
  3. В разделе Сервис, введите http://localhost:80.
  4. Выберите Добавить маршрут.

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

Настройка межсетевого экрана

Чтобы защитить свой экземпляр AWS, можно настроить Правила Security Group ↗ чтобы запретить весь входящий трафик и разрешить только исходящий трафик к IP-адреса Cloudflare Tunnel. Все правила Security Group являются разрешающими. Трафик, не соответствующий ни одному правилу, блокируется. Поэтому вы можете удалить все входящие правила и оставить только нужные исходящие.

После настройки правил Security Group убедитесь, что доступ к сервису через Cloudflare Tunnel по-прежнему возможен через его публичное имя хоста. Сервис больше не должен быть доступен извне Cloudflare Tunnel, например, если вы перейдёте по адресу http://ec2-44-202-59-16.compute-1.amazonaws.com тестовая страница больше не должна загружаться.