OpenBSD Battlecom Forwarding

Pagina: 1
Acties:

  • Zydell
  • Registratie: September 2000
  • Laatst online: 28-11 07:24

Zydell

* * * * *

Topicstarter
lo

Ik deel kabelinternet met een server waar OpenBSD op staat. Nou wil ik met 1 client achter de server kunnen inloggen op een Battlecom server en moet ik dus poorten forwarden. Ik heb geprobeerd linux forwarding regels over te zetten, maar ik krijg nog steeds een foutmelding als ik wil inloggen op een server :(
Weet iemand wat ik moet toe voegen om het wel te laten werken?

pf.conf:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
nat on ne3 from 192.168.0.0/24 to any -> @.ho.me.ip

block in log quick on ne3 all
block in log quick on ne3 from 0.0.0.0/8 to any
block in log quick on ne3 from 10.0.0.0/8 to any
block in log quick on ne3 from 172.16.0.0/12 to any
block in log quick on ne3 from 192.168.0.0/24 to any

block out quick on ne3 from any to 0.0.0.0/8
block out quick on ne3 from any to 10.0.0.0/8
block out quick on ne3 from any to 172.16.0.0/12
block out quick on ne3 from any to 192.168.0.0/24

block in quick on ne3 proto tcp from any to any
block in quick on ne3 proto icmp from any to any
block in quick on ne3 proto udp from any to any

pass out quick on ne3 proto tcp from any to any flags S keep state
pass out quick on ne3 proto udp from any to any keep state
pass out quick on ne3 proto icmp from any to any keep state


Deze4 regels werken niet :(

code:
1
2
3
4
rdr on ne3 proto tcp from any to ne3 port 2300:2400 -> 192.168.0.3 port 2300:2400
rdr on ne3 proto udp from any to ne3 port 2300:2400 -> 192.168.0.3 port 2300:2400
rdr on ne3 proto tcp from any to ne3 port 47624 -> 192.168.0.3 port 47624
rdr on ne3 proto udp from any to ne3 port 47624 -> 192.168.0.3 port 47624

[ Voor 8% gewijzigd door Zydell op 02-01-2003 21:07 ]


  • miniBSD
  • Registratie: Augustus 2002
  • Laatst online: 20-12-2023
Ik weet niet de poorten van Battlecom, maar dit klopt al niet:
code:
1
block in log quick on ne3 all

maar moet zijn
code:
1
block in log on ne3 all

zodat deze niet uit de firewall chain springt. In jouw geval maakte dat niets uit, omdat je toch geen inkomend verkeer toelaat. Dus de inkomende poorten moeten naar je client(s) toe moeten open staan, nu worden alle poorten geblokkeerd.
Het zou zoiets moeten zijn:
code:
1
 pass in on ne3 from any to any port = 47624

N.B. dit is maar een voorbeeldje en zal niet werken want je moet ook de andere poorten erbij zetten.

Waarom heb je deze regels erin staan ?
block in quick on ne3 proto tcp from any to any
block in quick on ne3 proto icmp from any to any
block in quick on ne3 proto udp from any to any
Deze doen namelijk niets. De firewall staat namelijk al standaard dicht, zie code fragment 2.

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


  • Zydell
  • Registratie: September 2000
  • Laatst online: 28-11 07:24

Zydell

* * * * *

Topicstarter
Mjah ik werd al vrij snel moe van de pf.conf howto doorlezen :S dus ik had het een beetje snel gedaan, bedankt voor je antwoord ik zal het een en ander veranderen, khad al een idee dat ik ook extra regels moest toevoegen, heb ik ook wel gedaan tijdens 1 van m'n mislukte pogingen, maar dat werd dus geblokt :)

Verwijderd

Neem aan dat je 3.2 stable draait.

RDR moet na NAT en voor PASS/BLOCK
Je gebruikt zo te zien geen srub; zou ik wel doen.

flags S wordt ook afgeraden.

http://www.xs4all.nl/~hanb/configs/
daar staan enkele interessante voorbeelden. Die zou ik even checken.

  • miniBSD
  • Registratie: Augustus 2002
  • Laatst online: 20-12-2023
Als je 'man 5 pf.conf' ingeeft, daar staan wat voorbeelden in en verder kan ik je
pf howto ook aanbevelen.
Verder is het afgeleid van ipfilter en daar is ook veel informatie over te vinden.

De 'truuk' is dus de inkomend verkeer op de poorten toe te staan.

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


  • Zydell
  • Registratie: September 2000
  • Laatst online: 28-11 07:24

Zydell

* * * * *

Topicstarter
Ik zal m'n pf.conf nu meteen wel even netjes maken, bedankt voor die voorbeeld pf.conf's! Battlecom geeft een beetje een wazige error, na 'Negotiating Compression' (duur vrij lang) krijg ik 'There was an error in the manager subsystem. You have been disconnected.' Maar dat zal wel aan battlecom instellingen liggen ofzo :)

  • Zydell
  • Registratie: September 2000
  • Laatst online: 28-11 07:24

Zydell

* * * * *

Topicstarter
Hmm het werkt nog steeds niet.
Ik heb het idee dat m'n regels nog steeds niet goed zijn. Ik heb nu de volgende pf.conf:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
nat on ne3 from 192.168.0.0/24 to any -> at.ho.me.ip

rdr on ne3 proto tcp from any to ne3 port 2300:2400 -> 192.168.0.3 port 2300:2400
rdr on ne3 proto udp from any to ne3 port 2300:2400 -> 192.168.0.3 port 2300:2400
rdr on ne3 proto tcp from any to ne3 port 47624 -> 192.168.0.3 port 47624

block in log on ne3 all

block out quick on ne3 inet from any to 0.0.0.0/8
block out quick on ne3 inet from any to 10.0.0.0/8
block out quick on ne3 inet from any to 172.16.0.0/12
block out quick on ne3 inet from any to 192.168.0.0/24

pass in quick on ne3 proto tcp from any to 192.168.0.3 port = 47624
pass in quick on ne3 proto udp from any to 192.168.0.3 port 2299 >< 2401
pass in quick on ne3 proto tcp from any to 192.168.0.3 port 2299 >< 2401

pass out quick on ne3 proto tcp all keep state
pass out quick on ne3 proto udp all keep state



als ik pfctl -ss doe tijdens het connecten krijg ik 5 verbindingen waarvan 2 verbindingen met 'NO TRAFFIC':

code:
1
2
3
4
5
tcp 192.168.0.3:3558 -> at.ho.me.ip:59484 -> bc.ser.ver.ip:47624       TIME_WAIT:TIME_WAIT
tcp 192.168.0.3:2300 <- at.ho.me.ip:2300 <- bc.ser.ver.ip:2414       ESTABLISHED:ESTABLISHED
tcp 192.168.0.3:3559 -> at.ho.me.ip:50336 -> bc.ser.ver.ip:2300       ESTABLISHED:ESTABLISHED
udp 192.168.0.3:3557 -> at.ho.me.ip:60604 -> bc.ser.ver.ip:47624       SINGLE:NO TRAFFIC
udp 192.168.0.3:2350 -> at.ho.me.ip:50189 -> bc.ser.ver.ip:2350       SINGLE:NO TRAFFIC

Verwijderd

Opmerking: port.. en dan keep state.
je maakt geen gebruik van flags.

Zou het verder niet weten. Als ik jou was zou ik zo'n rule nemen van die site die ik eerder postte, dan die gebruiken, en daar aanpassingen op zetten. Dat heb ik ook gedaan en dat is mij goed bevallen.

pfctl -f /etc/pf.conf geeft geen error?

Opvallend: beide UDP rules zeggen No Traffic.

Even over dit:
pass in quick on ne3 proto tcp from any to 192.168.0.3 port = 47624
pass in quick on ne3 proto udp from any to 192.168.0.3 port 2299 >< 2401
pass in quick on ne3 proto tcp from any to 192.168.0.3 port 2299 >< 2401

rule #2 en rule #3 kun je afkorten met { tcp, udp }

Note: debugging tip! gebruik tcpdump -n -e -ttt -i pflog0 om te kijken wat je firewall blocked! Moet je ook de log flag in je rules meegeven.

  • Zydell
  • Registratie: September 2000
  • Laatst online: 28-11 07:24

Zydell

* * * * *

Topicstarter
thx ik zal er weer even mee bezig gaan :)
Ik kon eerder niet goed pf.conf veranderen wegens schijfruimte problemen in /var (inmiddels opgelost ^_^ zie [rml][ OpenBSD]Schijfruimte probleem in /var[/rml])

[ Voor 3% gewijzigd door Zydell op 05-01-2003 11:54 ]


  • Zydell
  • Registratie: September 2000
  • Laatst online: 28-11 07:24

Zydell

* * * * *

Topicstarter
RAAH! het werkt eindelijk!

hieronder staan de regels die ik nu extra heb in pf.conf:

/etc/pf.conf:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
  ext_if = "ne3"
  int_if = "rl0"
  bc_client = "192.168.0.3"

# nat rules

  rdr on $ext_if inet proto { tcp, udp } from any to $ext_if port 2300:2400 -> $bc_client port 2300:2400
  rdr on $ext_if inet proto tcp from any to $ext_if port 47624 -> $bc_client port 47624

# pf rules

  pass in log quick on $ext_if inet proto { tcp, udp } from any to $bc_client port 2299 >< 2401
  pass in log quick on $ext_if inet proto { tcp, udp } from any to $bc_client port = 47624
  pass out log quick on $ext_if inet proto udp from $bc_client to any port 47624
  pass out log quick on $ext_if inet proto udp from $bc_client to any port 2299 >< 2401

[ Voor 47% gewijzigd door Zydell op 05-01-2003 14:08 ]


Verwijderd

Top! Bij de laatste 4 zie ik 'pass in log' wil je dat verkeer wel allemaal loggen of was dat tijdelijk? Je zou verder nog naar antispoof en scrub kunnen kijken en inkomend verkeer alleen naar enkele porten laten toelaten + de rest blocken (op externe interface: policy alles inkomend block en daarna pass in quick naar die en die inkomende port. Moet je dus ook BF tcp/udp ports die je forward definen dat het naar de externe mag met pass in quicks) :) succes!
Pagina: 1