Я объясню свою проблему как можно лучше.
У меня есть роутер. Люди могут подключиться к моему маршрутизатору, и когда соединение будет установлено, я хочу, чтобы они увидели веб-страницу, где они могут управлять другим устройством. Веб-страница является локальной на Raspberry Pi и уже функционирует, я просто не хочу, чтобы пользователи переходили на 192.168.1.245, поскольку это не очень удобно для пользователя.
Как я уже сказал, веб-страница доступна, только если вы подключены к сети Wi-Fi. Я читал кое-что о пленных порталах (с собакой Wi-Fi), но им нужен сервер аутентификации, это правда? (которого у меня нет, и у меня нет ни опыта, ни времени для настройки этого сервера) Я использую OpenWRT на маршрутизаторе.
Моя цель - предоставить доступ только к одной веб-странице и ограничить доступ к Интернету для всех остальных. Но я абсолютно не знаю, как к этому подойти. (Я установил OpenWRT на TP-Link AC1750) Мне все еще нужно подключение к Интернету, так как мне нужно SSH в Raspberry Pi.
У меня очень мало опыта в сетевой инженерии, и я очень отчаялся.
После некоторого googline я попробовал эти iptables в моем брандмауэре:
iptables -P FORWARD ACCEPT
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -s 192.168.1.1 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
iptables -P INPUT DROP # Drop everything we don't accept
iptables -A INPUT -s 192.168.1.252 -j ACCEPT
iptables -A OUTPUT -d 192.168.1.252 -j ACCEPT
iptables -A INPUT -s 192.168.1.1 -j ACCEPT
iptables -A OUTPUT -d 192.168.1.1 -j ACCEPT
iptables -P INPUT DROP
iptables -P OUTPUT DROP
Результат, который я ожидаю:
Блокировать все адреса, кроме 192.168.1.1
и .252
Принимать входящие SSH-соединения через Ethernet
Результат, который я получил: заблокировал все адреса, кроме 192.168.1.252
(панель конфигурации недоступна). Заблокированные соединения SSH через Ethernet. Больше не могу подключиться к маршрутизатору через Wi-Fi. (Мой ноутбук может быть, так как я уже был подключен или что-то?)
Когда я отправляю ping на 252
я получаю ответы, когда я проверяю ping на 192.168.1.1
я получаю ответ на тайм-аут (так что он сброшен?) и когда я пингую любой другой адрес в сетевой маске (192.168.1.xxx
), я получаю недоступный. (так это отклонено?)