Toon posts:

Hoe ports forwarden met iptables?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik wil hier port 1024 tm 5000 forwarden naar een client pc, maar heb geen idee hoe ik het moet doen ik kon ook nix vinden op het web alvast thnx.

Verwijderd

Ik zou ongeveer zoiets in tikken.
iptables -A PREROUTING -t nat -p tcp -d $EXTIP --dport 1024:5000 -j DNAT --to $PORTFWIP:1024-5000
Waarbij $EXTIP een variabele is voor je externe IP en $PORTFWIP een var. voor het IP van de client.
Zorg natuurlijk ook dat de buitenwereld mag verbinden met de client. (dus een input-rule aanmaken).

Iets als:
iptables -A INPUT -p tcp -s $UNIVERSE -d $PORTFWIP --dport 1024:5000 -j ACCEPT
Verder moet je wel de multiport-module en de nat-module van Iptables geladen hebben (of in de kernel gebakken hebben) voordat dit uberhaupt wil werken.

Meer info is te vinden op netfilter.samba.org

  • rjeggens
  • Registratie: Juni 2000
  • Laatst online: 06-02-2025
Hmm.. werkt hier niet. Kan nog steeds niet connecten. Wat doe ik fout?

Ik heb 2 rules ingetikt. Die Prerouting rule en die Inputrule. ik wil dat 192.168.6.254:8080 doorgestuurd word naar 192.168.6.100:80.

RJ heeft dit ook wel eens met ipchains geprobeerd, toen werkte het ook al nooit.

Verwijderd

:D Die input rule is hardstikke overbodig :D. Wordt toch niet aangedaan.

Maar hoe is je huidige regel :? Gewoon een poort forwarden moet geen nekel probleem zijn.

  • rjeggens
  • Registratie: Juni 2000
  • Laatst online: 06-02-2025
iptables -A prerouting -t nat -p tcp -d 192.168.6.254 --dport 8080 -j nat --to 192.168.6.100:80

Da's hem.. moet er nog meer met iptables gedaan zijn, want ik had net alles geflushed.

Verwijderd

Op zaterdag 28 juli 2001 00:15 schreef rjeggens het volgende:
iptables -A prerouting -t nat -p tcp -d 192.168.6.254 --dport 8080 -j nat --to 192.168.6.100:80

Da's hem.. moet er nog meer met iptables gedaan zijn, want ik had net alles geflushed.
Ik denk dat genoemde link en "man iptables" geen overbodige luxe voor je zijn.

Iets als:
code:
1
iptables -A PREROUTING -t nat -p tcp -d 192.168.6.254 --dport 8080 -j DNAT --to 192.168.6.100:80

Zou toch gewoon moeten werken. Let dus ook op
HOOFDletters ;)

[edit]
Waarom het RJ niet zou lukken is me eigenlijk een raadsel. Heeft eigenlijk ook niks hiermee te maken.

  • rjeggens
  • Registratie: Juni 2000
  • Laatst online: 06-02-2025
Hmm.. ik had die hoofdletters niet overgetikt hier, maar wel in mijn rule staan. Om dit niet een slowchat te laten worden, zou je je ICQ kunnen aanzetten? Want de Iptables howto heb ik doorgelezen en die zegt ongeveer het zelfde als jij..

Verwijderd

Mwah het lijkt mij dat dit ook wel via GOt kan.Er leren dan sowieso meer mensen wat van en er kijken ook meerdere mensen naar met allemaal hun verschilende meningen/standpunten.
Ik wil best ICQ aan zetten, maar het lijkt hier de laatste tijd wel een persoonlijke helpdesk. Je kan je misschien voorstellen, dat ik daar nou niet altijd op zit te wachten. Zeker niet als je vandaag al 13 uur gewerkt hebt en hoog nodig naar bed toe moet, omdat er morgen weer een werkdag is ;)

Overigens moet de regel die ik gaf gewoon werken. Sterker nog: soortgelijke regels staan in mijn firewall script om ftp/ssh/http door te sluizen naar een interne server.

  • rjeggens
  • Registratie: Juni 2000
  • Laatst online: 06-02-2025
Ik heb nog ff zitten kijken, hij wordt onder nmap weergegeven als 'filtered'. Naja.. kan me idd voorstellen dat je na een dag hard werken er niet zo'n zin meer in hebt :) IIg wel bedankt dat je me tot zover hebt geholpen. :)

Zou je misschien, om het makkelijk te maken, jou script hier willen quoten?

Verwijderd

Hoezo, daar schiet je echt niks mee op; geloof mij maar. Dit zijn dingen die je echt zelf moet doen.

Gewoon die PREROUTING regel aanmaken moet voldoende zijn.
Verder ga ik echt m'n firewall script niet hier online gooien ;) Ik ben wel goed, maar niet gek.

Tipje: gebruik ook eens "iptables -L" om je listing te zien.
/me gaat' nu echt naar bedje toe.

  • BrZ
  • Registratie: Maart 2000
  • Laatst online: 30-07 09:36

BrZ

Hmm.. ik weet echt totaal niets van iptables, maar bij sommige andere routing progs zijn port mapping niet te bereiken vanaf het lokale netwerk... dus alleen van buitenaf.. kan het zijn dat je daar een vergissing maakt en dat het eigenlijk gewoon werkt? :D

  • Mior
  • Registratie: Maart 2000
  • Laatst online: 15-08 00:58
Op zaterdag 28 juli 2001 03:32 schreef BrZ het volgende:
Hmm.. ik weet echt totaal niets van iptables, maar bij sommige andere routing progs zijn port mapping niet te bereiken vanaf het lokale netwerk... dus alleen van buitenaf.. kan het zijn dat je daar een vergissing maakt en dat het eigenlijk gewoon werkt? :D
Idd, omdat het meestal gebonden is aan een/de (inet) interface.

Verwijderd

Op zaterdag 28 juli 2001 03:32 schreef BrZ het volgende:
Hmm.. ik weet echt totaal niets van iptables, maar bij sommige andere routing progs zijn port mapping niet te bereiken vanaf het lokale netwerk... dus alleen van buitenaf.. kan het zijn dat je daar een vergissing maakt en dat het eigenlijk gewoon werkt? :D
Nope iptables verzorgt o.a. NAT en je geeft gewoon op voor welke interface het geldt. Als je niks opgeeft, dan geldt het voor alle interfaces. NAT wordt dus ongeacht het adres gedaan.

Verwijderd

Oh, nelske, gelijk ook ff een vraag, heb jij het voor elkaar om met iptables en masquerade bak op te zetten die netmeeting call 100% volledig kan, het is een beetje kromme vraagstelling maar ik bedoel dat de dynamische poorten goed afgehandeld worden? want ik kan van lokaal netw naar inet wel netmeeting verbindingen maken maar de video stream gaat over dynamische poorten en das mijn probleem.. zoek hier een oplossing voor en misschien dat jij het weet? wat is trouwens de beste manier om nat gateway te draaien met iptables? sinds netfilter core zijn er ontzettend veel mogelijkheden, dus vraag me af wat je zelf het lekkerst vind werken

Verwijderd

moet het niet --to-destination zijn ipv --to? ik gebruik zelf deze regel:
/sbin/iptables --append PREROUTING --table nat --protocol tcp --destination-port 3500:3520 --jump DNAT --to-destination 10.0.0.2

Verwijderd

Netmeeting heb ik nog nooit gebruikt :D
Ik zou wat meer over de gebruikte poorten moeten weten en hoe verbindingen op deze poorten opgebouwd worden ("vanaf welke kant" bedoel ik dan).
In principe zou je waarschijnlijk met behulp van een regel al het INPUT verkeer, dat geen nieuwe verbinding is door kunnen laten. Maar ik begrijp dat netmeeting waarschijnlijk op een interne client draait?
Als je meerdere clients hebt in je netwerk, dan kan het wel eens lastig worden, als zo'n verbinding direct met andere mensen gemaakt wordt, die geen vaste IP's hebben. Je kan moeilijk al je hoge poortjes naar binnen gaan forwarden he ;)
Kan je bij netmeeting niet opgeven op welke poortrange een verbinding gemaakt mag worden, net zoals bij icq?

Vragen:
komt die videostream van een beperkt aantal ip's ?
Kan je de poortrange opgeven?
Heb je merdere interne clients?
Heb je info over hoe zo'n verbinding opgebouwd wordt?
ALs ik me niet vergis was er voor ipchains iig een module voor netmeeting; voor iptables is die er (nog?) niet bij mijn weten.

Wat bedoel je verder precies met "wat is de beste manier om een gateway te draaien met iptables"?
Ik snap de vraagstelling niet helemaal goed, maar dat kan ook wel aan mij liggen ;)

Ik draai hier een aangepaste/omgebouwde versie van de TrinityOS firewall. Ofwel ik heb expliciete deny-rules in m'n firewall staan.
De meningen zijn daar nogal over verdeeld.
Sommige mensen zweren bij een zo minimaal mogelijke firewall (is wel iets voor te zeggen natuurlijk). Zij zetten dus de policy op REJECT/DROP en geven de expliciete poorten/hosts op waarop/waarnaar een verbinding mag plaatsvinden.
Dat laatste doe ik ook, alleen geef ik nog eens expliciet aan wat er allemaal niet mag, i.p.v. dat ik op de policy vertrouw.
Zo zal je bij mij in de firewall dus beschermingen vinden die bijvoorbeeld voor bepaald verkeer 3 dubbel op zouden kunnen zijn. Als laatste heb ik uiteraard een deny-all regel die al het verkeer afvangt wat ik niet expliciet heb toegestaan.

Ik moet de firewall eigenlijk in de toekomst nog wat meer state-full maken, maar daar heb ik nog niet echt veel zin in gehad. Misschien binnenkort, als ik er zin in heb.

Overigens is dat dus ook meteen een van de sterkste punten van netfilter. De mogelijkheid om aan de hand van de state van de verbinding beslissingen te maken.
Verder gebruik ik uiteraard de rate-limiting opties en ik wil ook nog mac-adres controle gaan gebruiken ooit in de toekomst.

Tja misschien zal je uit bovenstaande wel duidelijk geworden zijn, dat ik iptables ver prefereer boven ipchains. Simpelweg, omdat het beter in elkaar zit en meer mogelijkheden biedt.
Als je iets anders bedoelde met je vraag, dan hoor ik het wel :)

Verwijderd

Op zondag 29 juli 2001 17:41 schreef crashtest het volgende:

moet het niet --to-destination zijn ipv --to? ik gebruik zelf deze regel:


/sbin/iptables --append PREROUTING --table nat --protocol tcp --destination-port 3500:3520 --jump DNAT --to-destination 10.0.0.2
la ma.

/me schreef onzin.


Het mag beide zijn. Zo heb je ook nog to-port etc.

Verwijderd

Hahaha, wat een lap tekst ;-)

Iig, netfilter zit veel beter in elkaar idd
eeh wat ik bedoelde met de beste manier om nat uit te voeren, gebruik je masquerade, port fwd of port redir, is het hetbeste om dmv prerouting een masquerade rule aan te maken.. of kan je ook postrouting gebruiken? Al deze manieren hebben ervoor gezorgd dat ik kon surfen op m'n lokale netwerkje, maar ik vroeg me af wat eigenlijk DE manier was ;-)

En over netmeeting, hij gebruikt een aantal statische poorten, dat is geen probleem, maar de dynamische poorten worden van buitenaf geopend, de client aan de 'andere kant van de wereld' bepaald welke poorten gebruikt gaan worden. De firewall denkt dan 'ho, deze poorten moeten gefilterd worden'. Hier was idd een h323 module voor vroeger, maar dat was in de oude 2.2 kernels, de nieuwe 2.2(vanaf .13) zelfs nietmeer.. en je kan in netmeeting geen statische poorten instellen voor de videostream dus dat zuigt. eigenlijk zou het wel handig zijn als de firewall weet met welk ip hij verbinding heeft, en tussen die ip en himself alle poorten toelaat voor verbindingen.. desnoods in een range van 1024-65535.. dan zou netmeeting werken en beveiliging nog steeds geen probleem zijn. (wel trojant poorten droppen)

  • igmar
  • Registratie: April 2000
  • Laatst online: 29-06 18:56

igmar

ISO20022

Hmm.. werkt hier niet. Kan nog steeds niet connecten. Wat doe ik fout?

Ik heb 2 rules ingetikt. Die Prerouting rule en die Inputrule. ik wil dat 192.168.6.254:8080 doorgestuurd word naar 192.168.6.100:80.
Forwarding werkt alleen als het van de ene interface naar de andere geroutereerd word. Dat is bij bovenstaand verhaal niet het geval.

Verwijderd

weet iemand hier eigenlijk hoe je advanced routing, fast network adress translation in 2.4 kernel kan gebruiken? misschien dat daarbij het probleem met netmeeting opgelost wordt, aangezien een gewone router geen last heeft van het blokken van dynamische ip's ;)
Ik heb zelf nl. geen firewall nodig, het gaat mij alleen om het internet verdelen over 390 andere bewoners (in flat) en hetliefst moet het routen snel gaan ;-)

Verwijderd

Op maandag 30 juli 2001 09:02 schreef axkman ook een lap tekst ;)
Masquerading gebeurt sowieso in de POSTROUTING chain (=SNAT).
Als je een dynamisch ip hebt, dan zou ik kiezen voor masquerading in de POSTROUTING chain, als je een statisch IP hebt, dan zou ik een gewone POSTROUTING SNAT chain erin zetten.
Dit is de manier waarop ik het altijd doe. Of dit "DE" manier is, weet ik niet. Het is in ieder geval wel de meest gebruikelijke manier ;)

Je zou met netmeeting eens moeten kijken of je niet met behulp van packet-mangling op basis van de state van een verbinding iets kan doen.
Ik gok, dat die dynamische poorten richting je server pas geopend worden op basis van een verbinding op een andere poort. Ofwel dit betekent dat de nieuwe verbinding (state=RELATED) die nu gemaakt wordt, gemaakt wordt op basis van een reeds bestaande verbinding (state=ESTABLISHED).

Ofwel de nieuwe verbinding heeft niet state=NEW, maar state=RELATED.
Maar daarvoor zul je toch echt wat verder in het protocol moeten duiken, ben ik bang.

Wat de advanced routing en fast network adres translation; daarvoor zul je in eerste instantie support in de kernel moeten bakken ;)

  • odysseus
  • Registratie: Augustus 2000
  • Laatst online: 11:03

odysseus

Debian GNU/Linux Sid

Op maandag 30 juli 2001 09:02 schreef axkman het volgende:
Eigenlijk zou het wel handig zijn als de firewall weet met welk ip hij verbinding heeft, en tussen die ip en himself alle poorten toelaat voor verbindingen.. desnoods in een range van 1024-65535.. dan zou netmeeting werken en beveiliging nog steeds geen probleem zijn. (wel trojant poorten droppen)
Een scriptje in de trant van:
code:
1
2
3
4
5
6
/my/path/netmeeting_prog &
sleep 10 #zodat verbinding gemaakt is
$DEST_IP = netstat -a | grep poortnummer_van_uitgaande_verbinding_voor_netmeeting | grep IP
iptables -A INPUT -s $DEST_IP -d MIJN_IP -j ACCEPT #eventueel uitbreiden voor een bepaalde range van poorten
###VERGEET NIET DEZE RULE BIJ AFSLUITEN WEER TE DELETEN
###BASH HEEFT MISSCHIEN IETS ALS FINALIZE, ANDERS EEN DEAMON DIE DE RULE VERWIJDERT ZODRA HET PROGRAMMA GESTOPT IS.

zou volgens mij kunnen werken.

[dit is dus pseudocode...zelf even afmaken]

Leven is het meervoud van lef | In order to make an apple pie from scratch, you must first create the universe.


Verwijderd

Nelske> aha bedankt ik ben weer een beetje de goede richting in geschopt, nu kan ik wel weer ff fijn verder vogelen wat de masquerade betreft ;)
en het is idd zo dat netmeeting een paar verbindingen op verschillende poorten heeft lopen en daarna dynamisch poorten wil gebruiken.. dus dat verhaal van connection based beslissen is erg leuk. wilde er al mee experimenteren maar een tel rek. van 760 p/2mnd hield me tegen ;( (en een vader met een kniptang gericht op m'n telefoonaansluiting ;)

over advanced router en fast nat, ik het idd in de kernel gebakken maar ik zie op internet vrij weinig linkjes die uitleggen wat je er mee kan? het lijkt me ideaal om gewoon echt een router neer te zetten aangezien er strax 390 gebruikers achter komen te hangen die allemaal op 100mbit hun inet gegevens willen opvragen... misschien dat als ik advancedrouter+fastnat gebruik ook geen last heb van dynamischpoorten blokken.

Verwijderd

Ghehehe LOL :D
Vaders met kniptangen zijn niet leuk ;)

Ik zal wel eens rondkijken of ik iets over netmeeting kan vinden (ik vind dat soort dingetjes ook altijd wel geinig).

Wat betreft Advanced Routing en FastNAT kan ik je denk ik niet helpen. Heb ik nog nooit mee gespeeld.

Verwijderd

Aha thanks, in beide gevallen *D
Ik zoek nog ff over fast nat op inet, en mocht ik wat vinden dan post ik het wel gewoon
Pagina: 1