Hallo,
Ik zit met het volgende probleem. We hebben een Debian Linux (Lenny 5.04) server staan met 2 NIC's.
Deze is ingericht voor Firewall/Router/DMZ met onze glasvezel verbinding.
Op deze server is verder ook een caching DNS opgezet voor de servers in DMZ.
Probleem is dat ik in de DMZ achter deze Firewall/Router meerdere servers met publieke IP's heb
staan welke voor internet bereikbaar moeten zijn. (oa. webserver,ftp server)
Voor de duidelijkheid even een kleine schets van de situatie.
(tekening zegt meestal meer dan 1000 woorden ... toch?)
Ik heb even fictieve IPs gebruikt (1.1.1.x), maar dit zijn dus eigenlijk publieke IP's.
Alle LAN gebruikers moeten via iptables SNAT rule geNAT worden naar 1.1.1.2.
En de DMZ servers moeten met hun eigen publieke IP vanaf buiten bereikbaar zijn.
Probleem is dat het wel lukt om middels iptables SNAT rule al het verkeer vd. DMZ servers
naar buiten te krijgen maar vanaf buiten zijn deze DMZ servers te zien met het 1.1.1.2 adres.
Maar we willen juist dat deze DMZ servers met hun eigen publieke IP naar buiten gaan en ook
op hun eigen IP vanaf buiten te bereiken zijn.
We hebben een range van 1.1.1.0 - 1.1.1.127 gekregen van onze Glasvezel aanbieder.
Gateway = 1.1.1.1
Op de "Linux Router/Firewall DMZ" server zijn de volgende settings voor de NIC's ingesteld:
eth1:
address 1.1.1.2
netmask 255.255.255.252
gateway 1.1.1.1
eth0:
address 1.1.1.124
netmask 255.255.255.128
<geen gateway ingesteld>
En settings op bv. server-1 in de DMZ (Windows XP testlaptop)
IP : 1.1.1.4
netmask : 255.255.255.128
Gateway : 1.1.1.124
DNS : 1.1.1.124
De SNAT rule die uiteindelijk werkt voor al het verkeer vd. DMZ server naar buiten te krijgen is:
$IPTABLES -t nat -A POSTROUTING -o eth1 -s 1.1.1.0/25 -j SNAT --to-source 1.1.1.2
Dit is prima voor al het verkeer vanaf de LAN, maar niet voor de DMZ servers.
Deze moeten dus via hun eigen IP van/naar internet bereikbaar zijn.
Ik vermoed dat er dus bij de eth1 kant op de "Linux Router/Firewall DMZ" op 1 of andere manier 'geluisterd'
moet kunnen worden naar de gehele IP range (1.1.1.0/25) maar heb geen idee hoe dit voor elkaar te krijgen.
IP forwarding staat ook al ingesteld op de Linux router (cat /proc/sys/net/ipv4/ip_forwarding = 1)
Ik hoop dat iemand hier een goede suggestie voor heeft of kan aangeven wat ik eventueel over het hoofd zie.
Alvast bedankt.
Ik zit met het volgende probleem. We hebben een Debian Linux (Lenny 5.04) server staan met 2 NIC's.
Deze is ingericht voor Firewall/Router/DMZ met onze glasvezel verbinding.
Op deze server is verder ook een caching DNS opgezet voor de servers in DMZ.
Probleem is dat ik in de DMZ achter deze Firewall/Router meerdere servers met publieke IP's heb
staan welke voor internet bereikbaar moeten zijn. (oa. webserver,ftp server)
Voor de duidelijkheid even een kleine schets van de situatie.
(tekening zegt meestal meer dan 1000 woorden ... toch?)
Ik heb even fictieve IPs gebruikt (1.1.1.x), maar dit zijn dus eigenlijk publieke IP's.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| Glasvezel-switch | | eth1 (1.1.1.2=extern ip vanaf internet voor LAN) | Linux Router/Firewall DMZ | eth0 (1.1.1.124=gw) | eth2+---------------------+eth0 +-----+ |-------------------------|Linux Router/firewall|-------------| LAN | | 1.1.1.3+---------------------+ 10.0.0.0/8 +-----+ | ----------|DMZ|---------- | | | | | | server-1 server-2 server-3 public IP public IP public IP 1.1.1.4 1.1.1.5 1.1.1.6 |
Alle LAN gebruikers moeten via iptables SNAT rule geNAT worden naar 1.1.1.2.
En de DMZ servers moeten met hun eigen publieke IP vanaf buiten bereikbaar zijn.
Probleem is dat het wel lukt om middels iptables SNAT rule al het verkeer vd. DMZ servers
naar buiten te krijgen maar vanaf buiten zijn deze DMZ servers te zien met het 1.1.1.2 adres.
Maar we willen juist dat deze DMZ servers met hun eigen publieke IP naar buiten gaan en ook
op hun eigen IP vanaf buiten te bereiken zijn.
We hebben een range van 1.1.1.0 - 1.1.1.127 gekregen van onze Glasvezel aanbieder.
Gateway = 1.1.1.1
Op de "Linux Router/Firewall DMZ" server zijn de volgende settings voor de NIC's ingesteld:
eth1:
address 1.1.1.2
netmask 255.255.255.252
gateway 1.1.1.1
eth0:
address 1.1.1.124
netmask 255.255.255.128
<geen gateway ingesteld>
En settings op bv. server-1 in de DMZ (Windows XP testlaptop)
IP : 1.1.1.4
netmask : 255.255.255.128
Gateway : 1.1.1.124
DNS : 1.1.1.124
De SNAT rule die uiteindelijk werkt voor al het verkeer vd. DMZ server naar buiten te krijgen is:
$IPTABLES -t nat -A POSTROUTING -o eth1 -s 1.1.1.0/25 -j SNAT --to-source 1.1.1.2
Dit is prima voor al het verkeer vanaf de LAN, maar niet voor de DMZ servers.
Deze moeten dus via hun eigen IP van/naar internet bereikbaar zijn.
Ik vermoed dat er dus bij de eth1 kant op de "Linux Router/Firewall DMZ" op 1 of andere manier 'geluisterd'
moet kunnen worden naar de gehele IP range (1.1.1.0/25) maar heb geen idee hoe dit voor elkaar te krijgen.
IP forwarding staat ook al ingesteld op de Linux router (cat /proc/sys/net/ipv4/ip_forwarding = 1)
Ik hoop dat iemand hier een goede suggestie voor heeft of kan aangeven wat ik eventueel over het hoofd zie.
Alvast bedankt.