Вопрос или проблема
Я перенес веб-приложение из облака на кластер Raspberry Pi в своем подвале. Сеть выглядит следующим образом:
Кластер подключен к коммутатору TL-SG1016DE. Я установил балансировщик нагрузки Kemp на гипервизор QEMU/KVM на ноутбуке (настроенном как мост), который перенаправляет трафик, исходящий от шлюза на порт 443, на веб-сервер на k3s.
Я хочу изолировать все устройства, связанные с веб-сервером, от остальной сети, чтобы ограничить воздействие в случае нарушения безопасности веб-сервера. В моем коммутаторе есть такое конфигурационное окно:
Но я не понимаю конфигурацию VLAN 802.1Q. Если я отмечу все устройства веб-сервера на VLAN-2, но уберу их отметку или исключу из VLAN-1, мое веб-приложение станет недоступным. Скажем, я хочу изолировать устройства на портах 12-16 от остальной сети.
Как мне настроить коммутатор?
Нужно ли мне настраивать сеть на устройствах тоже?
Если я отмечу все устройства веб-сервера на VLAN-2, но уберу их отметку или исключу из VLAN-1, мое веб-приложение станет недоступным. Скажем, я хочу изолировать устройства на портах 12-16 от остальной сети.
Если вы это сделаете, вы действительно изолируете эти порты от основной сети – проблема в том, что вы также изолируете их от маршрутизатора (который все еще находится в VLAN 1), поэтому естественно, что они становятся недоступными.
Но также правильной настройкой для этих серверов обычно будет неотмеченный порт (т.е. VLAN 1 не член, VLAN 2 неотмеченный). Как “отмеченные”, так и “неотмеченные” порты являются портами-членами; отличие в том, что “отмеченный” буквально вставляет тег VLAN 802.1Q в заголовок Ethernet, который подключенное устройство должно понимать и генерировать.
Таким образом, в целом только порт, обращенный к вашему маршрутизатору, должен иметь дополнительные VLAN в качестве отмеченных. В идеале вам нужен маршрутизатор, совместимый с 802.1Q, который позволит вам создавать виртуальные Ethernet-интерфейсы “отмеченного VLAN” через его физические порты, позволяя ему отправлять/принимать трафик нескольких VLAN с коммутатора через один кабель – порт “trunk”.
Затем вам нужно будет настроить маршрутизатор с 2-й IP-подсетью для нового интерфейса “VLAN 2” и настроить правила брандмауэра на маршрутизаторе, чтобы разрешить подсети VLAN 2 связываться с Интернетом, но не с подсетью VLAN 1.
(Также относительно часто используют отмеченные VLAN с гипервизорами; гипервизор обрабатывает маркировку 802.1Q для трафика каждого VLAN, позволяя некоторым виртуальным машинам быть изолированными от других. Реже для обычных серверов и еще реже для рабочих станций, но не невозможно.)
Ответ или решение
Чтобы изолировать несколько устройств на локальной сети (LAN), первым делом необходимо настроить VLAN (Virtual Local Area Network) на вашем коммутаторе TL-SG1016DE. Данная задача может показаться сложной, особенно если вы ранее не имели опыта работы с технологией 802.1Q. Тем не менее, с правильным подходом вы сможете эффективно изолировать ваши устройства.
1. Понимание терминологии и концепций
VLAN: Это логическое разделение сети, позволяющее группировать устройства вне зависимости от их физического расположения. Каждому VLAN присваивается уникальный идентификатор (ID), и устройства, входящие в один VLAN, могут обмениваться данными напрямую, тогда как устройства в разных VLAN – нет.
Tagged и Untagged порты:
- Tagged (помеченные) порты должны поддерживать VLAN и могут передавать трафик нескольких VLAN одновременно, добавляя к каждому кадру информацию о VLAN. Это особенно необходимо для портов, соединяющих коммутатор с маршрутизатором.
- Untagged (непомеченные) порты соответствуют только одному VLAN и не требует обработки трафика с пометками VLAN. Обычно, устройства без поддержки VLAN подключаются к непомеченным портам.
2. Настройка VLAN на коммутаторе
Ваша цель — изолировать устройства, подключенные к портам с 12 по 16, от остальной сети. Для этого выполните следующие шаги:
-
Создайте VLAN 2: В интерфейсе коммутатора убедитесь, что вы создали новый VLAN с ID 2. Обычно это выполняется через меню VLAN.
-
Настройка портов:
- Порты 12, 13, 14, 15 и 16: Настройте эти порты как непомеченные (Untagged) для VLAN 2. Это значит, что все устройства, подключенные к этим портам, будут находиться в VLAN 2 и смогут общаться друг с другом.
- Порты, которые соединены с маршрутизатором: Оставьте их как помеченные (Tagged) для VLAN 1 и добавьте их в VLAN 2 тоже (если ваш маршрутизатор поддерживает работу с несколькими VLAN). Это разрешит маршрутизатору обрабатывать трафик из обоих VLAN.
-
Настройка интерфейса маршрутизатора: Убедитесь, что ваш маршрутизатор настроен для обработки трафика с обоих VLAN. Вам нужно создать виртуальный интерфейс для VLAN 2 с другим подсетевым адресом.
3. Настройка IP на устройствах
Каждое устройство в VLAN 2 должно быть настроено на использование IP-адресов из новой подсети. Например, если база VLAN 1 имеет подсеть 192.168.1.0/24, вы можете настроить VLAN 2 на 192.168.2.0/24. Не забудьте установить шлюз для подключения к интернету через маршрутизатор.
4. Настройка правил безопасности на маршрутизаторе
Важно, чтобы вы настроили правила брандмауэра на маршрутизаторе, ограничивающие доступ между VLAN 1 и VLAN 2. Это позволяет защитить ваши устройства в VLAN 2 от потенциальных угроз из основной сети.
Заключение
Следуя вышеуказанным шагам, вы сможете успешно изолировать устройства вашего веб-сервера от остальной части сети. Настройка VLAN на вашем коммутаторе TL-SG1016DE и правильная конфигурация маршрутизатора создадут надежный контур безопасности сети. Помните, что управление VLAN-ами требует детального понимания сетевых протоколов, поэтому уделяйте внимание каждой детали, чтобы избежать возможных ошибок.