PPTP VPN forbindelse via CLI

Skrevet af: Patrick Kerwood

Dette er en guide til opsætning af en PPTP VPN forbindelse, kun via CLI. Guiden er ideel til eksempelvis en headless server.
I denne guide har jeg brugt VyprVPN fra GoldenFrog.com

Efter min mening tilbyder de et godt produkt til en fornuftig pris og har, i skrivende stund, 7 dages fortrydelses ret, hvis ikke man er tilfreds. De kan i hvertfald anbefales.

Installation

Start med at installer pptp-linux.
apt-get install pptp-linux

Opsætning

Opret en ny fil i /etc/ppp/peers/ og copy/paste nedenstående oplysninger.
nano /etc/ppp/peers/VPN-NAVNremotename VPN_NAVN
linkname VPN-NAVN
ipparam VPN-NAVN
pty "pptp VPN-URL.com --nolaunchpppd"
name VPN-LOGIN_NAVN
usepeerdns
require-mppe
refuse-eap
noauth
file /etc/ppp/options.pptp

  • VPN-NAVN er et fiktivt kalde navn du skal bruge senere.
  • VPN-URL.com er den URL du skal forbinde til.
  • VPN-LOGIN-NAVN er dit login til din VPN konto.

Åben /etc/ppp/chap-secrets og tilføj dine bruger oplysninger.
nano /etc/ppp/chap-secrets
Tilføj en linje i filen. Den skal se således ud.
VPN-LOGIN-NAVN VPN-NAVN VPN-PASSWORD *

  • VPN-LOGIN-NAVN er dit login til din VPN konto.
  • VPN-NAVN Er det samme fiktive navn som du brugte i overstående trin.
  • VPN-PASSWORD Password til din VPN konto.
  • * Husk denne stjerne!!!

Routing

Så skal der oprettes to filer. Det ene er et script der kørers når man opretter forbindelse og det er andet skal kørers når man lukker forbindelse.

Opret det første i /etc/ppp/ip-up.d/, kald den vpn-up og indsæt nedenstående script.
nano /etc/ppp/ip-up.d/vpn-up#!/bin/bash
H=`ps aux | grep 'pppd pty' | grep -v grep | awk '{print $14}'`
DG=`route -n | grep UG | awk '{print $2}'`
DEV=`route -n | grep UG | awk '{print $8}'`
route add -host $H gw $DG dev $DEV
route del default $DEV
route add default dev ppp0

Gør scriptet executable.
chmod +x /etc/ppp/ip-up.d/vpn-up

Opret derefter den anden fil i /etc/ppp/ip-down.d/, kald den vpn-down og indsæt nedenstående script.
nano /etc/ppp/ip-down.d/vpn-down#!/bin/bash
H=`route -n | grep UGH | awk '{print $1}'`
DG=`route -n | grep UGH | awk '{print $2}'`
DEV=`route -n | grep UGH | awk '{print $8}'`
route del -host $H
route add default gw $DG dev $DEV

Gør scriptet executable.
chmod +x /etc/ppp/ip-down.d/vpn-down

Opret forbindelsen

Så er du faktisk klar til at oprette forbindelsen.
Første gang vil jeg anbefale at starte den i nodetach og debug mode for at finde eventulle fejl. VPN-NAVN er det samme fiktive kalde navn som du har brugt i de sidste par trin.
pon VPN-NAVN nodetach debug

Se om dit ppp0 interface er kommet op, ved at åbne et andet terminal vindue og kør kommandoen:
ip addr
Eller følgende hvis du bruger en Debian fork som Ubuntu fx.
ifconfig

Eventuel hop ind på http://myip.dk for at tjekke om din eksterne IP er ændret til din VPN udbyders.

For at starte forbindelsen i baggrunden sletter du bare nodetach og debug, så din kommando ser således ud.
pon VPN-NAVN
For at stoppe forbindelsen igen.
poff


28 maj 2013   | Alle · Debian · Sikkerhed

Leave a Reply