LINUX.ORG.RU
решено ФорумAdmin

Почему нет доступа со шлюза с IPSec к подсети, находящейся за IPSec?


0

1

Установлен racoon. Подсеть одного офиса 192.168.1.0/24, другого - 192.168.2.0/24. У клиентов первой подсети есть доступ ко второй подсети. Нету доступа только на шлюзе, на котором установлен сам racoon (192.168.1.240). Конфигурация сетевых интерфейсов на шлюзе:

eth0      Link encap:Ethernet  HWaddr 1a:1a:1a:1a:1a:1a  
          inet addr:192.168.200.10  Bcast:192.168.200.255  Mask:255.255.255.0
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 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:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:28 Base address:0xe000 

eth1      Link encap:Ethernet  HWaddr 1b:1b:1b:1b:1b:1b  
          inet6 addr: fe70::224:d1ff:fe15:bd24/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:365574 errors:0 dropped:0 overruns:0 frame:0
          TX packets:319358 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:305510970 (305.5 MB)  TX bytes:43551826 (43.5 MB)
          Interrupt:21 Base address:0xbc00 

eth1:1    Link encap:Ethernet  HWaddr 1b:1b:1b:1b:1b:1b  
          inet addr:11.22.33.205  Bcast:11.22.33.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:21 Base address:0xbc00 

eth1:2    Link encap:Ethernet  HWaddr 1b:1b:1b:1b:1b:1b  
          inet addr:44.33.22.122  Bcast:44.33.22.127  Mask:255.255.255.248
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:21 Base address:0xbc00 

eth2      Link encap:Ethernet  HWaddr 1c:1c:1c:1c:1c:1c  
          inet addr:192.168.1.241  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe70::224:d1ff:fe10:c40e/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:268328 errors:0 dropped:0 overruns:0 frame:0
          TX packets:292235 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:25363710 (25.3 MB)  TX bytes:300222487 (300.2 MB)
          Interrupt:20 Base address:0x2000 

eth2:1    Link encap:Ethernet  HWaddr 1c:1c:1c:1c:1c:1c  
          inet addr:192.168.1.240  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:20 Base address:0x2000 

eth1.10   Link encap:Ethernet  HWaddr 1a:1a:1a:1a:1a:1a  
          inet addr:44.33.22.125  Bcast:44.33.22.127  Mask:255.255.255.248
          inet6 addr: fe70::224:d1ff:fe15:bd24/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:53 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:4830 (4.8 KB)

eth1.20   Link encap:Ethernet  HWaddr 1a:1a:1a:1a:1a:1a  
          inet addr:11.22.33.207  Bcast:11.22.33.255  Mask:255.255.255.0
          inet6 addr: fe70::224:d1ff:fe15:bd24/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:80 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:6072 (6.0 KB)

lo        Link encap:Локальная петля (Loopback)  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:20300 errors:0 dropped:0 overruns:0 frame:0
          TX packets:20300 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:2344755 (2.3 MB)  TX bytes:2344755 (2.3 MB)

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:172.16.130.1  P-t-P:172.16.130.2  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
11.22.33.204 и 44.33.22.122 - наши внешние ip-адреса. В них для безопасности я заменил только первые три октета. Четвёртый оставил, как есть для наглядности.

Роутинг:

172.16.130.2    0.0.0.0         255.255.255.255 UH    0      0        0 tun0
44.33.22.120   0.0.0.0         255.255.255.248 U     0      0        0 eth1.10
44.33.22.120   0.0.0.0         255.255.255.248 U     0      0        0 eth1
172.16.130.0    172.16.130.2    255.255.255.0   UG    0      0        0 tun0
11.22.33.0    0.0.0.0         255.255.255.0   U     0      0        0 eth1.20
11.22.33.0    0.0.0.0         255.255.255.0   U     0      0        0 eth1
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth2
192.168.200.0   0.0.0.0         255.255.255.0   U     0      0        0 eth0
0.0.0.0         11.22.33.205  0.0.0.0         UG    0      0        0 eth1

iptables представляют собой:

# iptables -t nat -L -n
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
SQUID_ROUTE  all  --  0.0.0.0/0            0.0.0.0/0           
DNAT       tcp  --  0.0.0.0/0            11.22.33.205      tcp dpt:1230 to:192.168.1.100:22

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         
SNAT       all  --  172.16.201.172       0.0.0.0/0           mark match !0x1 to:44.33.22.122 
SNAT       all  --  172.16.130.0/24      0.0.0.0/0           to:192.168.1.240 
SECOND_ROUTE  all  --  192.168.1.0/24       0.0.0.0/0           

Chain SECOND_ROUTE (1 references)
target     prot opt source               destination         
SNAT       all  --  192.168.1.0/24       0.0.0.0/0           mark match !0x1 to:11.22.33.205 

Chain SQUID_ROUTE (1 references)
target     prot opt source               destination         
RETURN     all  --  0.0.0.0/0            192.168.1.0/24      
DNAT       tcp  --  0.0.0.0/0            0.0.0.0/0           multiport dports 80,8080 to:192.168.1.240:3128

# iptables -t mangle -L -n
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
MARK       all  --  0.0.0.0/0            192.168.2.0/24      MARK xset 0x1/0xffffffff 
MARK       all  --  0.0.0.0/0            10.10.10.0/24       MARK xset 0x1/0xffffffff 

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
MARK       all  --  0.0.0.0/0            192.168.2.0/24      MARK xset 0x1/0xffffffff 

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination

Если попробовать прописать

# route add -net 192.168.2.0/24 gw 192.168.1.241
то пакеты перестают ходить с клиентов. Со шлюза так же не ходят

То же и с командой

# route add -net 192.168.2.0/24 gw 192.168.1.240

При етом модифицировал iptables, раздел SECOND_ROUTE до:

SNAT       all  --  0.0.0.0/24       192.168.2.0/24      to:192.168.1.241
SNAT       all  --  192.168.1.0/24       0.0.0.0/0           mark match !0x1 to:11.22.33.205 

Заместо source пробовал ставить 192.168.1.0/24, заместо to: ставил 192.168.1.240. Перепробовал все 4 варианта.

Я так и не могу понять, на каком етапе ipsec начинает шифровать пакет, и как заставить шлюз видеть вторую подсеть. Что можно попробовать?

Ответ на: комментарий от abr_linux

Хм, раньше работало.

Тогда что то типа ip route add <вторая сеть> dev <интерфейс> src 192.168.1.241

То есть надо заставить ходить шлюз по вторую сеть с этим адресом. Проверяется

ip r get <ip во второй сети>

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

Зашибись, запахало! :)

За ip r get <ip во второй сети> спасибо! Не знал такой команды. Пакеты, оказываются, ходят через eth1, то есть, через внешний интерфейс, но с внутренним адресом source (192.168.1.241).

Проблема решена.

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