← Cloudflare Tunnel / tunnel / deployment-guides
AWS
В этом руководстве описано, как подключить инстанс Amazon Web Services (AWS) EC2 к Cloudflare с помощью cloudflared и опубликуйте веб-приложение через Cloudflare Tunnel.
Предварительные требования
1. Создайте экземпляр EC2
-
В консоли AWS перейдите в раздел Вычисления > EC2 > Экземпляры
-
Выберите Запустить экземпляр.
-
Назовите VM-инстанс. В этом примере мы назовём его
http-test-server. -
Для *Amazon Machine Image (AMI) выберите нужную операционную систему и характеристики. В этом примере мы будем использовать Ubuntu Server 24.04 LTS (HVM), SSD Volume Type.
-
Для Тип экземпляра:, вы можете выбрать t2.micro также предоставляется на бесплатном тарифе.
-
В Пара ключей (вход), создайте новую пару ключей для использования с SSH. Вам потребуется скачать
.pemфайл на локальную машину. -
В Настройки сети, выберите Создать группу безопасности.
-
Включите следующие правила Security Group:
- Разрешить SSH-трафик от My IP и запретите публичный доступ к инстансу.
- Разрешить HTTPS-трафик из интернета
- Разрешить HTTP-трафик из интернета
-
Выберите Запустить экземпляр.
-
После того как экземпляр запущен и работает, перейдите в Экземпляры сводную страницу и скопируйте её Публичный IPv4 DNS имя хоста (например,
ec2-44-202-59-16.compute-1.amazonaws.com). -
Чтобы войти в инстанс по SSH, откройте терминал и выполните следующие команды:
cd Downloadschmod 400 "YourKeyPair.pem"ssh -i "YourKeyPair.pem" [email protected]-
Запустите
sudo suчтобы получить полные права администратора на инстансе. -
Для тестирования вы можете развернуть базовый веб-сервер 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- Чтобы проверить, что сервер Apache запущен, откройте браузер и перейдите по адресу
http://ec2-44-202-59-16.compute-1.amazonaws.com(обязательно подключайтесь черезhttp, а неhttps). Вы должны увидеть Hello Cloudflare! тестовая страница.
2. Создайте туннель
- В Панель управления Cloudflare ↗, перейдите в Сеть > Tunnels.
- Выберите Create Tunnel и введите имя (например,
aws-tunnel). - Выберите Create Tunnel.
- В разделе Настройка окружения, выберите Debian 64-bit.
- Скопируйте команды установки и выполните их на инстансе EC2.
- После подключения туннеля выберите Продолжение.
3. Опубликуйте приложение
- В разделе Маршруты, выберите Добавить маршрут > Published application.
- Введите имя хоста (например,
hellocloudflare.<your-domain>.com). - В разделе Сервис, введите
http://localhost:80. - Выберите Добавить маршрут.
Чтобы проверить, откройте браузер и перейдите по настроенному имени хоста. Вы должны увидеть страницу вашего веб-сервера.
Настройка межсетевого экрана
Чтобы защитить свой экземпляр AWS, можно настроить Правила Security Group ↗ чтобы запретить весь входящий трафик и разрешить только исходящий трафик к IP-адреса Cloudflare Tunnel. Все правила Security Group являются разрешающими. Трафик, не соответствующий ни одному правилу, блокируется. Поэтому вы можете удалить все входящие правила и оставить только нужные исходящие.
После настройки правил Security Group убедитесь, что доступ к сервису через Cloudflare Tunnel по-прежнему возможен через его публичное имя хоста. Сервис больше не должен быть доступен извне Cloudflare Tunnel, например, если вы перейдёте по адресу http://ec2-44-202-59-16.compute-1.amazonaws.com тестовая страница больше не должна загружаться.