Como instalar un servidor de PPP con devolución de llamada en Linux.

Tras encontrarme con la necesidad de conectarme a la red de mi oficina, o a Internet, y no poder disponer de ninguna red pública inalámbrica, decidí instalar y configurar en mi servidor Linux un servicio ppp para conectarme desde el exterior aunque fuera a través de una conexión de banda estrecha.

Una vez estuvo instalado y funcionando, me di cuenta de que conectarse a través de una línea telefónica clásica puede ser, además de lento, caro. Como en mi oficina disponemos de una línea de voz con tarifa plana a fijos de cualquier parte del país, implementé un sencillo sistema de conexión con devolución de llamada. Así, me puedo conectar a mi oficina para introducir el número de teléfono al que está mi portatil conectado, tras lo cual el sistema colgará la llamada, que no tiene que haber sido superior al minuto, y en 30 segundos la oficina llamará al numero de teléfono previamente introducido y establecerá la comunicación. Esta funcionalidad, para cualquiera que disponga de paquetes de Internet a banda ancha + tarifa plana en llamadas a fijos puede ser muy interesante.

Requisitos:

  1. PC que hará las funciones de servidor PPP, con Linux u otra variedad de UNIX.
  2. Modem conectado al PC y a la línea telefónica, y que sea compatible con Linux (preferiblemente externo a RS-232)
  3. Conexión de banda ancha.
  4. Paquetes mgetty+sendfax y pppd instalados.

 


By clicking on these ads you help supporting this site

 

Configuración básica del servicio ppp

Vamos a crear un usuario usuarioppp que usaremos para conectarnos. Asumo que el ejecutable pppd se encuentra en /usr/sbin/pppd.

useradd -s /usr/sbin/pppd usuarioppp

Vamos al directorio /etc/mgetty+sendfax y añadimos la suguiente línea al archivo login.config.

/AutoPPP/ - a_ppp /usr/sbin/pppd file /etc/ppp/options.pppserver

Es posible que exista ya una linea que empieza con /AutoPPP/. Si es así, comentala para sólo usar la ya mencionada aquí.

Vamos al directorio /etc/ppp. Creamos un archivo nuevo que se llame options.pppserver. Dentro de este archivo introducimos los siguientes parámetros:

-detach
asyncmap 0
modem
crtscts
proxyarp
lock
require-pap
refuse-chap
ms-dns 194.224.52.4
ms-dns 194.224.52.6
usepeerdns

Cambia los valores de ms-dns para reflejar los que te ofrezca tu proveedor. En caso de duda puedes dejar estos, son de Telefónica y van bastante bien.

Creamos también en /etc/ppp un archivo llamado options.ttyS0 (suponiendo que ttyS0 es el puerto serie donde tienes conectado el modem, cambialo si fuera necesario) en donde pondremos los siguientes parámetros:

192.168.1.200:192.168.1.202
noauth

Estas IPs pueden pertencer a tu rango de IPs de la red interna. Recuerda que debes tener IP Masquerading/NAT activado en tu máquina Linux para conectar a Internet desde IPs privadas.

Edita en /etc/ppp el archivo pap-secrets y añade la entrada:

usuarioppp    *    tucontraseña    192.168.1.202

Cambia tucontraseña a lo que desees.

Editamos ahora /etc/inittab y añadimos la siguiente línea:

m1:235:/usr/sbin/mgetty ttyS0 -D /dev/ttyS0 -n 5

El parámetro -D significa que el puerto /dev/ttyS0 aceptará conexiones de datos, y -n indica el número de tonos a esperar antes de contestar la llamada. Cambia estos parámetros como desees.

Ejectuta init q para recargar la configuración de inittab. Ahora ya puedes

Haz suid el ejecutable pppd en caso de que no lo sea:

chmod u+s /usr/sbin/pppd

Prueba tu servidor. Si te puedes conectar, ya has conseguido hacer lo más dificil. Si no puedes, mira los logs /var/log/messages y /var/log/mgetty.ttS0 a ver que te dicen…

Configuración del sistema de devolución de llamadas

Crea un nuevo usuario, por ejemplo, llamame:

useradd -s /dev/null llamame

Vamos a /etc/mgetty+sendfax y creamos un archivo vacío llamado callback.config

Editamos en /etc/mgetty+sendfax el archivo login.config y añadimos la siguiente línea:

llamame    -    -    /usr/local/bin/devuelvelallamada

Creamos el archivo /usr/local/bin/devuelvelallamada y le añadimos lo siguiente:

#!/bin/sh fecha=`date`
echo "---------------------------------------------------"
echo "|                                                 |"
echo "|   Servicio de Conexion Telefonica PPP Privado   |"
echo "| ----------------------------------------------- |"
echo "|                                                 |"
echo "---------------------------------------------------"
echo " " echo "La hora de acceso es:" $fecha
echo " "
echo -n "Introduce un numero de telefono valido: "; read -n9 x
/usr/sbin/callback -l ttyS0 $x

Este script nos pregunta un número de teléfono de 9 cifras y en pocos segundos marca a través del modem conectado a /dev/ttyS0. Este script es muy básico y puede ser mejorado si lo deseas.

Configuración de Windows para aceptar llamadas entrantes

Tenemos que configurar Windows ahora para que automaticamente conteste a la llamada entrante. Para ello, iremos a la configuración del modem en el Panel de Control, y añadiremos la siguiente cadena adicional a la de la inicialización del modem.

&c0s0=1

Ya puedes probar tu nuevo servidor de PPP con devulución de llamadas.

 

Si este artículo te ha servido de ayuda o te parece intersante, ¿no considerarías donar para mantener este sitio?

 


By clicking on these ads you help supporting this site

 


Parse error: syntax error, unexpected '}' in /var/www/clients/client1/web3/web/wp-content/themes/white-and-clean-10/comments.php on line 1