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

Windows

Вы можете установить cloudflared как системную службу в Windows.

Настройте cloudflared как службу

По умолчанию Cloudflare Tunnel ожидает, что вся конфигурация находится в %USERPROFILE%\.cloudflared\config.yml файл конфигурации. Как минимум для запуска в качестве службы необходимо указать следующие аргументы:

Аргумент Описание
tunnel UUID вашего туннеля
credentials-file Расположение файла учётных данных для вашего туннеля

Запустите cloudflared как службу

  1. Скачать последнюю версию cloudflared версии.

  2. Создайте новый каталог:

    C:\Cloudflared\bin
  3. Скопируйте .exe файл, который вы скачали на шаге 1, в новый каталог и переименуйте его в cloudflared.exe.

  4. Откройте CMD от имени администратора и перейдите в C:\Cloudflared\bin.

  5. Выполните эту команду, чтобы установить cloudflared:

    cloudflared.exe service install
  6. Далее выполните эту команду, чтобы создать ещё один каталог:

    mkdir C:\Windows\System32\config\systemprofile\.cloudflared
  7. Войдите и пройдите аутентификацию cloudflared:

    cloudflared.exe login
  8. Команда входа сгенерирует cert.pem файл и по умолчанию сохраните его в свой профиль пользователя. Скопируйте файл в .cloudflared папку, созданную на шаге 5 с помощью этой команды:

    copy C:\Users\%USERNAME%\.cloudflared\cert.pem C:\Windows\System32\config\systemprofile\.cloudflared\cert.pem
  9. Далее создайте туннель:

    cloudflared.exe tunnel create <Tunnel Name>

    Это сгенерирует файл учётных данных в .json формате.

  10. Создайте файл конфигурации со следующим содержимым:

    tunnel: <Tunnel ID>
    credentials-file: C:\Windows\System32\config\systemprofile\.cloudflared\<Tunnel-ID>.json
    # Uncomment the following two lines if you are using self-signed certificates in your origin server
    # originRequest:
    #   noTLSVerify: true
    
    ingress:
      - hostname: app.mydomain.com
        service: https://internal.mydomain.com
      - service: http_status:404
    logfile:  C:\Cloudflared\cloudflared.log
  11. Скопируйте файл учётных данных в папку, созданную на шаге 6:

    copy C:\Users\%USERNAME%\.cloudflared\<Tunnel-ID>.json C:\Windows\System32\config\systemprofile\.cloudflared\<Tunnel-ID>.json
  12. Проверьте записи входящих правил в своём файле конфигурации с помощью следующей команды:

    cloudflared.exe tunnel ingress validate
  13. В редакторе реестра перейдите в Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Cloudflared.

  14. В записи реестра cloudflared измените ImagePath и укажите на cloudflared.exe и config.yml файлы. При изменении записи реестра убедитесь, что нет лишних пробелов или символов, так как это может вызвать проблемы при запуске службы.

    C:\Cloudflared\bin\cloudflared.exe --config=C:\Windows\System32\config\systemprofile\.cloudflared\config.yml tunnel run
  15. Если служба не запускается, выполните следующую команду из C:\Cloudflared\bin:

    sc start cloudflared

    Ниже показан результат вывода:

    SERVICE_NAME: cloudflared
            TYPE               : 10  WIN32_OWN_PROCESS
            STATE              : 2  START_PENDING
                                    (NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
            WIN32_EXIT_CODE    : 0  (0x0)
            SERVICE_EXIT_CODE  : 0  (0x0)
            CHECKPOINT         : 0x0
            WAIT_HINT          : 0x7d0
            PID                : 3548
            FLAGS              :

Следующие шаги

Теперь вы можете Направьте трафик через свой туннель. Если вы добавляете IP-маршруты или иным образом изменяете конфигурацию, перезапустите службу, чтобы применить новую конфигурацию:

sc stop cloudflared
sc start cloudflared