PPTP server onder Debian linux

Pagina: 1
Acties:

  • tweakerbee
  • Registratie: Maart 2000
  • Laatst online: 12-02 02:38
Ben bezig met het opzetten van PPTPD onder Debian linux. Heb inmiddels de server lopende, met MPPE ondersteuning.

Situatie is nu als volgt:

- Internet gaat met ADSL4Linux over een PPTP-client (ppp0) verbinding, over eth0
- Netwerk staat op eth1 welke allemaal gebruikmaken van de ADSL verbinding van de linux machine.
- Binnenkomende VPN connecties komen op ppp[1-9]

Er is een firewall rule aangemaakt om GRE (protocol 47) en TCP pakketten van 1723 zowel inkomend als uitgaand toe te staan.
Ik kan dan ook een verbinding maken (hoewel de eerste keer dat ik het probeer steevast een error optreedt - kan computer niet vinden-, wellicht dat ik iets langer moet wachten na het inbellen).

het probleem
Is routing en firewalling. Ik wil het liefst de twee "lokale" netwerken aan elkaar knopen. Dus het VPN 192.168.0.x netwerk, en het interne 192.168.1.x netwerk.
Nu dropt mijn firewall alles wat over ppp1 komt als geSPOOFt, omdat het source 192.168.x.x range heeft.

Mijn kennis van iptables en routes is te mager om het helemaal zelf uit te zoeken.
De site van het pakket zelf (pptpd) kon me ook niet verder helpen: http://pptpclient.sourcef...CTION00050000000000000000


mogelijk nuttige tabelletjes
code:
1
2
3
4
5
6
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
195.190.249.3   *               255.255.255.255 UH    0      0        0 ppp0
localnet        *               255.255.255.0   U     0      0        0 eth0
192.168.1.0     *               255.255.255.0   U     0      0        0 eth1
default         195.190.249.3   0.0.0.0         UG    0      0        0 ppp0


code:
1
2
3
4
5
/etc/PPTPD.conf (standaard)
bcrelay eth1 // DIT IS NIET STANDAARD, echoes broadcast packets voor SMB blocks

localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245


Firewall status:
http://home.wxs.nl/~cbierman/firewall.status.txt

[ Voor 3% gewijzigd door tweakerbee op 28-01-2005 11:55 . Reden: firewall status toegevoegd ]

You can't have everything. Where would you put it?


  • Buffy
  • Registratie: April 2002
  • Laatst online: 26-12-2024

Buffy

Fire bad, Tree pretty

Het probleem is dat het door jouw gebruikte firewall script alle ppp interfaces als externe interfaces (gekoppeld aan het boze internet) ziet en oa alle pakketjes door de CHECK chain stuurt welke op spoofing checkt.
Als je het script kan aanpassen dan zou je alle ppp+ kunnen vervangen door ppp0 zodat alleen je internet verbinding als externe interface wordt gezien. Echter dan zul ook nog voor de VPN interfaces (ppp1-9) rules moeten invoeren om aan te geven wat die wel en niet mogen.

Misschien kan je in het firewall script/prog de ppp1 - ppp9 interfaces opgeven als interne interfaces (hou er wel rekening mee dat je dan de VPN verbindingen de zelfde "privileges" geeft als je interne netwerk).


PS: die IANA rules in de CHECK chain zijn erg onderhouds gevoelig omdat deze kunnen worden uitgedeeld:
code:
1
2
79      13   624 LOG        all  --  *      *       85.0.0.0/8           0.0.0.0/0          LOG flags 0 level 5 prefix `IANA: ' 
80      13   624 LDROP      all  --  *      *       85.0.0.0/8           0.0.0.0/0
route: 85.0.0.0/13
descr: Provider: Swisscom IP-Plus
origin: AS3303
mnt-by: CH-UNISOURCE-MNT
changed: abuse@ip-plus.net 20050127
source: RIPE

That which doesn't kill us, makes us stranger - Trevor (AEon FLux)
When a finger points at the moon, the imbecile looks at the finger (Chinese Proverb)


  • Tomaat
  • Registratie: November 2001
  • Laatst online: 21-01 17:11
Ik heb zelf ook PPTP onder Debian draaien, maar dan via een Chello lijn. De routing heb ik opgelost door gewoon zowel het VPN als het LAN netwerk in het zelfde subnet te houden. Dan gaat het goed :)

  • tweakerbee
  • Registratie: Maart 2000
  • Laatst online: 12-02 02:38
Vandaag pas weer tijd en zin gehad om naar het probleem te kijken.

Het grote probleem zat in de FORWARD chain. Die dropte ook pakketten als ze niet vanaf eth1 kwamen en naar ppp0 gingen. De hele check chain wordt nu nu ook gewono gepasseerd voor interface ppp1.

Inmiddels werkt het, gewoon twee regels toegevoegd die in de forward chain het verkeer doorlaat:

code:
1
2
iptables -I FORWARD -i ppp1 -o eth1 -j ACCEPT
iptables -I FORWARD -i eth1 -o ppp1 -j ACCEPT

You can't have everything. Where would you put it?