Помогите пожалуйста настроить shorewall в связке c proxyarpИмеется следующая схема организации доступа в сеть интернет:
ISP1 ISP2
\ /
\ /
FW
|
cisco
/ \
/ \
DMZ LAN
Исходные данные:
Хост FW, маршрутизатор на базе ОС Linux с тремя интерфейсами.
eth0: 1.1.1.1/28 (ISP1)
eth1: 2.2.2.2/28 (ISP2)
eth2: 192.168.254.1/30 (интерфейс связанный с cisco)
cisco: 192.168.254.2/30
LAN: 172.16.0.0/16
DMZ: 192.168.253.0/24
В DMZ расположен почтовый сервер (192.168.253.1), из внешней сети доступ к которому должен осуществляться при обращении к 1.1.1.2 на 25 порт.
Ввиду того что alias'ы для сетевых интерфейсов не настроены, было принято решение использовать proxyarp для обеспечения доступа при обращении к 1.1.1.2.
Для обеспечения защиты маршрутизатора используется shorewall 4.0.2-5, файлы конфигурации которого приводятся ниже:
interfaces
#ZONE INTERFACE BROADCAST OPTIONS
net eth0 detect norfc1918,blacklist,tcpflags,nosmurfs
net eth1 detect norfc1918,blacklist,tcpflags,nosmurfs
- eth2 detect
zones
#ZONE TYPE OPTIONS IN OUT
# OPTIONS OPTIONS
fw firewall
net ipv4
loc ipv4
dmz ipv4
cisco ipv4
policy
#SOURCE DEST POLICY LOG LIMIT:BURST
# LEVEL
fw net DROP info
fw loc DROP info
fw dmz DROP info
fw cisco DROP info
net fw DROP info
net net DROP info
net loc DROP info
net dmz DROP info
net cisco DROP info
loc fw DROP info
loc net DROP info
loc dmz NONE
loc cisco NONE
dmz fw DROP info
dmz net DROP info
dmz loc NONE
dmz cisco NONE
cisco fw DROP info
cisco net DROP info
cisco loc NONE
cisco dmz NONE
rules
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL RATE USER/ MARK
# PORT PORT(S) DEST LIMIT GROUP
#SECTION ESTABLISHED
#SECTION RELATED
SECTION NEW
ACCEPT fw all icmp 8
ACCEPT fw all icmp 11
ACCEPT fw all udp 53,123,33434:33465
ACCEPT fw all tcp 20:21,23,22,25,53,80,443
ACCEPT net fw icmp 8
ACCEPT net fw tcp 22
ACCEPT net dmz icmp 8
ACCEPT loc fw icmp 8
ACCEPT loc fw udp 123
ACCEPT loc fw tcp 22
ACCEPT dmz fw icmp 8
ACCEPT dmz fw udp 123
ACCEPT dmz net udp 53
ACCEPT dmz net tcp 20:21,25,53,80,443
ACCEPT cisco fw udp 123
DNAT net dmz:192.168.253.2 tcp 25 - 1.1.1.2
masq
#INTERFACE SOURCE ADDRESS PROTO PORT(S) IPSEC MARK
eth0 192.168.253.0/24 1.1.1.1
eth1 192.168.253.0/24 2.2.2.2
hosts
#ZONE HOST(S) OPTIONS
loc eth2:172.16.0.0/16
dmz eth2:192.168.253.0/24 tcpflags
cisco eth2:192.168.254.0/30
providers
#NAME NUMBER MARK DUPLICATE INTERFACE GATEWAY OPTIONS COPY
ISP1 1 1 main eth0 1.1.1.5 track,balance eth2
ISP2 2 2 main eth1 2.2.2.5 track,balance eth2
proxyarp
#ADDRESS INTERFACE EXTERNAL HAVEROUTE PERSISTENT
1.1.1.2 eth0 eth0 yes
# netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.254.0 0.0.0.0 255.255.255.252 U 0 0 0 eth2
1.1.1.0 0.0.0.0 255.255.255.240 U 0 0 0 eth0
2.2.2.0 0.0.0.0 255.255.255.240 U 0 0 0 eth1
192.168.253.0 192.168.254.2 255.255.255.0 UG 0 0 0 eth2
172.16.0.0 192.168.254.2 255.255.0.0 UG 0 0 0 eth2
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth2
0.0.0.0 1.1.1.5 0.0.0.0 UG 0 0 0 eth0
# ip route ls
192.168.254.0/30 dev eth2 proto kernel scope link src 192.168.254.1
1.1.1.0/28 dev eth0 proto kernel scope link src 1.1.1.1
2.2.2.0/28 dev eth1 proto kernel scope link src 2.2.2.2
192.168.253.0/24 via 192.168.254.2 dev eth2
172.16.0.0/16 via 192.168.254.2 dev eth2
169.254.0.0/16 dev eth2 scope link
default
nexthop via 1.1.1.5 dev eth0 weight 1
nexthop via 2.2.2.5 dev eth1 weight 1
# arp -an
? (2.2.2.5) at xx:xx:xx:xx:xx:xx [ether] on eth1
? (1.1.1.5) at xx:xx:xx:xx:xx:xx [ether] on eth0
? (192.168.254.2) at xx:xx:xx:xx:xx:xx [ether] on eth2
? (1.1.1.2) at * PERM PUP on eth0
Из внешнего источника, попытка соединиться с хостом 1.1.1.2 на 25 порт
> telnet 1.1.1.2 25
Trying 1.1.1.2...
telnet: connect to address 1.1.1.2: Operation timed out
telnet: Unable to connect to remote host