Redes Privadas Virtuales (VPN) Mini Como
Andreu Sánchez Costa -
[email protected]
Internet Web Serveis, S.L.
Departamento Administración y Gestión de Sistemas
Redes Privadas Virtuales (VPN) Mini Como
por Andreu Sánchez Costa -
[email protected]
Este documento esta bajo licencia GPL
Tabla de contenidos
1. PoPToP y PPTP ..................................................................................................................7
Qué és PPTP..................................................................................................................7
Qué és PoPToP..............................................................................................................7
Créditos del PoPToP ....................................................................................................7
2. Instalación y configuración.............................................................................................9
Requerimientos del sistema........................................................................................9
Instalación de PPP (y MSCHAPv2/MPPE)..............................................................9
Instalación del parche para el kernel.......................................................................10
Instalación del PoPToP ..............................................................................................11
3. Agradecimientos .............................................................................................................15
Mi gente .......................................................................................................................15
v
vi
Capítulo 1. PoPToP y PPTP
$Date: 2002/09/20 18:36:52 $
Este documento describe la instalación, configuración y puesta en marcha de PoPToP
(pptp), un servidor de redes privadas virtuales (VPN) bajo licencia GPL. Este és mi
primer documento, así que ruego me perdonéis cualquier fallo que podáis encontrar
en este. En breve tengo pensado traducir este mini-cómo al catalán ya que es mi
lengua materna, claro está que cualquier cambio en la documentación, la mantendría
en las dos versiones.
Qué és PPTP
Diseñado como una extensión del PPP, PPTP encapsula paquetes PPP dentro de data-
gramas IP para la transmisión a través de Internet o otras redes públicas basadas en
TCP/IP. Aunque nos duela decirlo, fue diseñado y propuesto para ser estándar por
Microsoft en el año 1996, aunque también contribuyeron Ascend Communications,
ECI Telematics, 3Com/Primary Access y U.S.Robotics. PPTP puede ser usado para
tunelizar los protocolos IP, IPX y NetBEUI.
Para más
http://www.networksorcery.com/enp/rfc/rfc2637.txt/1
referencias
respecto
hay
un
rfc
al
sobre
PPTP,
Qué és PoPToP
PoPToP es la solución para servidores PPTP bajo GNU/Linux. PoPToP permite a
servidores linux funcionar correctamente en entornos PPTP VPN. La versión actual
soporta clientes PPTP Windows 95/98/NT/2000 y clientes PPTP Linux.
PoPToP es software libre GNU.
Créditos del PoPToP
PoPToP fue empezado a desarrollar por Matthew Ramsay bajo el control de Moreton
Bay Ventures. A mediados de Marzo del año 1999 se liberó el codigo fuente bajo la
licencia GNU GPL.
La gente que ha hecho que PoPToP sea hoy en dia lo que és son entre muchos otros,
Kevin Thayer, David Luyer y Peter Galbavy.
Notas
1. http://www.networksorcery.com/enp/rfc/rfc2637.txt
7
Capítulo 1. PoPToP y PPTP
8
Capítulo 2. Instalación y configuración
$Date: 2002/09/23 10:39:22 $
Requerimientos del sistema
- Una distribución de GNU/Linux actual (RedHat, Debian, etc.) con un kernel re-
ciente, aunque funciona con kernels 2.0.x y 2.2.x, recomiendo el uso de un kernel
2.4.x.
- PPP 2.3.8 mínimo, aunque muchas distribuciones actuales ya llevan 2.4.x, y aparte
necesitaremos el parche para el ppp de MSCHAPv2/MPPE si queremos autenti-
cación y encriptación compatible con los clientes de Micro$oft.
- Parche MPPE para el kernel, soportados como ya he dicho anteriormente, 2.0.x, 2.2.x
y 2.4.x.
- Servidor PPTP para GNU/Linux, PoPToP.
Instalación de PPP (y MSCHAPv2/MPPE)
Dado que sino queremos soporte de compatibilidad MSCHAPv2/MPPE para Mi-
cro$oft, no nos hará falta recompilar el paquete PPP, omitire ese paso y explicaré la
instalación del parche a continuación.
- Necesitaremos el código fuente del demonio PPP, que podremos bajar de:
ftp://ftp.samba.org/pub/ppp/1
ftp://cs.anu.edu.au/pub/software/ppp2
También debemos recordar que si tenemos una distribución GNU/Linux que soporta
el formato de empaquetamiento RPM (RedHat por ej.), podremos descargarnos el de-
monio PPP con el parche ya incluido y compilado, un buen sitio para descargarnoslo
es planetmirror, que entre otros, contiene algunos de los paquetes necesarios para el
soporte de autenticación y encriptación MSCHAPv2/MPPE.
http://planetmirror.com/pub/mppe/3
Seguidos los pasos anteriores, ahora tendríamos que tener los siguientes paquetes:
ppp-2.4.1.tar.gz
ppp-2.4.1-openssl-0.9.6-mppe-patch.gz
ppp-2.4.1-3mppe.i386.rpm (Las distros con soporte RPM solo necesitan este paquete)
Asumiendo que habéis descargado/movido los paquetes a /usr/local/src y que nue-
stro directorio actual es /usr/local/src, haremos lo siguiente:
- Sólo para instalación desde código fuente -
$ tar xvfz ppp-2.4.1.tar.gz
$ gzip -d ppp-2.4.1-openssl-0.9.6-mppe.patch.gz
# patch -p0 < ppp-2.4.1-openssl-0.9.6-mppe.patch cd ppp-2.4.1
Acto seguido pasaremos a configurar, compilar e instalar el ppp:
9
Capítulo 2. Instalación y configuración
$ ./configure
$ make
# make install (como root)
Necesitamos tener el ppp compilado como módulo, así que añadiremos las siguientes
lineas al fichero /etc/modules.conf:
alias ppp ppp_generic
alias ppp-compress-21 bsd_comp
alias ppp-compress-24 ppp_deflate
alias ppp-compress-26 ppp_deflate
- Sólo para instalación desde código fuente -
Si nuestro sistema soporta el formato de empaquetamiento RPM, los pasos a seguir
para instalar el paquete ppp con soporte MSCHAPv2/MPPE, es el siguiente:
# rpm -e --nodeps ppp
# rpm -ivh ppp-2.4.1-3mppe.i386.rpm
Nota. Aplicamos nodeps en la desinstalación de ppp, ya que en algunas distribu-
ciones, por ejemplo RedHat, hay algunos paquetes como rp3, rp-pppoe, wvdial, etc,
que dependen de este paquete, no es relevante, ya que acto seguido instalamos el
paquete nuevo y los programas seguiran funcionando correctamente.
Seguidamente
anteriormente descritas
/etc/modules.conf
añadiremos
al fichero
lineas
las
Instalación del parche para el kernel
he
dicho
ya
soporte
podemos
incorporar
anteriormente,
Como
de
MSCHAPv2/MPPE en kernels tanto 2.0.x, 2.2.x y 2.4.x, pero dado que, casi todas las
distribuciones actuales de GNU/Linux incorporan ya un kernel 2.4.x, explicaré solo
la aplicación del parche en este último kernel, concretamente 2.4.19.
Necesitamos bajarnos (sino lo tenemos), el código fuente del kernel y el parche para
este, lo haremos desde estas direcciones, o de otros mirrors, no importa:
- Kernel v2.4.19 desde ftp://ftp.kernel.org4
- Parche para el kernel desde http://public.planetmirror.com/pub/mppe/5
En cuanto terminemos las descargas, tendremos los dos siguientes archivos:
linux-2.4.19.tar.bz2
linux-2.4.19-openssl-0.9.6b-mppe.patch.gz
Asumiendo que tenemos los anteriores archivos en el directorio /usr/src, proceder-
emos a la descompresión del kernel y aplicación del parche:
# tar xvfj linux-2.4.19.tar.bz2
# ln -s -d linux-2.4.19 linux
# gzip -d linux-2.4.19-openssl-0.9.6b-mppe.patch.gz
# patch -p0 < linux-2.4.19-openssl-0.9.6b-mppe.patch
10
Capítulo 2. Instalación y configuración
Ahora tenemos que compilar el kernel para que se generen los drivers de PPP con el
nuevo soporte MSCHAPv2/MPPPE, no explicaré la compilación de un kernel ya que
está explicado en muchos Cómos que os podeis descargar desde TLPD-ES o cualquier
otro sitio. Solo anotar, que necesitamos compilar el driver de PPP como módulo.
En cuanto tengamos el kernel compilado y antes de rebotar nuestro máquina, añadi-
remos una última linea al fichero /etc/modules.conf:
alias ppp-compress-18 ppp_mppe
Seguidamente procedemos a rebotar la máquina con el nuevo kernel (y cruzamos los
dedos ;-)).
Instalación del PoPToP
La página oficial del PoPToP (http://poptop.lineo.com/download_pptp.html6), será
el punto indicado para bajarnos el servidor PPTP, la versión estable a día de hoy es
la 1.0.1, que descargaremos.
La instalación y compilacion del poptop es rápida y sencilla:
$ tar xvfz pptpd-1.0.1.tar.gz
$ cd pptpd-1.0.1
Aquí podemos optar por compilar el PoPTop con soporte de asignación de ips
dinámicas (por defecto) o con soporte de ips estáticas.
# Esto sería compilación para ips dinámicas
$ ./configure
$ ./configure --with-pppd-ip-alloc # Soporte ips estáticas
$ make
# make install
Al hacer el make install hemos generado el binario del PoPToP y un archivo de con-
figuración de éste mismo /etc/pptpd.conf, que editaremos y modificaremos para
acoplarlo a nuestras necesidades, una configuración típica dejaría el fichero así:
# Fichero donde estan las opciones del PPP, por defecto éste mira en
# /etc/ppp/options
option /etc/ppp/options.pptp
# Activamos el debug, muy útil para resolver posibles problemas en el ini-
cio del
# servidor pptp
debug
# Localip es la ip local de nuestro servidor pptp
# Remoteip sirve para asignar un pool de ips que dariamos en una conex-
ión VPN
# Por ejemplo aquí nos reservaremos 20 ips para asignar estáticamente a usuarios,
11
Capítulo 2. Instalación y configuración
# nos será muy util en diferentes escenarios, que en la próxima ver-
sión explicaré.
localip 192.168.0.1
remoteip 192.168.0.22-254
# Listen sirve para definir en que interfaces va a escuchar el servi-
dor pptp, sinó
# asignamos ninguno, éste escuchará en todos los interfaces.
# En este ejemplo sólo queremos que escuche las conexiones que ven-
gan del interface
# eth0, que es el interface de conexión a internet.
listen 195.234.234.234 # Ip ficticia
Crearemos el fichero /etc/ppp/options.pptp:
lock
de
Comentarios de: Redes Privadas Virtuales (VPN) Mini Como (0)
No hay comentarios