Ejecute todo el tráfico en línea a través de una conexión VPN PPTP


16

Me encantaría ejecutar todo el tráfico saliente (especialmente torrent y web) a través de una conexión VPN PPTP (para ser específico, una VPN StrongVPN.com). Todo lo necesario para la configuración y más importante para iniciar la conexión VPN debe hacerse a través de SSH, por lo que todo debe estar basado en la línea de comandos .

Mi objetivo establecido es crear un script para lograr un script VPN siempre conectado automáticamente.

Solo para estar seguro: no se trata de configurar un servidor PPTP en el pi (hay muchos tutoriales para eso) sino de conectarse a un servidor PPTP.


¿Cómo desconectar? Establecí la conexión pero no sé cómo desconectarme ..
— Jorrick Sleijster

Respuestas:


19

Para comenzar, necesitará instalar pptpclient, esto se puede lograr mediante:

sudo apt-get install pptp-linux

A continuación, cree un archivo en / etc / ppp / peers con nombre arbitrario y los siguientes contenidos:

pty "pptp $VPNHOSTNAME --nolaunchpppd --debug"
name $USERNAME
password $PASSWORD
remotename PPTP
require-mppe-128
require-mschap-v2
refuse-eap
refuse-pap
refuse-chap
refuse-mschap
noauth
debug
persist
maxfail 0
defaultroute
replacedefaultroute
usepeerdns

¿Dónde $VPNHOSTNAMEestá su nombre de host VPN, $PASSWORDsu contraseña VPN y $USERNAMEsu nombre de usuario VPN?

Después de hacerlo, debe hacer sudo pon $FILENAMEdonde $FILENAMEestá el nombre del archivo que guardó anteriormente.

Para iniciar su cliente VPN en el arranque, puede seguir las instrucciones en http://pptpclient.sourceforge.net/howto-debian.phtml (punto 8 o 9, sección de configuración manual)

Un método alternativo para hacer que su cliente VPN se ejecute en el arranque es crear un script que /etc/init.dcontenga estos contenidos:

#! /bin/sh

case "$1" in
  start)
    pon $/etc/ppp/peers/FILENAME
    echo "PPTP Started"
    ;;
  stop)
    poff $/etc/ppp/peers/FILENAME
    echo "PPTP Stopped."
    ;;
  *)
    echo "Usage: /etc/init.d/blah {start|stop}"
    exit 1
    ;;
esac

exit 0

Entonces corre:

update-rc.d [filename of script] defaults

Para que se ejecute al inicio.


Impresionante, me alegraste el día. Una pregunta de seguimiento: ¿Hay alguna forma de verificar si la conexión se ha conectado dentro de un script?
— terman

@terman Hmm, no lo sé, pero al leer los documentos creo que no. Sin embargo, descubrí una mejor manera de ejecutar la VPN en el arranque, ahora la vincularé.
— hifkanotiks

Increíble, funcionó para mí. ¿Sabes cómo hacer que esto funcione con un túnel dividido? De modo que solo se envían solicitudes locales a través de la VPN y la mayor parte de la navegación web se realiza a través de la conexión regular. Intenté eliminarlo defaultroutey replacedefaultrouteno funcionó. ¿Tienes alguna idea al respecto?
— Scoop

cuando ejecuto esto, aparece el error En el archivo / etc / ppp / peers / provider: opción no reconocida '/ dev / modem'

3
Tendrá que hacerlo chmod +x [filename of script]antes de correrupdate-rc.d
— defectuoso el
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.