|
|
Línea 1: |
Línea 1: |
− | {{Title|Configuración de túneles PPTP en Ubuntu}}
| |
| | | |
− | __TOC__
| |
− |
| |
− | Se describe a contiación los procedimiento para configurar el acceso mediante '''PPTP''' a la intranet del DIT sobre Ubuntu.
| |
− |
| |
− | Nota: si por alguna causa se deja de funcionar correctamente la red, puede restaurarse su funcionamiento mediante:
| |
− |
| |
− | /etc/init.d/networking restart
| |
− |
| |
− |
| |
− | == Ubuntu 6.06 (Dapper Drake) ==
| |
− |
| |
− | === Instalación ===
| |
− |
| |
− | Procedimiento para configurar el acceso mediante '''PPTP''' a la intranet del DIT sobre un Ubuntu 6.06:
| |
− |
| |
− | <ul>
| |
− | <li> Instalar '''pptp-linux''' </li>
| |
− |
| |
− | apt-get install pptp-linux
| |
− |
| |
− | <li> Instalar '''pptpconfig''' </li>
| |
− |
| |
− | <ol>
| |
− | <li> Añadir la fuente de pptpconfig a /etc/apt/sources.list:</li>
| |
− |
| |
− | echo -e '\n# PPTP GUI\ndeb http://quozl.netrek.org/pptp/pptpconfig ./' >> /etc/apt/sources.list
| |
− |
| |
− | <li> Añadir el repositorio "universe" si no está disponible ya. Para ello, descomentar la línea siguiente en /etc/apt/sources.list:</li>
| |
− |
| |
− | deb http://es.archive.ubuntu.com/ubuntu/ edgy universe
| |
− |
| |
− | <li> Actualizar la lista de paquetes e instalar PPTP Client GUI:</li>
| |
− |
| |
− | apt-get update
| |
− | apt-get install pptpconfig
| |
− |
| |
− | </ol>
| |
− |
| |
− | <li> Arrancar pptpconfig:</li>
| |
− |
| |
− | pptpconfig
| |
− |
| |
− | <li> Configurar una conexión con los parámetros siguientes:</li>
| |
− |
| |
− | Solapa Server:
| |
− | Name: DIT
| |
− | Server: rpv.dit.upm.es
| |
− | Domain:
| |
− | Username: fulanito
| |
− | Password: clavedefulanito
| |
− |
| |
− | Solapa Encryption:
| |
− | Seleccionar "Require Microsoft Point-to-Point (MPPE)"
| |
− |
| |
− | <li>Pulsar el botón "Add" para grabar la configuración.
| |
− |
| |
− | </ul>
| |
− |
| |
− | === Establecimiento/liberación del tunel ===
| |
− |
| |
− | El establecimiento y liberación del túnel se puede realizar
| |
− | '''gráficamente''' desde la aplicación pptpconfig:
| |
− |
| |
− | * '''Establecimiento''': seleccionar la línea "DIT" en la parte superior y pinchar en la opción "Start".
| |
− |
| |
− | * '''Liberación''': pinchar en la opción "Stop".
| |
− |
| |
− | Supuestamente también puede realizarse desde la '''línea de comandos''' mediante '''pptpconfig DIT start''' o '''pptpconfig DIT stop''', pero está opción falla debido a una incompatibilidad entre pptpconfig y la nueva versión de ppp (2.4.4). Si se quiere gestionar el túnel desde la línea de comandos, se puede utilizar el script '''''dit''''' descrito más abajo.
| |
− |
| |
− | Nota: en todos los casos el establecimiento/liberación del túnel debe hacerse como usuario '''root'''.
| |
− |
| |
− | == Ubuntu 6.10 (Edgy Eft) ==
| |
− |
| |
− | === Instalación ===
| |
− |
| |
− | Existe un [http://www.nabble.com/hangs-after-%22Cannot-determine-ethernet-address-for-proxy-ARP%22-t2726677.html fallo conocido] del script '''pptpconfig''' en Ubuntu 6.10, por lo que no se puede utilizar para establecer o liberar el túnel, aunque si funciona bien para configurar la conexión.
| |
− |
| |
− | El procedimiento de instalación es igual al descrito más arriba para Ubuntu 6.06. Unicamente hay que realizar el siguiente paso adicional:
| |
− |
| |
− | <ul>
| |
− |
| |
− | <li>Crear un script llamado '''''dit''''' con el contenido que aparece más abajo y darle permisos de ejecución:</li>
| |
− |
| |
− | chmod +x dit
| |
− |
| |
− | </ul>
| |
− |
| |
− | === Establecimiento/liberación del tunel ===
| |
− |
| |
− | El establecimiento y liberación del túnel se realiza desde la '''línea de comandos''' mediante:
| |
− |
| |
− | <ul>
| |
− | <li> '''Establecimiento''':</li>
| |
− |
| |
− | dit on
| |
− |
| |
− | <li> '''Liberación''':</li>
| |
− |
| |
− | dit off
| |
− | </ul>
| |
− |
| |
− | Nota: el establecimiento/liberación del túnel debe hacerse como usuario '''root'''.
| |
− |
| |
− | === Script dit ===
| |
− |
| |
− | <pre>
| |
− | #!/bin/bash
| |
− |
| |
− | # Parámetros
| |
− | TUNNAME="DIT"
| |
− | TUNSRV="rpv.dit.upm.es"
| |
− |
| |
− | usage="
| |
− | Conexión PPTP a la intranet del DIT
| |
− | -----------------------------------
| |
− | Uso: $0 on --> Establecer túnel
| |
− | $0 off --> Liberar túnel
| |
− | "
| |
− | if [ "$#" -ne 1 ]; then
| |
− | echo "$usage" 1>&2
| |
− | exit
| |
− | fi
| |
− |
| |
− | TUNSRVIPADDR=`host $TUNSRV | grep address | awk '{printf $4}'`
| |
− |
| |
− | establecer_tunel() {
| |
− |
| |
− | ROUTER=`ip route list | grep default | awk '{printf $3; exit}'`
| |
− | IF=`ip route list | grep default | awk '{printf $5; exit}'`
| |
− | IPADDR=`ip addr show dev $IF | grep "inet " | awk '{print substr ($2, 1, length($2)-3)}'`
| |
− | echo "Connecting to DIT with PPTP (router=$ROUTER,if=$IF,ipaddr=$IPADDR)..."
| |
− |
| |
− | cp /etc/resolv.conf /etc/resolv.conf.orig.DIT
| |
− |
| |
− | pon $TUNNAME
| |
− | sleep 2
| |
− | if [ $? -eq 0 ]
| |
− | then
| |
− | echo "ip route replace $TUNSRVIPADDR via $ROUTER dev $IF src $IPADDR"
| |
− | ip route replace $TUNSRVIPADDR via $ROUTER dev $IF src $IPADDR
| |
− | sleep 2
| |
− | echo "ip route replace default dev ppp0"
| |
− | ip route replace default dev ppp0
| |
− | echo "done"
| |
− | else
| |
− | echo "error"
| |
− | exit 1
| |
− | fi
| |
− | }
| |
− |
| |
− | liberar_tunel() {
| |
− |
| |
− | IF=`ip route list | grep "^$TUNSRVIPADDR" | awk '{printf $5; exit}'`
| |
− | ROUTER=`ip route list | grep "^$TUNSRVIPADDR" | awk '{printf $3; exit}'`
| |
− | IPADDR=`ip addr show dev $IF | grep "inet " | awk '{print substr ($2, 1, length($2)-3)}'`
| |
− | echo "Disconnecting from DIT (if=$IF,router=$ROUTER,ipaddr=$IPADDR)..."
| |
− |
| |
− | poff $TUNNAME
| |
− | if [ $? -eq 0 ]
| |
− | then
| |
− | echo "ip route del $TUNSRVIPADDR via $ROUTER dev $IF src $IPADDR"
| |
− | ip route del $TUNSRVIPADDR via $ROUTER dev $IF src $IPADDR
| |
− | echo "ip route replace default via $ROUTER dev $IF"
| |
− | ip route replace default via $ROUTER dev $IF
| |
− | mv /etc/resolv.conf.orig.DIT /etc/resolv.conf
| |
− | echo "done"
| |
− | else
| |
− | exit 1
| |
− | fi
| |
− | }
| |
− |
| |
− | # Main
| |
− |
| |
− | case $1 in
| |
− | on)
| |
− | establecer_tunel
| |
− | ;;
| |
− | off)
| |
− | liberar_tunel
| |
− | ;;
| |
− | *)
| |
− | echo "$usage" 1>&2
| |
− | exit 1
| |
− | ;;
| |
− | esac
| |
− | </pre>
| |
− |
| |
− | == Ubuntu 7.04 (Feisty Fawn) ==
| |
− |
| |
− | Ver http://pptpclient.sourceforge.net/howto-ubuntu.phtml.
| |
− |
| |
− | == Referencias ==
| |
− |
| |
− | * http://pptpclient.sourceforge.net/howto-ubuntu.phtml
| |