1

Я пытаюсь спроектировать гостевую сеть Wi-Fi для моей существующей сети, но я не уверен, как защитить гостевую точку доступа Wi-Fi от родительской сети, когда точка доступа содержится в родительской сети.

Я попытался найти это, но я просто получаю результаты от потребительского оборудования, которое говорит "щелкните эту конфигурацию" и, как правило, предполагает, что основной маршрутизатор также является точкой доступа Wi-Fi, что значительно упрощает логическое разделение.

              +----------+
              | Internet |
              +----+-----+
                   |
                   |
           +-------+------+
           | Linux Router |   10.0.0.0/24
+----------+              +--------------+
|          |   10.0.0.1   |              |
|          +-------+------+              |
|         Device A - 10.0.0.5            |
|                                        |
| Linux Guest Wifi Router - 10.0.0.200   |
|       +                                |
|       |                                |
+----------------------------------------+
        |
        |
        |   Guest Subnet 10.0.1.0/24
   +----+--------------------------+
   |                               |
   |  Guest Device X - 10.0.1.5    |
   |                               |
   +-------------------------------+

Основной маршрутизатор - это Linux-карта с двойной сетевой картой (ext/int) (Debian 7 с iptables) и ничего более. Гостевая точка доступа Wi-Fi будет хрупким PI, который я заказываю, и я предполагаю, что необходимая конфигурация будет содержаться в гостевой коробке Wi-Fi.

Но я не уверен, как настроить iptables(nftables?) на PI, чтобы гарантировать, что родительская сеть недоступна, за исключением маршрутизации через Интернет.

  • Как "Гостевое устройство X" попадает в шлюз главного маршрутизатора (10.0.0.1), когда ему отказано в доступе к устройству А (10.0.0.5).
  • Как я узнаю, что основной маршрутизатор не собирается отправлять запросы на 10.0.0.5 обратно в подсеть 10.0.0.0/24? Нужно ли мне настроить iptables на главном роутере для работы в паре с роутером wifi?

Желаемые результаты от 10.0.1.5:

  • $ ping 10.0.0.5 - пункт назначения недоступен / нет маршрута к хосту и т. д.
  • $ ping 8.8.8.8 - ОК
  • $ ping 10.0.0.1 - (при условии, что ОК?)
  • $ ping 10.0.0.200 - Неизвестно?

Обсуждение альтернативного потенциального решения ниже:

  • Одним из предложений было сделать второй IP-адрес на главном маршрутизаторе и настроить гостевой Wi-Fi на этот IP-адрес. Итак, я посмотрел документы и нашел это:

Это сделало бы вещи похожими на это:

Internet
  |
Linux Router
(eth1 10.0.0.1) (eth1:1 10.0.1.1)
  |                  |
Reg Network        Guest Wifi Router (10.0.1.2)
    (DHCP)           |
                   Guest Device (10.0.?.?)

Так что я не уверен в некоторых вещах на данный момент

  1. Как настроить таблицу маршрутизации основного маршрутизатора для предотвращения трафика из подсети с 10.0.1.1 по 10.0.0.0/24? Или это правило iptables на главном маршрутизаторе в данный момент? Я не уверен, что вижу, как это отличается от наличия гостевого Wi-Fi-маршрутизатора на 10.0.0.0/24, поскольку основной маршрутизатор все еще сможет маршрутизировать другие устройства в этой сети?)
  2. Я предполагаю, что гостевой маршрутизатор Wi-Fi будет нуждаться в сервере DHCP для гостевых устройств. Но будут ли гостевые устройства использовать подсеть 10.0.1.0/24 с 10.0.1.1 в качестве шлюза, или я настрою другую подсеть 10.0.2.0/24 для гостевых устройств?

1 ответ1

0

Резюме ситуации, чтобы проверить, правильно ли я понял:

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

Краткая схема возможного решения:

Единственный способ обеспечить безопасную работу - это дать знать главному маршрутизатору о наличии двух сетей и правильно разделить их с помощью правил iptables . Таким образом, вы хотите, чтобы ваш основной маршрутизатор видел два сетевых интерфейса: один с 10.0.0.0/24 для частного сегмента и один с 10.0.0.1/24 для гостевого сегмента. Я предполагаю, что вы знаете, как настроить основной маршрутизатор с учетом комментариев.

Это означает, что соединение от гостевой точки доступа (RaspPi) к основному маршрутизатору должно использовать некоторый туннель. Самым простым вариантом будет VLAN, которая "перекрывает" (возможно, несколько) виртуальные локальные сети в вашей частной локальной сети.

Конкретно, добавьте и на RaspPi, и на Debian box виртуальный сетевой интерфейс с чем-то вроде

ip link add link eth0 name eth0.55 type vlan id 55.

(выберите тег VLAN), затем используйте и настройте eth0.55 как обычный сетевой интерфейс. После того, как это сработает, вы можете адаптировать /etc/network/interfaces для автоматического запуска.

редактировать

Для брандмауэра вам понадобятся правила iptables которые не позволяют интерфейсам eth0 и eth0.55 друг с другом, что-то вроде

#!/bin/bash
PRIVIF=eth0
GUESTIF=eth0.55
iptables -P FORWARD ACCEPT
iptables -F FORWARD
iptables -A FORWARD -i $PRIVIF -o $GUESTIF -j DROP
iptables -A FORWAD -i $GUESTIF -o $PRIVIF -j DROP

(Непроверенные). Или сделайте его еще более безопасным с помощью политики пересылки по умолчанию DROP, а затем перечислите всю переадресацию, которую вы разрешаете, сохраняя при этом функциональность NAT маршрутизатора (если он есть).

Существует множество онлайн-уроков по брандмауэрам и iptables , просто выберите тот, который вам нравится больше всего.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .