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

SMB

Протокол Server Message Block (SMB) позволяет пользователям читать, записывать и получать доступ к общим ресурсам в сети. Из-за рисков безопасности межсетевые экраны и интернет-провайдеры обычно блокируют публичные подключения к общему ресурсу SMB. С Cloudflare Tunnel вы можете предоставить пользователям за пределами вашей сети безопасный и простой доступ по SMB.

Cloudflare Zero Trust предлагает два решения для подключения к серверам SMB:

Настройте SMB-сервер в Linux

SMB был разработан для Microsoft Windows, однако Samba обеспечивает подключение по SMB из UNIX-подобных и BSD-систем. Сервер Samba можно настроить с помощью этого руководство на машине с Ubuntu.

Подключитесь к серверу SMB с помощью Cloudflare One Client для туннелирования

С помощью Cloudflare Tunnel можно создать защищённое, исключительно исходящее соединение от вашего сервера к глобальной сети Cloudflare. Для этого нужно запустить cloudflared демон на сервере. Пользователи получают доступ к службе, установив Cloudflare One Client на своём устройстве и регистрации в вашей организации Zero Trust. Удалённые устройства смогут подключаться так, как если бы они находились в вашей частной сети. По умолчанию все устройства, зарегистрированные в вашей организации, могут обращаться к этой службе, если вы не создадите политики, разрешающие или блокирующие доступ для конкретных пользователей.

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

  1. В панели управления Cloudflare перейдите в Сеть > Tunnels.

    Перейдите в Tunnels ↗
  2. Создать новый туннель или отредактировать существующий cloudflared туннель.

  1. В панели управления Cloudflare перейдите в Сеть > Маршруты.

    Перейдите в Маршруты ↗
  2. Выберите Создать маршрут > Tunnel CIDR. Выберите только что созданный туннель, введите приватный IP-адрес или CIDR-адрес вашего сервера и выберите Создать маршрут.

  3. (Необязательно) Настройте политики Zero Trust чтобы точно настроить доступ к вашему серверу.

2. Настройте клиент

Чтобы подключить свои устройства к Cloudflare:

  1. Разверните Cloudflare One Client на ваших устройствах в режиме Traffic and DNS или создать конечную точку прокси и разверните файл PAC.
  2. Создать правила регистрации устройств чтобы определить, какие устройства могут регистрироваться в вашей организации Zero Trust.

3. Направьте IP-адреса частной сети через Cloudflare One Client

По умолчанию WARP исключает трафик, направленный на Пространство адресов RFC 1918, то есть IP-адреса, обычно используемые в частных сетях и недоступные из интернета. Чтобы Cloudflare One Client мог отправлять трафик в вашу частную сеть, необходимо настроить Split Tunnels чтобы трафик к IP-адресу/CIDR вашей частной сети направлялся через Cloudflare One Client.

  1. Сначала проверьте, ваш Режим Split Tunnels имеет значение Exclude или Включить режим.

  2. Измените маршруты Split Tunnel в зависимости от режима:

    Если вы используете Exclude режим:

    a. Удалите маршрут содержащий диапазон IP/CIDR вашей частной сети. Например, если в вашей сети используется диапазон AWS по умолчанию 172.31.0.0/16, удалите 172.16.0.0/12.

    b. Повторно добавить диапазоны IP/CIDR которые явно не используются вашей частной сетью. Для приведенного выше примера AWS вы бы добавили новые записи для 172.16.0.0/13, 172.24.0.0/14, 172.28.0.0/15, а также 172.30.0.0/16. Это гарантирует, что только трафик к 172.31.0.0/16 маршруты через Cloudflare One Client.

    Чтобы определить, какие IP-адреса нужно добавить повторно, можно воспользоваться следующим калькулятором:

    Инструкции для калькулятора

    1. В Базовый CIDR, введите диапазон RFC 1918, который вы удалили из Split Tunnels.
    2. В Вычтенные CIDR, введите диапазон IP/CIDR, используемый вашей приватной сетью.
    3. Повторно добавьте результаты калькулятора в список режима Exclude для Split Tunnel.

    Сужая диапазон частных IP-адресов, включенный в Cloudflare One Client, вы снижаете риск нарушить работу пользовательского доступ к локальным ресурсам.

    Если вы используете Включить режим:

    1. Добавьте необходимые Домены Zero Trust или IP-адреса в список включений Split Tunnel.
    2. Добавьте маршрут чтобы включить диапазон IP/CIDR вашей частной сети.

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

macOS

  1. В меню Finder выберите Go > Подключиться к серверу.

  2. Введите smb://<smb-server-ip-address>/sambashare.

    Подключитесь к серверу SMB в macOS
  3. Войдите, используя имя пользователя и пароль, созданные при настройке сервера.

Windows

  1. Откройте проводник и щёлкните правой кнопкой мыши Сеть > Подключить сетевой диск.
  2. Для Папка, введите \\<server-private-ip>\sambashare.
  3. Выберите Подключение с использованием других учётных данных.
  4. Выберите Готово.
  5. Войдите, используя имя пользователя и пароль, созданные при настройке сервера.

Подключитесь к серверу SMB с помощью cloudflared access

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

Метод публичного имени хоста можно использовать вместе с маршрутизацией через Cloudflare One Client, чтобы обеспечить несколько способов подключения к серверу. Вы можете использовать один и тот же туннель как для маршрутов приватной сети, так и для маршрутов публичного имени хоста.

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

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

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

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

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

  5. Для Сервис, выберите SMB и введите порт прослушивания SMB (например, localhost:445). Диски SMB прослушивают порт 139 или 445 по умолчанию.

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

По умолчанию к серверу через имя хоста опубликованного приложения может подключиться кто угодно в интернете. Чтобы разрешить или заблокировать конкретных пользователей, создайте приложение с самостоятельным хостингом в Cloudflare Access.

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

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

  2. Выполните следующую команду, чтобы открыть порт прослушивания SMB. Вы можете указать любой доступный порт на клиентской машине.

    cloudflared access tcp --hostname smb.example.com --url localhost:8445

    Эту команду можно оформить в виде ярлыка на рабочем столе, чтобы конечным пользователям не приходилось использовать командную строку.

  3. Откройте свой SMB-клиент и настройте клиент так, чтобы он указывал на smb://localhost:8445/sambashare. Не вводите имя хоста.

  4. Войдите, используя имя пользователя и пароль, созданные при настройке сервера.

Требования, специфичные для Windows

Если вы используете компьютер с Windows и не можете указать порт для SMB, возможно, потребуется отключить локальный сервер. Локальный сервер на клиентском компьютере использует тот же порт по умолчанию 445 для CIFS/SMB. Прослушивая этот порт, локальный сервер может блокировать cloudflare access подключение.

Чтобы отключить локальный сервер на компьютере с Windows:

  1. Выберите Win+R и откройте окно «Выполнить».
  2. Type services.msc и выберите Ввод.
  3. Найдите локальный серверный процесс, который обычно называется Server.
  4. Остановите службу и настройте Тип запуска к Отключено.
  5. Повторите шаги 3 и 4 для TCP/IP NetBIOS Helper.