Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Общий по Linux (http://forum.oszone.net/forumdisplay.php?f=9)
-   -   IPtables - при изменении политики входящего подключения не работают исходящие (http://forum.oszone.net/showthread.php?t=351623)

__sa__nya 28-07-2022 09:28 2989344

IPtables - при изменении политики входящего подключения не работают исходящие
 
Доброе время суток. Ubuntu 20.04 Server. Меняю политику входящих подключений с ACCEPT на DROP. Политика исходящих подключений - ACCEPT. После изменения не работают исходящие подключения. Связи с чем это связано ?
Я ориентируюсь на логику Windows-систем. Там, если входящие подключения по умолчанию запрещены, а исходящие разрешены - то соответственно, комп может делать любое исходящее соединение и получать ответ на него. В Linux видимо не так ?

NickM 28-07-2022 10:32 2989346

А что делаете с этими состояниями ESTABLISHED, RELATED?
Тоже дропаете?

__sa__nya 28-07-2022 11:27 2989348

Цитата:

Цитата NickM
А что делаете с этими состояниями ESTABLISHED, RELATED?
Тоже дропаете? »

Эти состояния вообще не менял.
Т.е., что у меня происходит.
Очистил все настройки iptables. После перезагрузки вывод Iptables --line-number -L -v -n такой:
Цитата:

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destina tion

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destina tion

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destina tion

Т.е. в цепочках пусто, все исходящие и входящие работают.
Хочу чтобы по умолчанию входящие были закрыты, меняю для Input ACCEPT на DROP:
iptables -P INPUT DROP
После этого исходящие отваливаются.
При этом, что интересно когда я в цепочку INPUT добавляю разрешающе правило на ping - комп начинает пинговаться, НО даже если я в цепочку OUTPUT прописываю исходящее правило, на ping - комп по прежнему никого пинговать не может.

NickM 28-07-2022 12:11 2989349

Попробуйте так, в INPUT:
Код:

-P ACCEPT
-f -j DROP
-m state --state ESTABLISHED,RELATED -j ACCEPT
-j DROP


__sa__nya 03-08-2022 14:39 2989676

NickM, был занят сильно другими заданиями. Возвращаюсь к теме. Так если поменять политику на ACCEPT по умолчанию - значит все входящие будут допускаться ? - 1-я строчка в вашем коде.

NickM 03-08-2022 16:06 2989680

Цитата:

Цитата __sa__nya
Так если поменять политику на ACCEPT по умолчанию - значит все входящие будут допускаться ? - 1-я строчка в вашем коде. »

Цитата:

Цитата NickM
-P ACCEPT »

Нет, не совсем так.
Первая строка разрешает передачу цели по цепочке, где применяются правила.
Если соответствий правилам не было, последняя строка отбрасывает все цели.

__sa__nya 04-08-2022 07:13 2989699

Цитата:

Цитата NickM
Первая строка разрешает передачу цели по цепочке, где применяются правила. »

Разве первая строчка не меняет политику цепочки INPUT на ACCEPT по умолчанию ?

NickM 04-08-2022 07:36 2989700

Цитата:

Цитата __sa__nya
Разве первая строчка не меняет политику цепочки INPUT на ACCEPT по умолчанию ? »

Вы можете проверить это у Себя на файрволле.

__sa__nya 04-08-2022 10:05 2989706

NickM, сделал. Команды:
iptables -P INPUT ACCEPT
iptables -A INPUT -f -j DROP
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -j DROP
Сейчас ситуация, что точно пускает ping, хотя явного разрешающего правила нет. Почему так ?

NickM 04-08-2022 10:22 2989707

Цитата:

Цитата __sa__nya
iptables -P INPUT ACCEPT »

Код:

iptables -A INPUT -P ACCEPT

__sa__nya 04-08-2022 12:48 2989716

Цитата:

Цитата __sa__nya
Сейчас ситуация, что точно пускает ping, хотя явного разрешающего правила нет. Почему так ? »

А сейчас не пускает... Видимо активная сессия была на момент применения команд, и ее не рубануло сразу ?

NickM 04-08-2022 13:09 2989718

Цитата:

Цитата __sa__nya
Видимо активная сессия была на момент применения команд, и ее не рубануло сразу? »

После изменения правил файрволла, полезным бывает перезапускать сетевые интерфейсы.
Но Вам, сначала, надо увидеть разницу в приведённых и введённых правилах.

__sa__nya 27-08-2022 13:38 2991168

Здравствуйте. Вернулся к по-прежнему актуальной для меня теме.

Цитата:

Цитата NickM
Цитата __sa__nya:
iptables -P INPUT ACCEPT »
Код:
iptables -A INPUT -P ACCEPT »

- Не работает такая команда:


как вставить картинку на сайт

__sa__nya 31-08-2022 14:48 2991439

NickM, можете мне объяснить суть команды "iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT " ? Я по описанию понял что она нужна для соединений ESTABLISHED, RELATED, но, как написано в справке, например здесь:

Цитата:

ESTABLISHED — соединение установлено, пришел уже не первый пакет в рамках этого сеанса. При правильной настройке iptables — такие пакеты проходят по системе без фильтрации, поскольку она уже была выполнена для первого пакета соединения;
Т.е., я понял это так, что если правила правильно настроены, то без этой команды никуда. Я не смог настроить с помощью тех команд которые вы прислали, т.к. после них по-прежнему нет исходящих соединений. Вернулся обратно к тому, что поставил политику для INPUT в DROP. Далее, как я понимаю, чтобы правильно все заработало, мне нужно для каждого, нужного исходящего соединения на серверер, прописать правило для входящего соединения ( когда сервер получает ответ, чтобы этот ответ не отбрасывался). Вопрос: как это сделать ? Например, как сделать соединения для возможности исходящих соединений для DNS, ping, http, https ?

NickM 01-09-2022 21:04 2991557

Цитата:

Цитата __sa__nya
можете мне объяснить суть команды »

Объяснять Своими словами наверное не стоит, а прочитать, о том, что писал чуть выше можно, например, здесь.

Отмечу, что у Себя использую отличную от указанной в сабже системы и в Моём случае все правила iptables статичные и лежат/ настраиваются через файлы, а не ввод команд.

__sa__nya 05-09-2022 09:41 2991790

Цитата:

Цитата NickM
Объяснять Своими словами наверное не стоит, а прочитать, о том, что писал чуть выше можно, например, здесь. »

- Ясно. Пойду учиться :-)
Про настройку через файлы. Я сейчас просто имею нулевой опыт в Linux'е. И, как говорится - какую справку нашел, по такой и пробую :-). Но буду иметь ввиду что через файлы можно.

__sa__nya 08-09-2022 12:34 2992078

Решил вопрос следующим образом.
1. Меняю политику по умолчанию в цепочке INPUT с ACCEPT на DROP: iptables --policy INPUT DROP
2. Делаю правило разрешения соединений с состояниями established, related: iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
3. Для каждого неработающего исходящего подключения, делаю разрешающее правило входящего подключения. Например, для успешного получения компом ДНС-запросов делаю:

Iptables -A INPUT -p tcp --dport 53 -j ACCEPT
Iptables -A INPUT -p udp --dport 53 -j ACCEPT
И т.д. по другим соединениям. Исходящие http и https например работают сразу.
4. Сохраняю правила.
Apt install iptables-persistent
Service netfilter-persistent save

После этой настройки все на сервере работает как мне надо.


Время: 16:16.

Время: 16:16.
© OSzone.net 2001-