Spanish Linux HOWTO: Conectividad de Linux

Next Previous Contents

## 5. Conectividad de Linux

Uno de los puntos muy fuertes de Linux es su gran conectividad: incluso con recursos modestos en hardware puede ser un hábil servidor de red y convivir practicamente con cualquier configuracion que ya tengamos funcionando en nuestra red. A medida que mejoremos el equipamiento, Linux aprovechará todos los recursos convirtiéndose en un potente centro de servicios. Si no consigo abrirte el apetito de curiosidad, echa un vistazo a las varias How-To sobre el tema o lo lamentaras... :)

Como digno miembro de la familia Unix, el entorno nativo de red en el que ha nacido Linux es el TCP/IP, asi que nos moveremos en Internet y en las redes locales basadas en esta familia de protocolos como pez en el agua. Puede actuar tanto de simple cliente hasta como una potente estacion de trabajo de bajo coste, pasando por un XTerminal con todo su entorno grafico con absolutamente todo el software necesario, ya incluido o de más o menos fácil instalacion.

En el nivel físico (cacharreo para entendernos), Linux puede conectarse con otros Linux o con cualquier otro sistema usando casi cualquier cosa: cableado serie, paralelo, modems convencionales, tarjetas RDSI, Frame Relay, redes locales ethernet ó token ring, radiopaquete (AX.25 para radioaficionados), etc.

En cuanto a protocolos de red, lo que lleva en la sangre es el mencionado TCP/IP, pero puede acceder (como cliente o como servidor, segun los casos) a redes basadas en IPX (Novell), AppleTalk (Macintosh) y SMB (red LanManager para conectar con Windows para trabajo en grupo, Windows 95 y Windows NT). Por si sirve de pista, quien escribe ha hecho ya la prueba de poner un simple PC de gama media como nodo principal para dar servicios de disco, impresoras y, sobre todo, acceso a Internet a una LAN ethernet de 75 puestos de trabajo que usan indistintamente cualquiera de los mencionados protocolos compartiendo indistintamente sus recursos. Y lo mejor de todo es que nadie fue capaz de distinguir desde sus respectivos puestos a Linux del servidor propio que les atendía hasta entonces. De hecho lleva varios meses en uso ininterrumpido y sólo Linux ha sido capaz de hacer simultáneamente de servidor para usuarios Unix, Windows 3.11, Windows 95, NT, DOS, Netware y Mac sin colgarse ni una sola vez y con un coste ridículo. Nadie me garantiza que nunca me vaya a fallar, pero lo doy por modesta pero absolutamente victorioso en comparación con sistemas comerciales teóricamente superiores y con un coste mucho mayor.

Otra situación en la que actualmente uso Linux es como servidor de Web, mail, FTP anónimo (de servicio público a la red) y servicios de salida a Internet para una red local de 2.100 usuarios, también con muy buenos resultados a pesar de la fuerte carga de trabajo contínuo las 24 horas.

## 5.1 Conectividad casera

Algunas de las situaciones típicas en las que se puede aprovechar la capacidad de trabajo en red de Linux podrían ser:

## 5.2 Servidor de terminales

¿Quién no tiene en casa un PC (o algo peor) que se ha quedado antiguo pero que aún funciona? Cualquier ordenador con un puerto serie y algun software de emulación de terminal puede conectarse a un Linux, permitiendo varios usuarios trabajando simultaneamente. Para quien no lo haya hecho alguna vez, es la forma más simple de comprobar por sí mismo que Linux es un sistema 100% multiusuario y multitarea. Todos los recursos de memoria, disco, etc. estarán a la vez disponibles para compartirlos entre tantos usuarios como puertos serie tengamos.

## 5.3 Red PPP

Enlazando ordenadores por puertas serie, paralelo, modems, etc, es posible no solamente que un Linux sea el ordenador principal y otros usuarios accedan a través de simples terminales, sino que es posible aprovechar la capacidad de todos los equipos sumando recursos. Desde un equipo se puede acceder a impresoras, discos, etc. de cualquier otro equipo. El protocolo PPP permite crear una red TCP/IP entre todos ellos, usando como enlace tanto modems como simples cables. A medida que cambiemos la red física por algo mas "decente" como una LAN ethernet o análogo, mejorarán las prestaciones como es lógico, pero la idea es la misma y el software de usuario son idénticos (lo que varía, claro esta, es la configuración del propio sistema operativo).

## 5.4 Servidor de modems

Combinando los dos apartados anteriores, podemos unir la capacidad de servidor de puertos serie (a los que conectaremos modems) y el protocolo PPP (para dar a esas líneas serie la funcionalidad del TCP/IP). Así podemos dar servicio de acceso a Internet a los usuarios que se nos conecten por teléfono.

## 5.5 Conexion directa a Internet

Ciertamente no es lo normal en casa, pero es relativamente frecuente encontrarlo en universidades y de un tiempo para acá también es habitual en empresas. Si tenemos una red local enganchada a su vez a un proveedor (académico o comercial), entonces una simple tarjeta de red y una simple configuración del sistema serán suficientes para conectar Linux, que actuará como un ordenador Unix cualquiera, con todas sus ventajas. De hecho en la red encontraremos más de un servidor que esconde un Linux en sus "entrañas", o que precisamente quien nos esté haciendo de proveedor de acceso sea un Linux. Pero hay que tener en cuenta tambien sus inconvenientes de seguridad: igual que podemos conectarnos desde Linux, es perfectamente posible que se conecten a nosotros inadvertidamente, por lo que, salvo que necesitemos mantener abierto algun servicio en particular, es recomendable cerrar "todas las ventanas" para evitar problemas. Algunos buenos consejos para un Linux de uso personal serían:

- Crea cuentas para los usuarios que realmente vayan a usarlo, y asígnales claves dificilmente adivinables (no hace falta complicarse la vida con claves imposibles, pero tampoco debes ponérselo fácil a los intrusos)
- Hazte cargo de la clave del administrador `root` y procura mantenerla a salvo. Si la facilitas a alguien más, mentalízale para que la use con precaución (por otra parte también es una forma de aprender nociones básicas de administración de sistemas...)
- Ponte como `root`, edita `/etc/inetd.conf` y ponle un signo de comentario (`#`) a todas las lineas excepto aquellas que abran servicios que necesites mantener accesibles; luego haz "killall -1 inetd". No te cortes y cierralo todo, que siempre estaras a tiempo de reabrir aisladamente aquello que eches en falta
- Aunque te consideres muy capaz de administrar un sistema de este tipo, no tengas la mala costumbre de usar `root` como usuario habitual con el que te conectes al sistema, o en caso de despiste podrías provocar algun destrozo. Es mas seguro que entres como un usuario "raso" y uses `su - root` cuando necesites hacer alguna operacion concreta como super-usuario (recuerda usar `exit` para volver a tu status normal cuando termines lo que tenías que hacer como super-usuario)
- El sistema va dejando muchos mensajes registrando la actividad de los usuarios y del propio sistema en múltiples ficheros de contabilidad. Muchos de ellos se centralizan a traves del servicio `syslogd`. En cuanto empieces a desenvolverte un poco con el manual y los comandos básicos para moverte por el sistema, aprende a recoger la información que genere ese servicio, eliminar la inútil, revisar la útil y limpiar la contabilidad de vez en cuando (de lo contrario te puedes dar un susto cuando veas ficheros gigantescos que devoran espacio de disco con información desfasada despues de tanto tiempo)

## 5.6 Infovía: acceso a Internet desde casa

### ¿Qué es infovía?

Infovía es una red creada por Telefónica a la que los usuarios acceden desde cualquier punto de la red telefónica española a precio de llamada local. Funciona como una intranet (una red basada en los mismos protocolos que Internet, pero independiente y sin integrarse en ella). No tiene por tanto acceso directo a Internet, pero es un buen intermediario ya que abarata costes tanto para el usuario como para el proveedor de acceso a internet, que aprovecha su infraestructura sin tener que invertir en una red propia. En este sentido es una vía interesante de acceso, pero para evitar confusiones hay que tener presente que Infovía NO es Internet, sino un producto comercial de Telefónica. Aún despues de habernos conectado a Infovía seguimos necesitando un proveedor de acceso a Internet para estar verdaderamente conectados a la red de redes.

Al funcionar igual que Internet (el software de Infovía no es más que un PPP y un navegador de web, que utiliza como interfaz de usuario) es perfectamente posible usar Linux para conectarse, pero surge el problema típico de configuración: Telefónica facilita su software gratuito para entornos comerciales típicos (Windows 3.11, Windows95 y Macintosh) que Linux no necesita (ya lo tiene). Pero Linux lo que necesita es conocer la configuracion de su red, para poder integrarse en ella.

### ¿Como conectar entonces?

El software básico es el `pppd`, que a través del modem creará un enlace TCP/IP entre nuestro ordenador e Infovia. Una vez creado, podremos contactar con nuestro "verdadero" proveedor, quien nos abrirá las puertas a Internet, y a partir de ese momento ya podremos usar cualquiera de nuestras propias aplicaciones habituales desde Linux. Como complemento de `pppd` usaremos una utilidad `chat` que se encargara de dialogar via modem con el ordenador remoto al comienzo de la llamada, mientras se establece la conexión. También intervendrán varios ficheros de configuración (unos genéricos de Linux para cualquier conexión TCP/IP, otros característicos de las conexiones a través de PPP y modem, y por último alguno que usemos en el caso concreto de Infovía). Un detalle sobre versiones de software: un inconveniente en la evolución de Linux ha sido un cambio en la implementación del PPP que hace incompatible algunos `pppd` con algunas versiones del kernel. Si nuestro núcleo está entre 1.2.13 y 1.3.95 debemos usar un pppd 2.1.2d o superior, mientras que necesitaremos un pppd 2.2.0e o superior para los núcleos más recientes.

El listado siguiente es un ejemplo del fichero principal de configuración de `pppd`, en el que a su vez se hace referencia a varios ficheros que deberemos crear: identificación y clave facilitada por el proveedor de acceso, el guión de inicio de conexión, y el de cierre y cuelgue del modem. `/dev/modem` es un enlace (un "symbolic link") que usaremos como nombre genérico para el modem, y que debe apuntar al nombre del dispositivo real en el que lo tengamos conectado.

/etc/ppp/options:

      modem passive crtscts noipdefault defaultroute
      lock lcp-echo-interval 15 lcp-echo-failure 5 mtu 1500
      +ua /etc/ppp/infovia.pass
      connect "/usr/sbin/chat -v -f /etc/ppp/infovia.chat"
      disconnect "/usr/sbin/chat -v -f /etc/ppp/infovia-off.chat"
      /dev/modem 38400

`/etc/ppp/infovia.pass` es un fichero con simplemente dos líneas, una con el login (identificación de usuario) y otra con la clave. Para acceder a Internet deberemos introducir en ambos casos lo que indique el proveedor, mientras que si sólo vamos a navegar por Infovía (sin salir a Internet) es suficiente con poner `infovia` como usuario genérico e `infovia` como clave.

`/etc/ppp/infovia.chat` contiene el guión que utilizará `chat` en su diálogo con el modem. Un ejemplo de su contenido podría ser:

      TIMEOUT 6
      ABORT '\nBUSY\r'
      ABORT '\nNO ANSWER\r'
      ABORT '\nNO CARRIER\r'
      ABORT '\nRING\r\n\r\RING\r'
      ABORT '\nNO DIALTONE\r'
      ''    ATDP055
      'CONNECT'

En el ejemplo anterior se usa marcación por pulsos. Si fuera por tonos sustituir `ATDP` por `ATDT`. Además, si al número 055 de llamada a Infovía hubiera que añadir algún prefijo de centralita o cualquier otra marcación especial, no hay más que incluirlo en el listado. Por su parte el de cierre de conexión y reseteo del modem sería algo así:

/etc/ppp/infovia-off.chat:

      TIMEOUT 3
      ''    '\r'
      '\r'  '+++\c'
      '\r'  ATH0
      OK    ATH0
      OK

Next Previous Contents