← Cloudflare One / cloudflare-one / networks / connectors / cloudflare-tunnel / do-more-with-tunnels / local-management
Создайте туннель с локальным управлением
Следуйте этому пошаговому руководству, чтобы запустить свой первый туннель с помощью CLI.
Предварительные требования
Прежде чем начать, убедитесь, что вы:
1. Скачайте и установите cloudflared
-
Скачать
cloudflaredна вашем компьютере. Перейдите в скачивания странице, чтобы найти нужный пакет для вашей ОС. -
Переименуйте исполняемый файл в
cloudflared.exe -
В PowerShell перейдите в папку Downloads и выполните
.\cloudflared.exe --version. Должна выводиться версияcloudflared. Обратите внимание, чтоcloudflared.exeможет бытьcloudflared-windows-amd64.exeилиcloudflared-windows-386.exeесли вы его не переименовали.PS C:\Users\Administrator\Downloads\cloudflared-stable-windows-amd64> .\cloudflared.exe --version
Чтобы скачать и установить cloudflared:
brew install cloudflaredКак вариант, можно скачайте последний релиз для Darwin amd64 напрямую.
Debian и Ubuntu APT
Используйте менеджер пакетов apt, чтобы установить cloudflared на совместимых машинах.
- Добавьте ключ подписи пакетов Cloudflare:
sudo mkdir -p --mode=0755 /usr/share/keyrings
curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null- Добавьте apt-репозиторий Cloudflare в свои apt-репозитории:
echo "deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared any main" | sudo tee /etc/apt/sources.list.d/cloudflared.list- Обновите репозитории и установите cloudflared:
sudo apt-get update && sudo apt-get install cloudflaredRHEL RPM
Используйте менеджер пакетов rpm, чтобы установить cloudflared на совместимых машинах.
-
Добавьте репозиторий Cloudflare:
curl -fsSl https://pkg.cloudflare.com/cloudflared.repo | sudo tee /etc/yum.repos.d/cloudflared.repo -
Обновите репозитории и установите cloudflared:
sudo yum update && sudo yum install cloudflared
Arch Linux
cloudflared находится в Arch Linux community репозиторий ↗.
Используйте pacman чтобы установить cloudflared на совместимых машинах.
pacman -Syu cloudflaredПрочее
Также вы можете скачать cloudflared исполняемый файл или пакеты для Linux на свою машину и установите их вручную. Перейдите на скачивания странице, чтобы найти нужный пакет для вашей ОС.
Чтобы собрать последнюю версию cloudflared из исходного кода:
git clone https://github.com/cloudflare/cloudflared.git
cd cloudflared
make cloudflared
go install github.com/cloudflare/cloudflared/cmd/cloudflaredВ зависимости от того, где вы установили cloudflared, вы также можете переместить его в известный путь.
mv /root/cloudflared/cloudflared /usr/bin/cloudflared2. Аутентифицируйте cloudflared
cloudflared tunnel loginВыполнение этой команды приведёт к следующему:
- Откроется окно браузера с предложением войти в учетную запись Cloudflare. После входа в учетную запись выберите свое имя хоста.
- Создайте сертификат аккаунта, файл cert.pem, в по умолчанию
cloudflaredкаталог.
3. Создайте туннель и присвойте ему имя
cloudflared tunnel create <NAME>Выполнение этой команды приведёт к следующему:
- Вы создаёте туннель, устанавливая постоянную связь между указанным вами именем и UUID туннеля. На этом этапе внутри туннеля пока нет ни одного активного подключения.
- Создайте файл учетных данных туннеля в по умолчанию
cloudflaredкаталог. - Создайте поддомен
.cfargotunnel.com.
В выводе команды обратите внимание на UUID туннеля и путь к файлу учетных данных туннеля.
Убедитесь, что туннель был успешно создан, выполнив команду:
cloudflared tunnel list4. Создайте файл конфигурации
-
В вашем
.cloudflaredдиректории создайтеconfig.ymlфайл в любом текстовом редакторе. Этот файл настраивает туннель для маршрутизации трафика от заданного origin к выбранному вами имени хоста. -
Добавьте следующие поля в файл:
Если вы подключаете опубликованное приложение:
url: http://localhost:8000 tunnel: <Tunnel-UUID> credentials-file: /root/.cloudflared/<Tunnel-UUID>.jsonЕсли вы подключаете частная сеть:
tunnel: <Tunnel-UUID> credentials-file: /root/.cloudflared/<Tunnel-UUID>.json warp-routing: enabled: true -
Убедитесь, что конфигурационный файл был успешно создан, выполнив команду:
cat config.yml
5. Начните маршрутизацию трафика
-
Чтобы направить опубликованное приложение через туннель:
cloudflared tunnel route dns <UUID or NAME> <hostname>Эта команда создаст
CNAMEзапись, указывающую на<UUID>.cfargotunnel.com.
2. Если вы подключаете частную сеть, направьте частный IP-адрес или CIDR через туннель:
cloudflared tunnel route ip add <IP/CIDR> <UUID or NAME>3. Убедитесь, что маршрут успешно установлен:
cloudflared tunnel route ip show6. Запустите туннель
Запустите туннель, чтобы проксировать входящий трафик от туннеля к любому количеству служб, запущенных локально на вашем исходном сервере.
cloudflared tunnel run <UUID or NAME>Если ваш файл конфигурации имеет пользовательское имя или находится не в .cloudflared каталоге добавьте --config флаг и укажите путь.
cloudflared tunnel --config /path/your-config-file.yml run <UUID or NAME>7. Проверьте туннель
Чтобы получить информацию о только что созданном туннеле, выполните:
cloudflared tunnel info <UUID or NAME>