PDA

Показать полную графическую версию : Правильная настройка iptables


Страниц : [1] 2

NickM
06-12-2023, 09:44
Уважаемые, приветствую!

Что-то не могу осилить настройку iptables для следующей задачи :sorry:

Задача состоит в том, что бы переложить раздачу IP на eth2 самим сервером, а не роутером, т.к. на роутере DHCP отсутствует, и что бы клиенты 192.168.1.х выходили в сеть под Своим IP.

Дано:
- 3 сетевых;
- DHCP, SAMBA-DC с внутренним DNS на сервере;
- eth0: IP сетевой - 192.168.1.2, к сетевой подключён роутер с IP 192.168.1.1 и обеспечивает выход в сеть Интернет;
- eth1: IP сетевой - 192.168.10.1, маскарадинг для клиентов с выходом в сеть Интернет и на сетевой работает DHCP ;
- eth2: IP сетевой - 192.168.1.3, здесь предполагается раздача адресов для клиентов с помощью DHCP сервера из 192.168.1.х сети;

Сейчас имеется доступ к сети Интернет у клиентов 192.168.10.х, т.к. настроен маскарадинг на сервере.

У клиентов 192.168.1.х никакого доступа сейчас нет :o , но IP от DHCP получают исправно.

В данный момент правила такие-простые:
iptables-save
# Generated by iptables-save v1.8.7 on Wed Dec 6 11:15:33 2023
*mangle
:PREROUTING ACCEPT [675:43736]
:INPUT ACCEPT [609:39365]
:FORWARD ACCEPT [46:2124]
:OUTPUT ACCEPT [744:93924]
:POSTROUTING ACCEPT [788:95912]
COMMIT
# Completed on Wed Dec 6 11:15:33 2023
# Generated by iptables-save v1.8.7 on Wed Dec 6 11:15:33 2023
*nat
:PREROUTING ACCEPT [35:3163]
:INPUT ACCEPT [12:752]
:OUTPUT ACCEPT [53:3988]
:POSTROUTING ACCEPT [44:3387]
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Wed Dec 6 11:15:33 2023
# Generated by iptables-save v1.8.7 on Wed Dec 6 11:15:33 2023
*filter
:INPUT ACCEPT [68:5048]
:FORWARD ACCEPT [5:268]
:OUTPUT ACCEPT [54:4039]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -f -j DROP
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -f -j DROP
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -f -j DROP
COMMIT

Cereal Keeler
06-12-2023, 14:00
А вам точно нужен двойной NAT? Ну всмысле, сегментировать сеть, хотя роутер, как я понял, у вас один.

NickM
06-12-2023, 16:11
А вам точно нужен двойной NAT? »
Количество IP в сети 192.168.1.х ограничено, поэтому часть клиентов прячем за NAT (это 192.168.10.х), а часть оставляем с адресами сети роутера (это 192.168.1.х).

dmitryst
06-12-2023, 16:43
NickM, а как вы определите, кому какой адрес положен? ;)

Cereal Keeler
06-12-2023, 16:49
Количество IP в сети 192.168.1.х ограничено »
Кем ограничено? Что мешает расширить сеть до /23 (192.168.0.0 - 192.168.1.255)? Или даже /22 (192.168.0.0 - 192.168.3.255)?

dmitryst
06-12-2023, 19:07
Cereal Keeler, угу, можно и до /16 расширить, но у ТС непонятное ТЗ, непонятно, по какому принципу произведено деление на сегменты, и зачем такое деление нужно.
eth0 соединить с рутером (неважно, какой адрес присвоить), вторую карту подключить к коммутатору и назначить, например, 192,168,0,1/16, пусть клиенты получают адреса по DHCP. Можно настроить привязку к МАС-адресам для "особо важных клиентов", и настроить им особые параметры доступа в интернет, если надо. Третья карта, как мне кажется, вообще лишняя.

NickM
06-12-2023, 19:14
NickM, а как вы определите, кому какой адрес положен? »
Здесь не понял, что именно определить? Или Вы про DHСP? Если про него, то DHCP работает на той или иной сетевой и он "понимает" на какой сетевой какой раздавать диапазон (с DHCP проблем нет, он настроен и работает, проблема с маршрутами, думаю тут нужно SNAT/ DNAT смотреть и FORWARD);

Кем ограничено? »
Провайдером ))
Просто для простоты понимания, написал сочетание слов "на роутере DHCP отсутствует" и указал простую локальную адресацию "192.168.1.х ";

но у ТС непонятное ТЗ, непонятно, по какому принципу произведено деление на сегменты, и зачем такое деление нужно. »
А, что не понятно? Могу уточнить.

Провайдер выдал ограниченное количество IP и требует выход каждого АРМ под IP из выданного диапазона. При этом на устройстве провайдера (роутере) отсутствует DHCP.

Самое простое - это всех спрятать за NAT на сервере, и это уже сделано и сейчас работает (это клиенты сети 192.168.10.х), но нужно, что бы часть АРМ получала IP из диапазона провайдера и выходила под этими адресами в сеть Интернет.

dmitryst
06-12-2023, 19:18
требует выход каждого АРМ под IP из выданного диапазона »
именно требует? Если все клиенты будут использовать один адрес - это нарушение? Если нет, то
всех спрятать за NAT на сервере »

NickM
06-12-2023, 19:33
именно требует? Если все клиенты будут использовать один адрес - это нарушение? »
Смертью конечно не карается, но нужно сделать именно так, как написано выше :read:

Если нет, то »
и это уже сделано и сейчас работает (это клиенты сети 192.168.10.х) »

dmitryst
07-12-2023, 10:45
Смертью конечно не карается »
почитал вчера документацию по pf, вроде что-то видел, но не то. Может, сделать так:

основная сеть 192,168,1,0/24 - рутер и eth0
сеть с NAT 1 - 10.10.10.0/24 - eth1
сеть с NAT 2 - 10.10.20.0/24 - eth2

При этом все клиенты будут получать адрес из нужного диапазона, точнее, два адреса типа 192.168.1.4 и 192.168.1.5. Так прокатит?

bredych
08-12-2023, 15:30
все клиенты будут получать адрес из нужного диапазона, точнее, два адреса типа 192.168.1.4 и 192.168.1.5. »
как это, каждый клиент по 2 ипа? А по какому он будет отвечать?

dmitryst
08-12-2023, 17:59
bredych, нет, из первой подсети все клиенты будут получать адрес для ната 192.168.1.4, из второй- соотв, 192.168.1.5. Т. е один адрес для натирования всех в первой подсети, второй - для второй. Бред, конечно, но уж что есть :jester:

bredych
11-12-2023, 01:28
наверно я жутко туплю, но..
интерфейс физически у каждого клиента ведь один - сетевушка встроенная. И кабель тот же самый, в неё вставленный.
А как на одном физическом повесить 2 виртуальных с разными ипами, и чтоб еще комп знал, кому что отвечать.. Ну, допустим, на каждом еще править роутинговую таблицу.. хоть тогда зачем вообще dhcp..
что-то туплю я.. можно как в школе логику пояснить? Для системности понимания

dmitryst
11-12-2023, 08:24
bredych, на "сервере" 3 (три!) сетевых, каждая со своим диапазоном адресов (непересекающихся)

рутер и его подсеть 192,168,1,0/24
сеть клиентов №1 (НАТится вся сеть в один адрес 192,168,1,100 например)
сеть клиентов №2 (НАТится вся сеть в один адрес 192,168,1,200 например)

Как-то так...

bredych
11-12-2023, 18:34
на "сервере" 3 (три!) сетевых, »
но клиенты из сети 2 и сети 3 - это НЕ одни и те же физические машины? Они висят на разных физически кабелях и т.д.?
или я туплю опять?

dmitryst
11-12-2023, 20:56
клиенты из сети 2 и сети 3 - это НЕ одни и те же физические машины? Они висят на разных физически кабелях и т.д.? »
вроде как. Но лучше уточнить у NickM, мало ли.

NickM
12-12-2023, 06:18
но клиенты из сети 2 и сети 3 - это НЕ одни и те же физические машины? »
Нет, это разные сети и клиенты:
- eth1: IP сетевой - 192.168.10.1, маскарадинг для клиентов с выходом в сеть Интернет и на сетевой работает DHCP ;
- eth2: IP сетевой - 192.168.1.3, здесь предполагается раздача адресов для клиентов с помощью DHCP сервера из 192.168.1.х сети; »
лучше уточнить у NickM »
Количество IP в сети 192.168.1.х ограничено, поэтому часть клиентов прячем за NAT (это 192.168.10.х), а часть оставляем с адресами сети роутера (это 192.168.1.х). »
Это разные сети= разные физические машины;

сеть с NAT 1 - 10.10.10.0/24 - eth1
сеть с NAT 2 - 10.10.20.0/24 - eth2 »
NAT не нужен, т.к.:
выход каждого АРМ под IP из выданного диапазона. »

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

Да, вопрос пока открытый, задачу так и не решил.

shisik
12-12-2023, 07:02
NickM, я не понял чего вы вообще добиваетесь. Из вашего описания

- eth1: IP сетевой - 192.168.10.1, маскарадинг для клиентов с выходом в сеть Интернет и на сетевой работает DHCP ;
- eth2: IP сетевой - 192.168.1.3, здесь предполагается раздача адресов для клиентов с помощью DHCP сервера из 192.168.1.х сети; »

следует, что задача уже и так выполнена

Сейчас имеется доступ к сети Интернет у клиентов 192.168.10.х, т.к. настроен маскарадинг на сервере.
У клиентов 192.168.1.х никакого доступа сейчас нет , но IP от DHCP получают исправно. »

Потому что про доступ в Интернет вы упоминаете только в 192.168.10.х, а в 192.168.1.х его выходит и не должно быть. Иначе почему это требование упоминается только в 1 подсети? Сформулируйте задачу полностью и может быть выяснится, что вам вообще не нужны 2 подсети. Ну или обоснуйте необходимость этого. Я пока не понимаею чего вам нужно, может это вообще типичная XY

NickM
12-12-2023, 07:29
Потому что про доступ в Интернет вы упоминаете только в 192.168.10.х, а в 192.168.1.х его выходит и не должно быть »
и что бы клиенты 192.168.1.х выходили в сеть под Своим IP. »

Я пока не понимаею чего вам нужно »
Задача состоит в том, что бы переложить раздачу IP на eth2 самим сервером, а не роутером, т.к. на роутере DHCP отсутствует, и что бы клиенты 192.168.1.х выходили в сеть под Своим IP. »

Что именно не понятно?

Раздать IP и предоставить выход в сеть Интернет, NAT не использовать.

NickM
12-12-2023, 08:10
Раз третья сетевая и NAT вносят сумятицу, давайте избавимся от них:
Дано:
- 2 сетевых;
- DHCP, SAMBA-DC с внутренним DNS на сервере;
- eth0: IP сетевой - 192.168.1.2, к сетевой подключён роутер с IP 192.168.1.1 и обеспечивает выход в сеть Интернет;
- eth2: IP сетевой - 192.168.1.3, здесь предполагается раздача адресов для клиентов с помощью DHCP сервера из 192.168.1.х сети;

Задача состоит в том, что бы переложить раздачу IP на eth2 самим сервером, а не роутером, т.к. на роутере DHCP отсутствует, и чтобы клиенты 192.168.1.х выходили в сеть Интернет под своим IP.

Перепробовав кучу настроек, Я уже запутался, вопросы:
- какой IP будет шлюзом для клиентов 192.168.1.х сети;
- просматривая с помощью tcpdump те или иные интерфейсы на сервере, Я, например, вижу, что диагностические пакеты приходят, но ответов клиент не получает.

Легкая с виду задача сломала мозг. Понятно, что знаний в теме абсолютно не хватает, точнее их ноль.

В данный момент правила такие:
iptables-save
# Generated by iptables-save v1.8.7 on Wed Dec 6 11:15:33 2023
*mangle
:PREROUTING ACCEPT [675:43736]
:INPUT ACCEPT [609:39365]
:FORWARD ACCEPT [46:2124]
:OUTPUT ACCEPT [744:93924]
:POSTROUTING ACCEPT [788:95912]
COMMIT
# Completed on Wed Dec 6 11:15:33 2023
# Generated by iptables-save v1.8.7 on Wed Dec 6 11:15:33 2023
*nat
:PREROUTING ACCEPT [35:3163]
:INPUT ACCEPT [12:752]
:OUTPUT ACCEPT [53:3988]
:POSTROUTING ACCEPT [44:3387]
COMMIT
# Completed on Wed Dec 6 11:15:33 2023
# Generated by iptables-save v1.8.7 on Wed Dec 6 11:15:33 2023
*filter
:INPUT ACCEPT [68:5048]
:FORWARD ACCEPT [5:268]
:OUTPUT ACCEPT [54:4039]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -f -j DROP
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -f -j DROP
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -f -j DROP
COMMIT




© OSzone.net 2001-2012