Toon posts:

[FreeBSD] NAT probleempje

Pagina: 1
Acties:

Verwijderd

Topicstarter
Het is me dus gelukt om FreeBSD als router te laten draaien
NAT werkt perfect, maar zodra ik mijn firewall wat meer dicht zet krijg ik problemen met NAT

Momenteel zijn mijn IPFW rules het volgende:

/sbin/ipfw add check-state
/sbin/ipfw add divert natd all from any to any via ppp0

/sbin/ipfw add pass tcp from any to mijn.ip.adres 80
/sbin/ipfw add deny log tcp from any to mijn.ip.adres
/sbin/ipfw add deny log udp from any to mijn.ip.adres
/sbin/ipfw add deny log icmp from any to mijn.ip.adres

Nu is mijn server geheel stealth, de werkstations kunnen pingen, server, enz..
De server kan momenteel niks, niet pingen, niet servern, helemaal niks.

Nu wil ik graag dat de server ook op internet kan. Dit is me in linux altijd gelukt (met iptables) en ik weet dat dit met IPFW van FreeBSD ook kan.
Nu ben ik al een stapje verder geweest en de server kon op internet, bijvoorbeeld pingen en browsen, maar nu kunnen de werkstations achter de NAT weer niet op internet :(

Dit zijn de IPFW rules waarmee de server wel op internet kan en de werkstations niet:

/sbin/ipfw add check-state
/sbin/ipfw add divert natd all from any to any via ppp0

/sbin/ipfw add pass tcp from any to any setup keep-state
/sbin/ipfw add pass udp from any to any keep-state
/sbin/ipfw add pass icmp from any to any keep-state
/sbin/ipfw add pass ip from any to any keep-state

/sbin/ipfw add pass tcp from any to mijn.ip.adres 80
/sbin/ipfw add deny log tcp from any to mijn.ip.adres
/sbin/ipfw add deny log udp from any to mijn.ip.adres
/sbin/ipfw add deny log icmp from any to mijn.ip.adres

Wat doe ik fout? Ik heb al alles geprobeerd maar het lukt me steeds maar niet :'(
Uiteraard heb ik ook al op google, dit forum, en het freebsd handbook gezocht, maar daar heb ik niets kunnen vinden.

  • Leon
  • Registratie: Maart 2000
  • Laatst online: 10-04 09:12

Leon

Rise Of The Robots

waarom gebruik je niet een aangepaste firewall gebaseerd op /etc/rc.firewall :?
of gebruik anders eens http://ipfwgen.sf.net :)

(neem maar eens een kijkje door die file's, dan kun je ze eventueel ook aanpassen :))

Volgens mij is het zo dat ipfw van regel 0 t/m regel 65?? leest en pas bij een match stopt en die regel toepast.

Eeuwige n00b


Verwijderd

Topicstarter
ok ik zal even kijken, alvast hartstikke bedankt!!!

  • baggah
  • Registratie: December 2000
  • Laatst online: 05-05 23:37
Dit is het bovenste stukje..van mijn firewall...

code:
1
2
3
4
5
6
7
8
9
10
11
12
#!/bin/sh
fwcmd="/sbin/ipfw";

$fwcmd -f flush

# natd...
$fwcmd add divert natd all from any to any via xl1

# lokaal mag alles
$fwcmd add allow ip from any to any via lo0
# lokale netwerk mag ook alles..
$fwcmd add allow ip from any to any via xl0


stukje vergeten:
Hierna kan je dus je blokeer regels instellen.

[ Voor 12% gewijzigd door baggah op 05-03-2003 09:06 ]


Verwijderd

Topicstarter
ok en heb jij in je kernel IPFIREWALL_DEFAULT_TO_ACCEPT meegecompileerd of niet?
dat is dus iets wat ik niet begrijp, maarja ik ga vanmiddag nog wel ff kijken en dan probeer ik dit uit
eerst maar is naar school :)

  • baggah
  • Registratie: December 2000
  • Laatst online: 05-05 23:37
nee, dat heb ik niet, daarom de regels van nat en dat lokaal en het lokale netwerk alles mogen.
Hierna geef ik toegang per onderdeel. Of blokeer ik bepaalde dingen anders (zoals ident reset ipv blok) Ook kan ik bepaalde icmp delen blokken(zoals pingen).

Verwijderd

Topicstarter
Nou ik heb nu zo een beetje alle mogelijkheden van volgorde geprobeerd maar het werkt gewoon niet
iemand nog suggesties?

  • xzenor
  • Registratie: Maart 2001
  • Laatst online: 14-10-2022

xzenor

Ja doe maar. 1 klontje suiker.

als je nou eens begint met 'm open te zetten.....
zijn dit sowieso AL je regels?
geef 's de output van ipfw list
als je namelijk de divert regel niet hebt (die ik niet zie in jouw regeltjes) dan gaat nat sowieso niet echt werken...

Verwijderd

Topicstarter
De divert regel zit er wel in maar die had ik maar niet laten zien, maar goed ik geef je hier de ipfw show:

00100 0 0 check-state
00200 0 0 allow tcp from any to any setup keep-state
00300 10 1355 allow udp from any to any keep-state
00400 8 504 allow icmp from any to any keep-state
00500 0 0 allow ip from 213.84.86.16 to any keep-state
00600 0 0 allow tcp from any to 213.84.86.16 dst-port 80
00700 0 0 deny log tcp from any to 213.84.86.16
00800 0 0 deny log udp from any to 213.84.86.16
00900 0 0 deny log icmp from any to 213.84.86.16
65535 18524 2306311 allow ip from any to any

Wat er nu gaande is:

De server blokkeerd alle TCP, UDP en ICMP porten behalve Port 80 TCP
De server kan pingen, browsen, traceroute, kortom hij kan op internet
De werkstations kunnen niet op internet, de werkstations kunnen nog wel de server pingen enz...

Ik snap er niks meer van :(

  • miniBSD
  • Registratie: Augustus 2002
  • Laatst online: 20-12-2023
Ik mis nog steeds de divert regel overigens. Misschien helpt dit maar het is een voorbeeld dus je moet nog wat aanpassen waar nodig.
Dit is overigens voor FreeBSD 5.0 of FreeBSD 4.7 en ipfw2.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
fwcmd=/sbin/ipfw
${fwcmd} -f flush

# loopback
${fwcmd} add pass all from any to any via lo0

# hier eventueel nog je lan (lan_iface is bv xl0,rl0,de0 etc)
# ${fwcmd} add pass all from any to any via $lan_iface

# nat address translation
${fwcmd} add divert natd all from any to any via ppp0

# allow statefull traffic
${fwcmd} add check-state
${fwcmd} add pass ip from any to any in via ppp0 established
${fwcmd} add pass ip  from any to any out via ppp0 keep-state

# log and deny all
$fwcmd add 65000 deny log ip from any to any via ppp0

[ Voor 6% gewijzigd door miniBSD op 05-03-2003 23:34 ]

Quidquid latine dictum sit, altum sonatur (Whatever is said in Latin sounds profound).


Verwijderd

Topicstarter
Dit werkt ook niet
ook hier heb ik weer het probleem dat de server wel op internet kan maar de computers achter de NAT niet

ik ben nu met ipf aan het rommelen, misschien dat dat wel werkt

Verwijderd

Topicstarter
Ok ik ben eruit, met IPF en IPNAT werkt het allemaal perfect

Toch vind ik het vreemd dat het met IPFW en NATD niet werkt, tenzij ik iets gruwelijk over het hoofd heb gezien, maar met IPF werkt het direct zonder problemen

  • xychix
  • Registratie: September 2000
  • Laatst online: 03-12-2025

xychix

FreeBSD Rules !

FreeBSD gebruikt nu als standaard ipfw dus misschien toch nog maar een poging ? ik ben ook handiger met ipf maar ik ga toch proberen om het met ipfw te doen.

Die generator voor ipfw is wel handig lijkt me!

Every failure offers you a new opportunity! | Lokatie database|GoT - Notepad


  • miniBSD
  • Registratie: Augustus 2002
  • Laatst online: 20-12-2023
Had je wel natd opgestart trouwens ? Die heb je niet nodig voor ipfilter.

Quidquid latine dictum sit, altum sonatur (Whatever is said in Latin sounds profound).


  • xzenor
  • Registratie: Maart 2001
  • Laatst online: 14-10-2022

xzenor

Ja doe maar. 1 klontje suiker.

plus dat ik in al je voorbeelden de divert regel mis in je config..
als je goeie hulp wilt moet je wel volledig spul plaatsen natuurlijk....
(of die regel moet er gewoon niet in staan, ondanks dat je zegt van wel)

  • hbokh
  • Registratie: Februari 2002
  • Laatst online: 05-05 21:31

hbokh

Unox: the worst OS!

De uitkomst van die ipfw-generator werkt niet bij mij. Dat ligt aan de "-p cpp"-optie.
Bovendien moet ik dan na iedere aanpassing rebooten, omdat ipfw met die -p optie geen file kan lezen...
Gewoon een shell-scriptje werk m.i. het best.

This is my sick nature.

Pagina: 1