LINUX.ORG.RU
ФорумAdmin

Проблема с настройкой Iptables в ubuntu server


1

1

Добрый день

Проблема следующая Имеем 3 сетевых интерфейса eth0 - внешний сетевой интерфейс имеет внешний IP:89.175.100.126 и подцеплено 4 альаса eth0:1 - 89.175.188.85 eth0:2 - 89.175.188.87 eth0:3 - 89.175.188.84 eth0:4 - 89.175.188.81 так же имеем 2 внутренние сетевые карты eth1 - 192.168.1.44 eth2 - 192.168.0.1

результат выполнения ifconfig

eth0 Link encap:Ethernet HWaddr 00:1f:1e:02:91:31 inet addr:89.175.100.126 Bcast:89.175.100.255 Mask:255.255.255.252 inet6 addr: fe80::21f:1eff:fe02:9131/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:4218244 errors:0 dropped:0 overruns:0 frame:0 TX packets:3533526 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:3184094292 (3.1 GB) TX bytes:1172489463 (1.1 GB)

eth0:1 Link encap:Ethernet HWaddr 00:1f:1e:02:91:31 inet addr:89.175.188.85 Bcast:89.175.188.87 Mask:255.255.255.252 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

eth0:2 Link encap:Ethernet HWaddr 00:1f:1e:02:91:31 inet addr:89.175.188.87 Bcast:89.175.188.87 Mask:255.255.255.252 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

eth0:3 Link encap:Ethernet HWaddr 00:1f:1e:02:91:31 inet addr:89.175.188.84 Bcast:89.175.188.87 Mask:255.255.255.252 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

eth0:4 Link encap:Ethernet HWaddr 00:1f:1e:02:91:31 inet addr:89.175.188.81 Bcast:89.175.188.83 Mask:255.255.255.252 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

eth1 Link encap:Ethernet HWaddr 00:1f:1e:02:52:89 inet addr:192.168.1.44 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::21f:1eff:fe02:5289/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:4054591 errors:0 dropped:10221 overruns:0 frame:0 TX packets:4198095 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1315754675 (1.3 GB) TX bytes:3248209735 (3.2 GB)

eth2 Link encap:Ethernet HWaddr c8:be:19:d3:91:d7 inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::cabe:19ff:fed3:91d7/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1227 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:86557 (86.5 KB) TX bytes:14442 (14.4 KB)

В сети Eth1 куча компов которые выходят через этот шлюз в инет и несколько копов с разными сервисами. В сети eth2 есть только один компьютер с веб сервером почему то проброс портов до сети eth1 работает нормально А вот в eth2 не прорабатывает. И из сети eth1 не получается увидеть сайт в сети eth2

Скрипт настройки IPtables прилогаю

#!/bin/bash

#Стираем iptables iptables -F iptables -t nat -F

#параметры по умолчанию iptables -P INPUT ACCEPT

iptables -P FORWARD ACCEPT

iptables -P OUTPUT ACCEPT

#Маскарадим iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

#Разрешаем если нужно ping iptables -t filter -A FORWARD -p icmp -j ACCEPT

#Разрешаем уже установленые соединения iptables -A FORWARD -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT

#Разрешаем dns iptables -t filter -A FORWARD -p tcp --sport 53 -j ACCEPT

iptables -t filter -A FORWARD -p tcp --dport 53 -j ACCEPT

iptables -t filter -A FORWARD -p udp --sport 53 -j ACCEPT

iptables -t filter -A FORWARD -p udp --dport 53 -j ACCEPT

iptables -t nat -A PREROUTING -p tcp --dport 443 -d 89.175.100.126 -j DNAT --to-destination 192.168.1.168

iptables -A FORWARD -p tcp --dport 443 -d 192.168.1.168 -j ACCEPT

iptables -A FORWARD -p tcp --sport 443 -s 192.168.1.168 -j ACCEPT

iptables -t nat -A PREROUTING -d 89.175.188.85 -j DNAT --to-destination 192.168.1.202

iptables -t nat -A PREROUTING -d 89.175.188.87 -j DNAT --to-destination 192.168.1.203

iptables -t nat -A PREROUTING -p tcp --dport 3389 -d 89.175.100.126 -j DNAT --to-destination 192.168.1.176

iptables -t nat -A PREROUTING -p tcp --dport 5222 -d 89.175.100.126 -j DNAT --to-destination 192.168.1.200

iptables -t nat -A PREROUTING -p tcp --dport 80 -d 89.175.188.81 -j DNAT --to-destination 192.168.0.204 -не прорабатывает

iptables -A FORWARD -p tcp -o eth2 -d 192.168.0.204 -s 192.168.1.223 --dport 80 -j ACCEPT -не прорабатывает

iptables -A FORWARD -p tcp -o eth2 -d 192.168.0.204 -s 192.168.1.223 --dport 6022 -j ACCEPT - не прорабатывает

iptables -t nat -A PREROUTING -p tcp -m multiport --dport 25,110,125,143,993 -d 89.175.100.126 -j DNAT --to-destination 192.168.1.224 остальное все работает.

В чем может быть причина?

Что означает "-не прорабатывает"? У правила нулевые счётчики байт/пакетов, что-ли?

Если у DNAT-правила нулевые счётчики, значит пакетов на 89.175.188.81 не было. Если у DNAT и FORWARD правил пакеты были (счётчики не нулевые), смотрите, уходящие через eth2 пакеты с помощью tcpdump. И если пакеты уходят, но ответные пакеты не приходят, смотрите настройки сервера 192.168.0.204.

mky ★★★★★
()

Пипец, оформите в лоркод хотя бы.

invokercd ★★★★
()

Проблема следующая Имеем 3 сетевых интерфейса eth0 - внешний сетевой интерфейс имеет внешний IP:89.175.100.126 и подцеплено 4 альаса eth0:1 - 89.175.188.85 eth0:2 - 89.175.188.87 eth0:3 - 89.175.188.84 eth0:4 - 89.175.188.81 так же имеем 2 внутренние сетевые карты eth1 - 192.168.1.44 eth2 - 192.168.0.1

результат выполнения ifconfig

eth0      Link encap:Ethernet  HWaddr 00:1f:1e:02:91:31
          inet addr:89.175.100.126  Bcast:89.175.100.255  Mask:255.255.255.252
          inet6 addr: fe80::21f:1eff:fe02:9131/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:450185 errors:0 dropped:0 overruns:0 frame:0
          TX packets:402434 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:321291572 (321.2 MB)  TX bytes:85646661 (85.6 MB)

eth0:1    Link encap:Ethernet  HWaddr 00:1f:1e:02:91:31
          inet addr:89.175.188.85  Bcast:89.175.188.87  Mask:255.255.255.252
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

eth0:2    Link encap:Ethernet  HWaddr 00:1f:1e:02:91:31
          inet addr:89.175.188.87  Bcast:89.175.188.87  Mask:255.255.255.252
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

eth0:3    Link encap:Ethernet  HWaddr 00:1f:1e:02:91:31
          inet addr:89.175.188.86  Bcast:89.175.188.87  Mask:255.255.255.252
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

eth0:4    Link encap:Ethernet  HWaddr 00:1f:1e:02:91:31
          inet addr:89.175.188.81  Bcast:89.175.188.83  Mask:255.255.255.255
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

eth1      Link encap:Ethernet  HWaddr 00:1f:1e:02:52:89
          inet addr:192.168.1.44  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::21f:1eff:fe02:5289/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:460803 errors:0 dropped:1272 overruns:0 frame:0
          TX packets:457629 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:91068596 (91.0 MB)  TX bytes:323854354 (323.8 MB)

eth2      Link encap:Ethernet  HWaddr c8:be:19:d3:91:d7
          inet addr:192.168.0.44  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::cabe:19ff:fed3:91d7/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:57665 errors:0 dropped:1272 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:5965976 (5.9 MB)  TX bytes:309803 (309.8 KB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:34 errors:0 dropped:0 overruns:0 frame:0
          TX packets:34 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:2632 (2.6 KB)  TX bytes:2632 (2.6 KB)


В сети Eth1 куча компов которые выходят через этот шлюз в инет и несколько копов с разными сервисами. В сети eth2 есть только один компьютер с веб сервером почему то проброс портов до сети eth1 работает нормально А вот в eth2 не прорабатывает. И из сети eth1 не получается увидеть сайт в сети eth2


#!/bin/bash

#Стираем iptables
iptables -F 
iptables -t nat -F

#параметры по умолчанию iptables -P INPUT ACCEPT

iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

#Маскарадим 
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

#Разрешаем если нужно ping 
iptables -t filter -A FORWARD -p icmp -j ACCEPT

#Разрешаем уже установленые соединения iptables -A FORWARD -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT

#Разрешаем dns 
iptables -t filter -A FORWARD -p tcp --sport 53 -j ACCEPT
iptables -t filter -A FORWARD -p tcp --dport 53 -j ACCEPT
iptables -t filter -A FORWARD -p udp --sport 53 -j ACCEPT
iptables -t filter -A FORWARD -p udp --dport 53 -j ACCEPT

iptables -t nat -A PREROUTING -p tcp --dport 443 -d 89.175.100.126 -j DNAT --to-destination 192.168.1.168
iptables -A FORWARD -p tcp --dport 443 -d 192.168.1.168 -j ACCEPT
iptables -A FORWARD -p tcp --sport 443 -s 192.168.1.168 -j ACCEPT
iptables -t nat -A PREROUTING -d 89.175.188.85 -j DNAT --to-destination 192.168.1.202
iptables -t nat -A PREROUTING -d 89.175.188.87 -j DNAT --to-destination 192.168.1.203
iptables -t nat -A PREROUTING -p tcp --dport 3389 -d 89.175.100.126 -j DNAT --to-destination 192.168.1.176
iptables -t nat -A PREROUTING -p tcp --dport 5222 -d 89.175.100.126 -j DNAT --to-destination 192.168.1.200
iptables -t nat -A PREROUTING -p tcp -m multiport --dport 25,110,125,143,993 -d 89.175.100.126 -j DNAT --to-destination 192.168.1.224
iptables -t nat -A PREROUTING -p tcp --dport 80 -d 89.175.188.81 -j DNAT --to-destination 192.168.0.204 -не прорабатывает
iptables -A FORWARD -p tcp -o eth2 -d 192.168.0.204 -s 192.168.1.223 --dport 80 -j ACCEPT -не прорабатывает
iptables -A FORWARD -p tcp -o eth2 -d 192.168.0.204 -s 192.168.1.223 --dport 6022 -j ACCEPT - не прорабатывает

остальное все работает. Так более понятно?

mejikop
() автор топика
Ответ на: комментарий от mejikop

твои accept не имеют вообще никакого смысла, поскольку у тебя на форварде полиси ACCEPT. Это раз. Два:

какой дефолт шлюз у вебсервера и ты не показал SNAT собственно.

Вывод iptables-save дай.

anton_jugatsu ★★★★
()
Ответ на: комментарий от mejikop

ipitables вам явно не нужен, в своих правилах вы разрешаете разрешенное. если для проброса портов не умеете использовать ipitables пользуйте rinetd.

vxzvxz ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.