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

Подключение к SSH с помощью cloudflared на стороне клиента

Конечные пользователи могут подключаться к серверу SSH без Cloudflare One Client, проходя аутентификацию через cloudflared в собственном терминале. Для этого способа необходимо иметь cloudflared установлен как на серверной, так и на клиентской машине, а также активная зона на Cloudflare. Трафик проксируется через это соединение, и пользователь входит на сервер с учётными данными Cloudflare Access.

На стороне клиента cloudflared можно использовать вместе с Cloudflare One Client и Access for Infrastructure чтобы к серверу можно было подключаться несколькими способами. При настройке каждого способа подключения можно использовать один и тот же Cloudflare Tunnel.

1. Подключите сервер к Cloudflare

  1. Создайте Cloudflare Tunnel, следуя нашему руководство по настройке в панели управления.

  2. В панели управления Cloudflare перейдите в Сеть > Tunnels и выберите свой туннель.

    Перейдите в Tunnels ↗
  3. На Маршруты вкладке выберите Добавить маршрут, затем выберите Опубликованное приложение.

  4. Выберите домен из раскрывающегося списка и укажите любой поддомен (например, ssh.example.com).

  5. Для Сервис, выберите SSH и введите localhost:22. Если SSH-сервер находится на другой машине, отличной от той, где установлен туннель, введите <server IP>:22.

  6. Выберите Добавить маршрут.

  7. (Рекомендуется) Добавьте приложение с самостоятельным хостингом к Cloudflare Access, чтобы управлять доступом к своему серверу.

2. Подключитесь как пользователь

  1. Установка cloudflared на клиентской машине.

  2. Внесите разовое изменение в файл конфигурации SSH:

    vim ~/.ssh/config
  3. Введите следующие значения, заменив ssh.example.com с именем хоста, которое вы создали.

    Host ssh.example.com
    ProxyCommand /usr/local/bin/cloudflared access ssh --hostname %h

    cloudflared путь может отличаться в зависимости от вашей ОС и менеджера пакетов. Например, если вы установили cloudflared на macOS с помощью Homebrew, проверьте его путь, выполнив brew --prefix cloudflared.

  4. Теперь можно проверить подключение, выполнив команду для обращения к службе:

    ssh <username>@ssh.example.com

    При выполнении команды cloudflared откроет окно браузера и предложит вам пройти аутентификацию у вашего поставщика идентификации перед установлением соединения из терминала.