DD-WRT: предотвратить доступ к Интернету

Нажмите F10 , чтобы открыть меню, и с помощью клавиш со стрелками перейдите к «Параметры» → «Настроить Emacs» → «Соответствие всех настроек…». Введите мышь и введите .

Если ваша версия Emacs не имеет меню при работе в терминале, запустите M-x customize . (Это означает: нажмите Alt + X , введите настроить и нажмите Enter .) Перейдите в поле поиска, введите мышь и нажмите Введите .

Поддержка мыши называется «режимом мыши Xterm». Вы можете найти это в руководстве . В мануале также дается способ его включения (для текущего сеанса) - M-x xterm-mouse-mode .

В интерфейсе настройки для параметра, который вы хотите изменить, нажмите , введите в «Показать значение». Появится кнопка «Переключить», нажмите на ней , введите . Затем нажмите Введите в поле «Состояние» и выберите 0 для «Установить для текущего сеанса» или «1» для «Сохранить для будущих сеансов». (Вы можете выбрать 0 сейчас и вернуться туда и выбрать 1 позже, если вас устраивает настройка.)

1
27.10.2018, 18:10
1 ответ

Первая вещь:-Iозначает вставку в начале, т.е. добавление . Используйте от -Aдо и добавьте в конце. -Aможет не работать должным образом, если вы также не просмотрите другие правила iptables, которые, возможно, уже были установлены ранее. Итак, давайте продолжим использовать -I, но с увеличенным номером строки после выбора места для вставки и получения правил в обычном порядке.

Ваша проблема связана с обработкой правил с отслеживанием состояния . Поток conntrack — это NEWс первым пакетом. Любой ответный пакет не будет новым, а перейдет в состояние ESTABLISHED. Ваши правила допускают только состояния NEW, поэтому ничего не может работать правильно.

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

Сначала добавьте общие правила, которые разрешат ответ, а также соответствующие (например, :для udpошибок с icmpили для вспомогательных модулей, таких как ftpпакеты данных ), одно правило на направление. Эти правила не разрешают трафик в одиночку, потому что новый поток всегда NEW(, а не ESTABLISHEDилиRELATED)по определению. Таким образом, вам нужно будет заботиться только о NEWсостояниях(-m conntrack --ctstateзамененных -m state --state, поэтому вам лучше использовать его, если он доступен, иначе просто замените все эти строки обратно на-m state --state):

iptables -I FORWARD 1 -i br2 -o br0  -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -I FORWARD 2 -i br0 -o br2  -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

Теперь вы можете иметь дело с (только )новыми потоками:
Обратите внимание, что предыдущее правило и следующее правило могут быть объединены только в одно правило со всеми тремя состояниями или вообще без проверки состояния, поскольку это всегда будет одно из этих трех состояний (хорошо, кроме НЕДЕЙСТВИТЕЛЬНОГО)

iptables -I FORWARD 3 -i br0 -o br2 -m conntrack --ctstate NEW -j ACCEPT
iptables -I FORWARD 4 -i br2 -o br0 -d 192.168.1.38 -p tcp --dport 1883 -m conntrack --ctstate NEW -j ACCEPT
iptables -I FORWARD 5 -i br2 -j DROP

Что касается вашего последнего вопроса, я сомневаюсь, что то, что вы написали, разрешит доступ в Интернет, потому что Интернет, вероятно, может быть недоступен на интерфейсе br0. Он будет доступен на интерфейсе с общедоступным IP-адресом. Это должно работать, не зная, какой это интерфейс, просто не заявляя, что он (запускается после предыдущих команд, или соответствующим образом меняет порядок номеров.iptables-saveиiptables-restoreваши друзья):

iptables -I FORWARD 5 -o br2 -d 192.168.7.5 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -I FORWARD 6 -i br2 -s 192.168.7.5 -m conntrack --ctstate NEW -j ACCEPT

Но недостающая информация, добавленная в вопросе, наверняка помогла бы:ip -br link; ip -4 -br address; ip route;ip rule(и, возможно,iptables-save). Тогда правила, вероятно, можно было бы сделать более общими без снижения безопасности.

UPDATE:macсоответствует MAC-адресу.

Вместо IP-адреса можно сопоставить MAC-адрес. Эта информация может использоваться только как источник и имеет смысл только в правильной сети. Поэтому -o br2нельзя использовать для сопоставления с MAC.Давайте просто заменим правило 5 выше более общим (, которое по-прежнему подходит для безопасности ). Используя -Rна замените правила 5 и 6 выше, отрегулируйте (снова:iptables-saveудобно):

iptables -R FORWARD 5 -o br2 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -R FORWARD 6 -i br2 -m mac --mac-source 02:03:04:05:06:07 -m conntrack --ctstate NEW -j ACCEPT

И в итоге получается:

iptables -I FORWARD 1 -i br2 -o br0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -I FORWARD 2 -i br0 -o br2 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -I FORWARD 3 -i br0 -o br2 -m conntrack --ctstate NEW -j ACCEPT
iptables -I FORWARD 4 -d 192.168.1.38/32 -i br2 -o br0 -p tcp -m tcp --dport 1883 -m conntrack --ctstate NEW -j ACCEPT
iptables -I FORWARD 5 -o br2 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -I FORWARD 6 -i br2 -m mac --mac-source 02:03:04:05:06:07 -m conntrack --ctstate NEW -j ACCEPT
iptables -I FORWARD 7 -i br2 -j DROP

Пятый является надмножеством второго только потому, что, вероятно, в правило должен быть добавлен интерфейс WAN, но я этого не знаю.

1
28.01.2020, 00:30

Теги

Похожие вопросы