Toon posts:

[IPTABLES] Routing tussen servers binnen het netwerk

Pagina: 1
Acties:

Verwijderd

Topicstarter
Het leek me wel aardig om eens door middel van iptables netwerk rules neer te zetten, maar ik begrijp iets niet helemaal.

Ik heb bijvoorbeeld de rule:
iptables -A FORWARD -m tcp --dport 80 -d 10.0.2.10 -j ACCEPT

Dit zou (dacht ik) alle verkeer van buiten op port 80 moeten forwarden naar de machine met het ip 10.0.2.10.

In principe heb ik alle 3 de basis chains op drop gezet,
iptables –P INPUT ACCEPT
iptables –P FORWARD DROP
iptables –P OUTPUT ACCEPT

Maar laat ik established verkeer wel toe:
iptables –A ACCEPT –m tcp –-state RELATED, ESTABLISHED –j ACCEPT

Nu is het zo dat er achter deze webserver een database server draait, 10.0.4.10, hoe kan ik nu met iptables zorgen dat verkeer tussen deze 2 mogelijk is. Maar verkeer van buiten mag niet op 10.0.4.10 terecht komen, dus alleen direct verkeer tussen deze 2 hosts.

  • MTWZZ
  • Registratie: Mei 2000
  • Laatst online: 13-08-2021

MTWZZ

One life, live it!

Zoiets? 10.0.2.10 = web, 10.0.2.14 = db
Op de webserver:
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

# ESTABLISHED en RELATED connections toestaan
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED, RELATED

# Alles van de database server toestaan
iptables -A INPUT -j ACCEPT -s 10.0.2.14

# Alles op poort 80 toestaan naar de webserver toe
iptables -A INPUT -j ACCEPT -s 0/0 -p tcp --dport 80 -d 10.0.2.10

Nu met Land Rover Series 3 en Defender 90


  • TrailBlazer
  • Registratie: Oktober 2000
  • Laatst online: 07-02 09:48

TrailBlazer

Karnemelk FTW

Je snapt het niet.
Je hebt een aantal chains binnen iptables
INPUT verkeer wat een bestemming heeft op de lokale server.
OUTPUT verkeer wat geinitierd word door de lokale server.
FORWARD verkeer wat door de server heen gaat.

dan heb je nog een aantal chains binnen de nat table
PREROUTING doe iets met source/destination adres voordat je gaat routeren
POSTROUTING doe iets met source/destination adres nadat je hebt gerouteerd

dus om te forwarden eest destination aanpassen en daarna forwarden toestaan
iptables -t nat -A PREROUTING -p tcp -d $extern_ip --dport 80 -j DNAT --to $webserver:80
iptables -A FORWARD -p tcp -d $webserver --dport 80 t -j ACCEPT
iptables -A FORWARD -j DROP
iptables -A OUTPUT -d $db_server -s $webserver -j ACCEPT
iptables -A INPUT -d $webserver -s $db_server -j ACCEPT

Verwijderd

Topicstarter
Aaah, bedankt voor die input POST- en PREROUTING was inderdaad precies waar ik naar op zoek was, dikke kwestie van RTFM blijkt 8)7