Вопрос или проблема
У меня есть хост на Windows с IP-адресом 192.168.2.10 дома. Я настроил туннель Cloudflare “Zero Trust” для доступа к службам хоста из другого места, как в стандартной настройке VPN.
Эта машина подключена к дата-центру и будет иметь IPv4 адрес, который будет доступен напрямую из Интернета.
Я хочу, чтобы некоторые службы (порты) на хосте были напрямую доступны через этот адрес, выходящий в Интернет.
Для других служб я хочу, чтобы они были доступны только через этот туннель Cloudflare/VPN.
Например, порт 80 открыт для Интернета, порт 3306 доступен только через туннель CF.
Я думаю, если я смогу предоставить этой машине “локальный” IP 192.168.2.10 (такой же, как у меня дома), туннель и вся остальная конфигурация будут работать без изменений.
-
Мои ожидания верны?
-
Если да, как я могу дать этой машине мой старый внутренний IP, если у нее также есть совсем другой (доступный из Интернета) IP? Я считаю, это называется виртуальной сетью.
Я хочу сохранить адрес 192.168.2.10, потому что в туннеле есть другие компьютеры, которые его используют.
ОС: Windows Server 2022
Ответ или решение
Организация маршрутизации частного трафика через общественную сеть с учетом описанных условий – это задача, требующая внимательного подхода к вопросам сетевой безопасности и конфигурации. Рассмотрим основные аспекты и шаги, которые помогут вам в этом процессе.
Теория
В описанной вами ситуации основная цель заключается в разделении доступа к различным сервисам на вашем хосте. Вы хотите, чтобы определенные порты были доступны из интернета, в то время как другие оставались защищены и доступны только через туннель "Zero Trust" от Cloudflare. Давайте разберем основные понятия, которые здесь применяются.
Во-первых, маршрутизация частного трафика через общественную сеть обычно осуществляется с использованием технологий VPN и туннелирования. При этом внешний IP-адрес (интернет-адрес), используемый для доступа к некоторым сервисам, должен быть различен от внутреннего IP-адреса (например, 192.168.2.10), который используется для доступа к другим защищенным ресурсам.
Во-вторых, наличие двух разных IP-адресов может быть реализовано с помощью виртуальных сетей или двойной настройки сетевых интерфейсов, что позволит вашему серверу одновременно взаимодействовать как с внутренними, так и с внешними сетями.
Пример
Рассмотрим пример. У вас имеется Windows Server 2022, который находится под управлением как внутреннего IP – 192.168.2.10, так и нового внешнего IP из центра обработки данных. Для этого вам необходимо настроить сетевой интерфейс таким образом, чтобы он поддерживал оба этих IP-адреса.
Первое, что вам необходимо сделать, это добавить виртуальный сетевой адаптер на вашем сервере. На Windows Server это достигается с помощью команды PowerShell либо через интерфейс управления сетевыми подключениями. Затем вы сможете назначить вашему новому адаптеру IP-адрес уровня локальной сети (192.168.x.x).
Другим важным аспектом является настройка сетевых правил и маршрутизация. Этого можно достичь с помощью файервола Windows и правил NAT (Network Address Translation). Пример конфигурации может включать в себя разрешение определенного входящего трафика на порт 80 через внешний IP, при этом ограничивая доступ к порту 3306 только через туннель Cloudflare.
Применение
Теперь, когда есть общее понимание и пример, как можно настроить такую конфигурацию, перейдем к конкретным шагам реализации.
-
Настройка виртуального адаптера и второго IP-адреса:
- Зайдите в настройки вашей сети через Панель Управления.
- Добавьте новый виртуальный сетевой интерфейс, используя Hyper-V или другой инструмент виртуализации.
- Назначьте ему внутренний IP-адрес, такой как 192.168.2.10.
-
Конфигурация Cloudflare Tunnel:
- Убедитесь, что ваш Cloudflare "Zero Trust" туннель корректно настроен. Вам необходимо настроить политики доступа, которые ограничивают определенные сервисы, такие как 3306, для доступа только через туннель.
-
Настройка правил файервола Windows:
- Откройте ‘Windows Firewall with Advanced Security’ и создайте новые правила для входящего трафика.
- Разрешите все входящие подключения для порта 80 из внешнего интернет-адреса.
- Ограничьте входящие подключения для порта 3306, разрешив их только через Cloudflare Tunnel IP-адреса.
-
Валидация конфигурации:
- Проверьте ваши настройки, применяя тестирование из внешних сетей. Убедитесь, что порт 80 доступен, тогда как порт 3306 недоступен из внешней сети, но доступен через туннель.
Наконец, важно отметить, что конфигурации сетевых подключений и правил безопасности могут различаться в зависимости от конкретной топологии сети, используемого оборудования и системных настроек. Регулярно проверяйте и модернизируйте ваши настройки безопасности для обеспечения наилучшей защиты.