Vamos
a desplegar un escenario donde instalaremos un servidor de acceso remoto (RAS)
con Ubuntu 12.04. En este escenario tenemos conectado al servidor una tarjeta
PCI-Serie, que nos va a habilitar 2 puertos serie (RS-232), la tarjeta es de
marca LAVA DSerial-PCI donde conectaremos un modem serie Multitech MT5656ZDX,
adicionalmente conectaremos un modem USB TRENDnet TFM-561U. Tambien tenemos
como especificaciones que se conectaran usuarios del sistema, aplicaremos
identificación de llamadas (CallerID) y dichos usuarios accederán a otra PC
conectada a este segmento de red para obtener otros servicios que bien puede
ser correo electrónico.
Comenzaremos
por comprobar que nuestro sistema ha detectado e instalado correctamente
nuestra tarjeta PCI, usaremos el comando lspci
–v –d 1407:* el cual nos debe dar una salida como la siguiente en la cual
nos muestra que tenemos habilitados 2 puertos series adicionales en el sistema.
Aplicamos
el comando ls /dev/ttyS* y setserial
–g /dev/ttyS[012345] para ver los puertos series habilitados en el sistema
y los parámetros de configuración para los puertos del 0 al 5 respectivamente
Si por alguna razón el o los puertos no quedan correctamente
configurados automáticamente se deberá ajustar la configuración manualmente con
el comando setserial.
Ahora
ya tenemos conectado el modem serie a la tarjeta y el modem usb en su
respectivo puerto, aplicamos el comando wvdialconf
, (quizás previamente deba instalarse el paquete wvdial con apt-get install
wvdial) y veremos una salida como la siguiente
Como
vemos el sistema ha detectado 2 modem, 1 modem serie en el puerto ttyS5 y 1 modem usb en el puerto ttyACM0
Ahora
que ya tenemos los modem conectados y detectados por el sistema vamos instalar
y configurar el servicio.
- Instalando los paquetes mgetty y ppp
# apt-get install mgetty ppp
- Configurando la respuesta automática de los modem: como estamos en Ubuntu 12.04 vamos a editar (si no existe crearlo) el fichero /etc/init/tty5.conf y /etc/init/ttyACM0.conf que deben quedar de la siguiente forma:
/etc/init/ttyACM0.conf
Podemos ejecutar el comando init q para que se recargue esta configuración
- Configurando mgetty
Comenzamos
editando el fichero /etc/mgetty/mgetty.conf
que debe quedar con el siguiente aspecto:
Como vemos cada sesión corresponde a uno de cada modem;
- La línea init-chat contiene las cadenas de inicialización del modem y la sección at+vcid=1 es la activación del callerID del modem
- rings 2: fijamos a 2 timbres antes de la respuesta del modem; la central telefónica envía el CallerID entre el 1er y 2do timbre.
- ringback no: ”creo”, digo creo porque no estoy muy seguro, que es para que el modem no haga llamadas atrás.
Editamos
el fichero /etc/mgetty/login.conf y dentro le indicaremos que las opciones la
estableceremos en el fichero /etc/ppp/options, quedando login.config de la
siguiente manera:
Editando el fichero /etc/ppp/options (comento las opciones
más importante para mi escenario)
Como tenemos 2 modem conectados al sistema debemos
especificar ip del servidor y del cliente para el caso de que 2 usuarios
conectaran al mismo tiempo.
- Editando y/o creando los ficheros /etc/ppp/options.ttyS5 y /etc/ppp/options.ttyACM0
/etc/ppp/options.ttyACM0
- Ahora editaremos el fichero /etc/ppp/pap-secrets que es donde ajustamos para que se loguen los usuarios del sistema, quedando asi:
- Casi terminando editaremos el fichero /etc/mgetty/dialing.config donde configuramos los números telefónicos que pueden conectar a nuestro server, recordar que necesitaremos tener activado el servicio de CallerID por parte del proveedor de telefonía fija. Anotar que he instalado servidores RAS en Windows 2003 y debo reconocer que esta forma de manejar la verificación de CallerID en Linux (Ubuntu 12.04) me ha gustado por varias razones:
- Si el número entrante no está en la lista, el modem sencillamente no responde a la llamada.
- Si el usuario tiene varios numero asociados es sencillo especificarlos en el fichero dialing.config, en Windows 2003 hay que escribir un script de comandos vbs para modificar la propiedad msNPSavedCallingStationID del usuario; esta propiedad está disponible solo si el server es un controlador de dominio.
Pero
esto también tiene algunas desventajas tal como que no puedo anclar un usuario
a uno o varios números telefónicos, esto es que el usuario pepe podrá conectar
desde cualquiera de los numero listados en dialing.config. Por supuesto aclarar
que no es objetivo de este articulo hacer comparaciones entre ambos sistemas.
En
el fichero /etc/mgetty/dialing.config también es posible escribir patrones, por
ejemplo:
#pueden conectar todos los numero
que comiencen con 213250
213250
# No conectar ninguno que comience
con 33
!33
Al
final del archivo terminamos con !all para denegar conexión a todo el que no
esté en este fichero.
Hasta
aquí ya nuestro server brinda servicio RAS, ahora vamos a configurar opciones
de enrutamiento para que el usuario pueda consumir servicios en otras pc del
segmento de red donde está el server.
De
modo que podemos escribir lo siguiente o bien dentro del archivo /etc/rc.local o bien dentro de nuestro
script de iptables
echo
> 1 /proc/sys/net/ipv4/ip_forward
iptables
–t nat –A POSTROUTING –o eth0 –j MASQUERADE
No hay comentarios.:
Publicar un comentario