Conectividad y redes - Recursos de CEPIndalo
Transcripción
Conectividad y redes - Recursos de CEPIndalo
Conectividad y redes José J. Grimaldos [email protected] Antonio Saorín [email protected] Conectividad y redes por José J. Grimaldos y Antonio Saorín Esta documentación se refiere a la versión V.4 de Guadalinex, la distribución GNU/Linux impulsada por la Junta de Andalucía. Copyright © 2008 José J. Grimaldos, Antonio Saorín Se permite la copia exacta y la distribución de este artículo en cualquier medio y soporte citando la procedencia, conforme a los términos de la licencia de documentación libre GNU. (http://www.gnu.org/copyleft/fdl.html) La información contenida en este documento es libre y debe ser usada bajo su propio criterio. Los autores no se responsabilizan de cualquier daño directo o indirecto que pudiera resultar de la utilización de este material. Todas las marcas registradas citadas en este documento pertenecen a sus respectivos propietarios. Historial de revisiones Revisión 1.1 13/02/2008 Revisado por: jjg, as Conversión a UTF-8 y remodelación para Guadalinex v.4 Revisión 1.0 19/01/2008 Revisado por: as, jjg Creación del contenido del capítulo a partir del elaborado para la versión V3 Tabla de contenidos 1. Conexión a la red...................................................................................................................................... 1 1.1. Conectarse a Internet ..................................................................................................................... 1 1.1.1. Módem analógico y Red Telefónica Básica (RTB)........................................................... 1 1.1.1.1. Configuración ....................................................................................................... 1 1.1.2. Módem USB y ADSL ....................................................................................................... 4 1.1.3. Router................................................................................................................................ 9 1.1.4. Conexión inalámbrica ..................................................................................................... 11 1.1.4.1. Compatibilidad ................................................................................................... 11 1.1.4.2. Configuración rápida con NetworkManager ...................................................... 16 1.1.4.3. Configuración de la red inalámbrica con NetworkAdmin.................................. 19 1.1.4.4. Para saber más: Conexión manual a una red inalámbrica con clave WAP......... 20 1.2. Compartir una conexión a Internet y crear un cortafuegos.......................................................... 25 1.2.1. Configuración de cortafuegos con Firestarter ................................................................. 25 1.2.1.1. Configurar Firestarter ......................................................................................... 26 1.2.1.2. Compartir la conexión a Internet con Iptables.................................................... 29 1.2.1.3. Configuración de las máquinas de nuestra red ................................................... 30 1.3. Redes de área local ...................................................................................................................... 30 1.3.1. Introducción .................................................................................................................... 30 1.3.2. Configuración de la red con Guadalinex......................................................................... 33 1.3.3. Compartir recursos en redes Windows™ con SAMBA.................................................. 36 1.3.3.1. Acceder desde Guadalinex a recursos compartidos en máquinas Windows ...... 36 1.3.3.2. Acceder desde Windows a recursos compartidos en máquinas Guadalinex ...... 39 1.3.3.3. Agregar en Guadalinex una impresora instalada localmente en Windows......... 47 1.3.3.4. Agregar en Windows una impresora instalada localmente en Guadalinex......... 49 1.3.4. El sistema de ficheros NFS ............................................................................................. 50 1.3.4.1. Configuración del servidor ................................................................................. 50 1.3.4.2. Configuración del cliente.................................................................................... 51 iii Capítulo 1. Conexión a la red 1.1. Conectarse a Internet Conectar Guadalinex a Internet es, en general, un proceso sencillo. Los problemas que pueden aparecer se deben principalmente a la incompatibilidad del hardware o a la no disponibilidad de drivers para GNU/Linux. Como ya se comentó los fabricantes son cada vez más reacios a publicar las especificaciones de sus dispositivos, lo que dificulta enormemente la tarea de escribir controladores libres. La solución a este problema pasa por informarnos sobre la compatibilidad antes de comprar un módem, una tarjeta inalámbrica o cualquier otro dispositivo de acceso a la red. También es recomendable antes de contratar un servicio de acceso con un operador de telefonía informarse de su viabilidad con Linux. Para poder acceder a Internet necesitará tener un proveedor de acceso (ISP), una línea telefónica, RTB o ADSL, y un módem o router mediante el que establecer las conexiones. Examine cuál es su caso y vaya directamente a su modalidad de acceso. 1.1.1. Módem analógico y Red Telefónica Básica (RTB) La implantación de la banda ancha (ADSL) es cada vez mayor por lo que este caso es cada vez menos frecuente. Usted dispone de un módem conectado a su línea telefónica convencional, a la que se denomina RTB. Esencialmente hay dos tipos de módem analógicos: Módem externo. Se suele conectar al ordenador mediante un puerto serie (COM). Funcionan perfectamente con Linux. Módem interno. La gran mayoría son lo que se conoce como Winmódem. La razón de llamarlo así es que suplen parte de la funcionalidad hardware recurriendo al sistema operativo Windows™. Aunque muchos de ellos son detectados automáticamente, suelen ser de difícil configuración en Linux. Si experimenta problemas puede consultar la página Linmodems.org (http://linmodems.org) donde encontrará información útil para afrontar su instalación. 1.1.1.1. Configuración Asegúrese de que el módem está encendido y conectado tanto al ordenador como a la línea telefónica. 1. Vaya al menú Sistema−→Administración−→Red 1 Capítulo 1. Conexión a la red 2. Haga clic en Conexión por módem y pulse el botón Propiedades 3. En la pestaña General marque la opción Activar esta conexión y rellene los campos de texto del modo siguiente: • Número de teléfono: Ponga aquí el número facilitado por su proveedor para establecer la conexión a Internet. • Prefijo de marcado: No se refiere al prefijo de provincia o de país sino al número que hay que marcar para obtener tono de llamada si nos encontramos detrás de una centralita. Si no hay centralita déjelo en blanco. • Nombre de usuario y contraseña: Los que le haya facilitado su proveedor. 4. Pulse en la pestaña Módem para comprobar que el dispositivo está conectado. 2 Capítulo 1. Conexión a la red • Puerto del módem. Se refiere al modo como el módem está conectado al ordenador. Pulse el botón Autodetectar. Si no da resultado seleccione un puerto de conexión en la lista desplegable, inténtelo primero con /dev/modem/, siga después con /dev/ttyS0 si sabe que su módem está en el primer puerto serie (COM1), /dev/ttyS1 (COM2), /dev/ttyS2 (COM3), /dev/ttyS3 (COM4). Pruebe esto incluso si su módem es interno. Si no funciona con ninguno quiere decir que Guadalinex no es capaz de encontrar su módem, en cuyo caso debe buscar ayuda en las páginas de soporte. • Tipo de marcado. El modo como nuestro teléfono marca los números. Suele ser tonos, aunque también pueden ser pulsos. • Volumen. , nos permite escoger si queremos o no escuchar los sonidos típicos de conexión. Es conveniente seleccionar Bajo, Medio o Alto así sabremos qué está pasando mientras intentamos el acceso a Internet. 5. Vaya ahora a la pestaña Opciones • Establecer el módem como la ruta predeterminada a Internet. Active esta opción si el módem es su único dispositivo de acceso a Internet. Si dispone de otros mecanismos tales como una tarjeta de red que utiliza con mayor frecuencia es mejor desmarcarla. • Usar los servidores de nombres del proveedor de servicios de Internet. Verifique esta opción siempre que su proveedor le facilite el servicio de resolución de nombres (DNS) de manera automática, 3 Capítulo 1. Conexión a la red en cualquier caso, podrá establecerlos manualmente bajo la pestaña DNS, como indicamos más adelante. • Reintentar si se corta la conexión o falla al iniciar. Si su acceso a Internet es inestable esta opción le será de gran utilidad. 6. Una vez completada la configuración pulse Aceptar. 7. De vuelta a la ventana inicial seleccione la Conexión por módem y haga clic en Activar. Se iniciará entonces el marcado y podrá escuchar los típicos sonidos de conexión. Aunque podemos gestionar la activación del módem utilizando la herramienta de configuración de redes, lo más cómodo es hacerlo a través de su correspondiente miniaplicación de panel. Para ello haga lo siguiente: 1. Haga clic con el botón derecho del ratón en cualquier lugar vacío del panel donde quiera ubicar la miniaplicación. 2. En el menú contextual seleccione Añadir al panel 3. Busque la miniaplicacion Monitor del módem, (la encontrará en la sección Sistema y Hardware) selecciónela y pulse el botón Añadir. 4. Nos aparecerá un icono en forma de teléfono rojo en el panel. Si pulsamos sobre él con la tecla derecha del ratón veremos las opciones activar y desactivar, para marcar y colgar respectivamente. También desde aquí podemos editar las Propiedades de la conexión. 4 Capítulo 1. Conexión a la red 1.1.2. Módem USB y ADSL Otra de las formas habituales de conectarnos a Internet es utilizando una línea telefónica del tipo ADSL (banda ancha). El dispositivo para efectuar esta conexión puede ser, básicamente, un módem USB o un módem-router cableado o inalámbrico. Esta circunstancia es crucial para configurar bien la conexión. Si todavía no tiene contratada la línea ADSL pero planea hacerlo le recomendamos encarecidamente que solicite un módem-router independientemente de qué proveedor de acceso tenga pensado elegir. Si ya la tiene contratada es probable que por un precio módico el proveedor le facilite este dispositivo. En el caso de usar un módem USB tendrá que padecer los efectos de la negativa habitual de algunos proveedores de acceso y fabricantes a facilitar soporte a las conexiones basadas en GNU/Linux. De modo que se verá obligado a conseguir el controlador para su modelo de módem y preparar el sistema para que lo reconozca. El proceso de configuración del módem usb depende en gran medida de la marca y modelo. Consulte esta dirección (https://wiki.Guadalinex.com/FindPage?action=fullsearch&titlesearch=1&value=adsl) donde encontrará información últil para un proceso de instalación que se prevé algo complejo. Guadalinex dispone de un Asistente de Banda Ancha que permite la configuración de una conexión a través de varios modelos de módem ADSL con la operadora Telefónica, desarrolladora de esta aplicación. Aunque puede utilizarse también para otros proveedores. Para iniciar el proceso de configuración vaya a Sistema−→Administración−→Asistente de Banda Ancha. Empezamos con una pantalla de presentación. Pulsamos Adelante. A continuación se nos avisa de que se va a realizar una inspección de nuestro equipo para comprobar que se tiene todo lo necesario para la configuración. Pulsamos Adelante. 5 Capítulo 1. Conexión a la red Tras la inspección el asistente nos informa de la configuración de las tarjetas de red y puertos encontrados en nuestro equipo. Pulsamos Adelante. Ahora se comienza la configuración del módem propiamente dicha. Asegúrese de que su módem usb está conectado al equipo y encendido y pulse Adelante. 6 Capítulo 1. Conexión a la red Ahora debemos seleccionar la operadora. En esta versión sólo hay una opción: Telefónica, pero la intención es que las operadoras que así lo deseen puedan añadir sus controladores y configuraciones para usar este asistente. A continuación escogemos el modelo de módem en un menú desplegable. Al seleccionar el módem se nos muestra una fotografía del mismo con objeto de facilitar al usuario su identificación. 7 Capítulo 1. Conexión a la red Llegados a este punto debemos configurarlo en modo Monopuesto (estático o dinámico). Estático o dinámico depende de que dispongamos o no de una IP fija, lo cual depende del contrato que tengamos con la operadora. En la mayoría de los casos este contrato será con IP dinámica y por tanto seleccionaremos Monopuesto dinámico. En la siguiente pantalla debemos introducir el usuario y contraseña de la conexión, datos que nos debe facilitar la operadora de telefonía con la que tengamos contratado el servicio. 8 Capítulo 1. Conexión a la red Al finalizar, el asistente aplicará la configuración lo cual puede llevar un buen rato. Si todo ha ido bien ya tendremos configurado nuestro módem ADSL. Para activarlo y desactivarlo seguiremos el mismo procedimiento que para un módem analógico convencional, tal como se describe más arriba. También podemos añadir al panel la miniaplicación Monitor del módem lo que nos facilitará la tarea de activar y desactivar el módem. 1.1.3. Router Esta es con mucho la forma preferida de conectarse a Internet entre los usuarios de GNU/Linux. Muchos de los módem-router actuales admiten la posibilidad de conectarse al ordenador tanto con cable como sin él. En el primer caso necesitará que su equipo tenga instalada una tarjeta de red, mientras que en el segundo tal tarjeta debe además ser inalámbrica. Consideramos en esta sección la conexión con cable de red. Si cuando instaló Guadalinex tenía el módem encendido probablemente tenga ya acceso a Internet. Para comprobarlo simplemente pruebe a navegar. Sin embargo en algunos casos es posible que tenga que hacer algún ajuste. Aconsejamos que la conexión se haga, por facilidad, con el router configurado en modo "multipuesto" y con el servidor DHCP activado. Puede consultar a su proveedor de Internet cómo hacer dicha configuración. Habitualmente los proveedores de acceso distribuyen los routers configurados en modo "multipuesto", por lo que lo único que tendrá que hacer es asegurarse de que es así. Por supuesto para hacer la configuración aquí descrita olvide cualquier CDROM o Kit autoinstalable que le haya facilitado su proveedor. Le recordamos que para esta configuración su ordenador necesita una tarjeta de red. Aunque la inmensa mayoría de las tarjetas de red están soportadas por GNU/Linux, si planea comprar una asegúrese de que está soportada. En cambio, en general, no importa cuál sea la marca o modelo del módem-router. 1. Vaya al menú Sistema−→Administración−→Red 9 Capítulo 1. Conexión a la red 2. Haga clic en Conexión alámbrica y pulse el botón Propiedades. 3. En Configuración debemos seleccionar el protocolo de red utilizado. Si su router tiene un servidor DHCP activo, lo cual es lo más frecuente, le asignará el resto de datos automáticamente y por tanto no tiene nada más que pulsar el botón Aceptar. Si accedemos a la red mediante una dirección IP estática debemos introducir los datos que le haya facilitado el administrador de la red. 4. La Dirección IP suele ser un número del tipo 192.168.1.9 5. Al pulsar en el campo Máscara de red una vez hemos escrito la IP aparecerá automáticamente un número que suele ser casi siempre 255.255.255.0 6. La Dirección de la puerta de enlace corresponde al número IP de su router. Asegúrese de poner el correcto pues un error aquí le impediría el acceso a Internet. 7. Una vez rellenados todos los campos pulse Aceptar Nos falta por configurar los DNS, (servidores de nombre de dominio) para que sea posible convertir las direcciones a las que estamos acostumbrados, por ejemplo www.guadalinex.org (http://www.guadalinex.org) en direcciones numéricas. Si hemos conectado con DHCP se deberían configurar automáticamente. Si hemos introducido una IP estática el administrador nos habrá facilitado la dirección DNS. Haga clic en la pestaña DNS, pulse el botón Añadir y escriba la dirección IP del servidor DNS primario. Repitálo para añadir el servidor DNS secundario, si lo tiene, y así sucesivamente podrá introducir tantos servidores de nombres como desee. 10 Capítulo 1. Conexión a la red Finalmente pulse el botón Aceptar para guardar los cambios. Verifique ahora que su conexión está bien configurada. Abra el navegador y escriba cualquier dirección web. Si no consigue navegar antes de hacer cualquier otra cosa compruebe que el problema no es de DNS. Para ello en la barra de direcciones del navegador escriba directamente http://209.85.135.103 Si consigue ver la página de Google entonces es que su conexión a Internet está bien configurada pero necesita cambiar los DNS. 1.1.4. Conexión inalámbrica La utilización de tarjetas inalámbricas (wireless) es una de las formas de conexión en auge. Actualmente casi todos los ordenadores portátiles llevan una y muchos usuarios las están instalando en sus equipos de sobremesa. La configuración de una tarjeta inalámbrica, si es compatible con GNU/Linux y la red está abierta, es automática. En todo caso puede probar a configurar la red tal como se explica más abajo y sólo si experimenta problemas, detenerse en el siguiente apartado. 1.1.4.1. Compatibilidad La clave de la compatibilidad de una tarjeta inalámbrica se basa en su chipset: diferentes marcas o modelos pueden incorporar sin embargo el mismo. Este dato viene en las especificaciones técnicas o incluso en la caja. Podemos averiguar qué tarjeta tenemos en nuestro sistema de una de estas dos formas: 1. Vaya al menú Sistema−→Administración−→Administrador de dispositivos. Busque allí la entrada Wlan Interface , justo encima de esta entrada podrá ver la marca y el modelo de su tarjeta 11 Capítulo 1. Conexión a la red 2. Vaya al menú Aplicaciones−→Accesorios−→Terminal. Escriba: $ lspci | grep Network Pulse Intro y en la salida del comando busque una línea similar a ésta 01:07.0 Network controller: Intel Corporation PRO/Wireless 2200BG Network Connection (rev 05) En este caso se nos informa de que la tarjeta inalámbrica es una Intel Pro/Wireless 2200, muy frecuente en los actuales ordenadores portátiles Intel Centrino™. Si su dispositivo inalámbrico es USB introdúzcalo en el puerto correpondiente y espero unos segundos. Escriba entonces la terminal: $ lsusb Podemos hablar de tres grupos de compatibilidad: • Tarjetas que disponen de drivers para GNU/Linux. Estas son siempre las recomendables. • Tarjetas que no disponen de controladores para GNU/Linux pero sí soporte de NDIS para Windows™ y que se la puede hacer funcionar mediante ndiswrapper. • Tarjetas no compatibles 1.1.4.1.1. Tarjetas compatibles Guadalinex incorpora una buena cantidad de controladores para las tarjetas más extendidas. En http://linux-wless.passys.nl/ podemos encontrar un listado bastante completo de tarjetas compatibles. De este tipo son las tarjetas Prims54, Atheros/MadWifi, Intel Pro Wireless, Atmel, Ralink/Rt2x00, Orinoco, Airo, HostAP, TI/Acx o Wlan-NG.. 1.1.4.1.2. Un caso especial. Tarjetas compatibles pero para las que hay que instalar los controladores Existe un situación que requiere un tratamiento especial: hemos buscado en http://linux-wless.passys.nl/ y encontramos que nuestra tarjeta es compatible, y se nos indica también dónde podemos descargar los 12 Capítulo 1. Conexión a la red controladores. Normalmente vienen en un fichero comprimido, al descomprimirlo encontramos una serie de extraños ficheros y no sabemos qué hacer con ellos. En realidad lo que hemos descargado es el driver pero no en su forma binaria (ejecutable) sino en código fuente. El proceso por tanto tiene dos fases: por una parte debemos compilar el driver, es decir, pasarlo de código fuente a código ejecutable; y por otra instalarlo. Este proceso es común para varios tipos de dispositivos wifi y lo ilustraremos con un ejemplo. Para nuestro ejemplo hemos elegido el dispositivo Conceptronic C54RU USB. Hemos elegido un dispositivo USB puesto que cuando se trata de este tipo de ingenios lo más frecuente es que debamos compilar e instalar los drivers. Por lo demás tales dispositivos son bastante populares por dos motivos: primero por su bajo coste; segundo porque son los que suelen regalar las compañías de telefonía, seguramente por su bajo coste. La calidad de estos inventos deja mucho que desear, así que si no tiene uno le recomendamos que no lo compre y aunque lo tenga, si le es posible, guárdelo y adquiera una tarjeta wireless PCI compatible. Hay situaciones en las que sin embargo no habrá más remedio que trabajar con ellos, por ejemplo cuando se trata de proporcionar capacidades wireless a un ordenador portátil que no las tiene. Comencemos. Importante: Antes de empezar es muy importante asegurarse que el dispositivo USB de marras no está en el puerto USB. Si ha arrancado su ordenador y lo ha colocado, quítelo y reinicie el sistema. El dipositivo de nuestro ejemplo incorpora el chipset Ralink RT2500. Lo hemos averiguado por el simple procedimiento de buscarlo en la dirección http://linux-wless.passys.nl/ . En esa misma base de datos se nos sugieren dos lugares para descargar el controlador. Hemos decidido ir la la página http://rt2x00.serialmonkey.com/ . Una vez allí después de pulsar en enlace "Download" que está en la parte superior de la página, encontramos varios ficheros como candidatos para su posible descarga. Puesto que nuestro dispositivo es USB pulsamos en el enlace http://prdownloads.sourceforge.net/rt2400/rt2570-1.1.0-b2.tar.gz?download y guardamos el fichero en nuestro disco duro. Lo siguiente que debemos hacer es preparar nuestro sistema para la compilación. Ello pasa por instalar las fuentes del núcleo que estamos ejecutando (linux-headers). En Guadalinex v4 ya están instaladas no así en Guadalinex V4.1. No obstante para asegurarnos abrimos una terminal y escribimos $ sudo apt-get install linux-headers-$(uname -r) Según cómo esté nuestro sistema pueden ocurrir tres cosas: que se nos diga que el paquete ya está instalado, que se instale o que obtengamos el mensaje $ E: No se pudo encontrar el paquete linux-headers-2.6.20-15-generic Esto es lo que ocurre si tenemos Guadalinex V4.1. Así que los primero será descargar e instalar las linux-headers para ese núcleo. Para ello vamos a la dirección http://v4.guadalinex.org/guadalinex-toro/pool/main/l/linux-source-2.6.20/ y pulsamos con el botón derecho del ratón sobre los enlaces: http://v4.guadalinex.org/guadalinextoro/pool/main/l/linux-source-2.6.20/linux-headers-2.6.20-15-generic_2.6.20-15.27_i386.deb y http://v4.guadalinex.org/guadalinex-toro/pool/main/l/linux-source-2.6.20/linux-headers-2.6.20-15_2.6.2015.27_i386.deb 13 Capítulo 1. Conexión a la red Seleccione "Guardar enlace como", no trate de instalarlos directamente. Una vez tenga esos ficheros en su disco duro desde la terminal escriba: $ sudo dpkg -i linux-headers-2.6.20-15_2.6.20-15.27_i386.deb linux-headers-2.6.20-15-generic_2.6.20-15. Utilice la tecla del tabulador para autocompletar el nombre de los ficheros, tal como se explicó en otro lugar, esto le evitará cometer errores al escribirlo. Nuestro sistema está ya listo para la compilación. Ahora descomprimimos el paquete con las fuentes del driver: $ tar -xzvf rt2570-1.1.0-b2.tar.gz Esto creará el directorio rt2570-1.1.0-b2, dentro de la cuál econtraremos Module que es el contiene las fuentes del driver. Ahora nos cambiamos a ese directorio: $ cd cd rt2570-1.1.0-b2/Module/ E iniciamos el proceso de compilación: $ make Aparecerán ahora unos extraños mensajes. No se inquiete son los propios del compilador gcc. Si todo ha ido bien verá esto: Building modules, stage 2. MODPOST 1 modules Y en el directorio en que estamos encontrará un fichero rt2570.ko que esl el driver mismo pero ahora en su forma binaria. Puede comprobar que existe con: $ ls rt2570.ko Si obtiene un mensaje indicándole que tal fichero no existe deténgase, algo ha ido mal y no ha sido posible compilar el driver. No puede serguir adelante. Si todo ha ido bien tenemos ahora que instalar el driver, para ello ejecutamos: $ sudo make install Esto instalará el driver en el kernel. Ahora podemos cargarlo con la orden: $ sudo modprobe rt2570 14 Capítulo 1. Conexión a la red En general el proceso de instalación ha ido bien. Sin embargo tenemos que hacer un pequeño ajuste, y es que el proceso de instalación predeterminado no encaja bien del todo con el modo en que Guadalinex maneja los drivers al cargarlos en el arranque. Para que un driver sea cargado en el arranque debe existir una orden que lo indique directorio /etc/modprobe.d en lugar de esto el proceso automático de instalación ha creado tal orden en el directorio /etc/modprobe.conf que es el modo como funciona en otras distribuciones. Así que crearemos la orden correcta y borraremos el fichero creado. $ echo "alias rausb0 rt2570" | sudo tee /etc/modprobe.d/rt2570 $ sudo rm /etc/modprobe.conf Ahora lo mejor será apagar el sistema. Coloque entonces el dispositivo USB en su sitio y arranque de nuevo. Ahora para comprobar que está funcionando correctamente abra una terminal y escriba: $ iwconfig Si todo es correcto verá una salida similar a la siguiente: lo no wireless extensions. eth0 no wireless extensions. sit0 no wireless extensions. rausb0 RT2500USB WLAN ESSID:"" Mode:Managed Frequency=2.412 GHz RTS thr:off Fragment thr:off Link Quality=0/70 Signal level:-120 dBm Noise level:-256 dBm Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0 Ahora puede configurar su tarjeta del modo como se indica más abajo. 1.1.4.1.3. Tarjetas con ndiswrapper (envoltorio NDIS) Algunos proveedores de tarjetas WiFi rehusan publicar sus especificaciones hardware o los controladores para sus productos sobre sistemas operativos distintos a Microsoft Windows™, en la mayoría de los casos por los acuerdos de "no revelación" que impone el gigante de Redmond. El proyecto ndiswrapper (http://ndiswrapper.sourceforge.net) hace que sea posible usar este tipo de hardware con Linux gracias a un módulo del kernel que maneja los controladores NDIS. Para ver una lista completa de las tarjetas WiFi soportadas por ndiswrapper vaya a http://ndiswrapper.sourceforge.net/mediawiki/index.php/List Antes de utilizar este procedimiento es aconsejable comprobar que no es posible ningún otro, ni siquiera el que pasa por compilar el driver tal como se ha descrito más arriba en esta misma sección. Para configurar una de estas tarjetas el procedimiento es el siguiente: 15 Capítulo 1. Conexión a la red 1. Para proceder a la configuración, en primer lugar, necesitamos descargar los controladores de su dispositivo WiFi para Windows. Sólo necesitaremos los ficheros *.inf y *sys. Puede que dispongamos de un CD-ROM o disquete suministrados con el paquete de compra. En caso contrario los podemos descargar de la página del fabricante o directamente de http://ndiswrapper.sourceforge.net/mediawiki/index.php/List 2. Vaya ahora a Sistema−→Administración−→Drivers de tarjetas Wifi de Windows(ndisgtk) Pulse el botón Install New Driver Se le preguntará entonces por la ubicación del fichero *.inf correspondiente a su tarjeta. Localícelo y pulse Install. Y eso es todo1 3. También podemos hacer lo mismo manualmente desde una terminal: $ sudo ndiswrapper -i driver.inf $ sudo ndiswrapper -m Donde driver.inf el es fichero apropiado a su tarjeta Proceda a configurar la red como se explica a continuación. 1.1.4.2. Configuración rápida con NetworkManager La manera más rápida de conectarse a una red inalámbrica es utilizar la aplicación NetworkManager. Reside en el panel superior, junto a la fecha y hora del sistema. Lo primero que debemos hacer es pulsar en el icono con el botón derecho del ratón y marcar las casillas Activar red y Activar inalámbrico, si es que no lo están ya. Luego hacemos clic con el botón izquierdo y se nos mostrarán todas las redes inalámbricas que estén a nuestro alcance, mostrando con una barra horizontal la calidad de señal de cada una de ellas. 16 Capítulo 1. Conexión a la red Para conectarnos a la red deseada tan sólo debemos hacer clic en su nombre. Nos aparecerá entonces una pantalla pidiéndonos los datos de acceso. • Seguridad inalámbrica. El asistente detectará automáticamente el tipo de cifrado que emplea la red ya sea WEP o WPA. • Contraseña. Escriba aquí la contraseña de su red. Por defecto al escribir no verá más que puntos negros. Si desea ver lo que escribe marque la casilla Mostrar la contraseña • Tipo. A menudo la mejor opción es dejarlo en Automático. Sólo si está teniendo problemas con la contraseña de red debe probar otros tipos. Una vez hemos escrito la contraseña pulsamos el botón Entrar en la red. Si es la primera vez que realiza una operación similar aparecerá la pantalla del Gestor del depósito de claves. Se le pide entonces que introduzca una contraseña. ¿Pero qué es esto?. Permítanos una breve explicación. En nuestro trabajo diario con ordenadores utilizamos multitud de contraseñas: una contraseña para acceder 17 Capítulo 1. Conexión a la red a cada una de las redes inalámbricas a que tenemos acceso, otras para cada cuenta de correo electrónico, una más para acceder a la plataforma de teleformación o para administrar una página web, etc. ¡Son demasiadas contraseñas!. A menudo solventamos este problema poniéndole la misma clave a todo, pero esto es muy inseguro. Para resolver este problema el equipo de ubuntu está desarrollando una idea, que ya existe en otros sistemas operativos tales como MacOs de Apple: se trata de guardar todas esas contraseñas en un depósito común (también se le llama anillo) y proteger ese depósito con una sola contraseña maestra. Cuando una aplicación cualquiera, por ejemplo NetworkManager, necesite hacer uso de una o varias de las contraseñas almacenadas en el depósito, por ejemplo la que da acceso a una o varias redes inalámbricas, nos pedirá la contraseña maestra del depósito, entrará en él y podrá encontrar lo que busca. Lo que se nos pide ahora es la contraseña maestra para el depósito. Si es la primera vez que vemos esta pantalla podemos poner lo que queramos, por ejemplo la misma contraseña que tenemos como usuarios. Las siguientes veces tendremos que usar esa contraseña para acceder al depósito. De aqui en adelante cada vez que arranquemos el ordenador y tratemos de acceder a una red inalámbrica nos aparecerá la pantalla del anillo de claves pidiéndonos la contraseña maestra. Esto que para algunos es una ventaja puede ser sin embargo un incoveniente, sobre todo si nuestro ordenador lo usa más de una persona. Sería ideal que nosotros pudiéramos decidir a voluntad qué contraseñas de las almacenadas pueden usarse automáticamente, es decir, sin usar la contraseña maestra. Pero en la actualidad esto no es posible. El equipo de Ubuntu ha sido informado de este inconveniente y están trabajando en ello. Podemos ver en cualquier momento las contraseñas almacenadas en el depósito de claves. Para ello vamos al menú Sistema−→Administración−→Gestor del depósito de claves. Pulsando en la línea adecuada podemos ver la contraseña almacenada. Si queremos ver la contraseña pulsamos en la casilla Mostrar contraseña. Sin embargo cuando nuestra red usa cifrado WPA esta acción no nos mostrará la frase que utilizamos como contraseña, sino esa frase una vez ha sufrido el proceso de enmascaramiento. Será por tanto irreconocible. Esto tiene sentido. Imagine una red de acceso público donde todos los ordenadores tienen conexión inalámbrica a la red. Es necesario por tanto que todos tengan la contraseña de acceso. Pero no es buena idea que los usuarios la conozcan y puedan por tanto utilizar la red fuera del local. Si su red utiliza cifrado WEP y no quiere tener que escribir la contraseña maestra cada vez que arranque 18 Capítulo 1. Conexión a la red el ordenador puede utilizar el método de que hablamos a continuación. 1.1.4.3. Configuración de la red inalámbrica con NetworkAdmin Este método sólo es válido para redes con cifrado WEP. Esto es así porque la aplicación NetworkAdmin no es capaz de gestionar redes con cifrado WPA. Para este último tipo de redes refiérase al apartado anterior. 1. Vaya al menú Sistema−→Administración−→Red 2. Debería aparecer una Conexion inalámbrica. Si no es así vuelva al apartado anterior y compruebe que su tarjeta está soportada y que se han instalado todos los paquetes necesarios para hacerla funcionar. 3. Seleccione la Conexión inalámbrica y pulse en Propiedades. 4. Marcamos la opción Activar esta conexión 5. Nombre de la red (ESSID). Pulse en la flecha al lado del campo de texto para ver una lista de las redes a su alcance, como mínimo aparecerá una, la nuestra. Selecciónela. Si no aparece ninguna escriba el nombre de la red directamente en el campo de texto. 6. Tipo de contraseña. Si su clave es una palabra o una frase seleccione Sin formato (ASCII). Si por el contrario es algo así como C0F181157D ó 6484C7A85307084104150F4400 seleccione Hexadecimal. 7. Contraseña de red. introduzca su contraseña. Si su red es abierta y por tanto no tiene contraseña de acceso deje este campo en blanco. 8. En Configuración debemos seleccionar el protocolo de red utilizado. Si su punto de acceso tiene un servidor DHCP activo, lo cual es lo más frecuente, le asignará el resto de datos automáticamente y por tanto no tiene nada más que pulsar el botón Aceptar. Si accedemos a la red mediante una dirección IP estática debemos introducir los datos que le haya facilitado el administrador de la red. 9. La Dirección IP suele ser un número del tipo 192.168.1.9 10. Al pulsar en el campo Máscara de red una vez hemos escrito la IP aparecerá automáticamente un número que suele ser casi siempre 255.255.255.0 11. La Dirección de la puerta de enlace corresponde al número IP de su router. Asegúrese de poner el correcto pues un error aquí le impediría el acceso a Internet. 12. Una vez rellenados todos los campos pulse Aceptar. Finalmente pulse Cerrar. 19 Capítulo 1. Conexión a la red Es posible que tenga que configurar los servidores DNS bien porque su punto de acceso no los asigna automáticamente o porque haya configurado una IP estática. Haga clic en la pestaña DNS, pulse Añadir y escriba la dirección IP de su servidor DNS primario. Haga lo mismo para añadir el DNS secundario si dispone de uno. Finalmente pulse Aceptar y tras unos segundos compruebe que puede navegar. Actividad. Independientemente del tipo (o tipos) de acceso a Internet que pueda tener configurado, los servicios de resolución de nombres (DNS) se encuentran en el fichero /etc/resolv.conf. Acceda a una terminal y teclee: cat /etc/resolv.conf Ahí encontrará las direcciones IP de los DNS que haya establecido en su configuración a Internet con la herramienta gráfica. Si edita este fichero (como administrador) podrá incluir más servidores siguiendo la misma estructura. Para editarlo simplemente escriba en una terminal: sudo gedit /etc/resolv.conf 1.1.4.4. Para saber más: Conexión manual a una red inalámbrica con clave WAP En este apartado se explica cómo configurar manualmente una red con cifrado WPA. Puesto que este método es incompatible con cualquiera de los métodos gráficos explicados más arriba no lo use junto con ellos. Utilice este método sólo si está teniendo problemas o desea experimentar. En primer lugar vaya a la miniaplicación del panel superior NetworkManager y desmarque la casilla "Activar inalámbrico" y siga entonces leyendo. Wi-Fi Protected Access (WPA) designa una familia de métodos usados para conectarse a un punto de acceso inalámbrico. Está basado en la tecnología Wired Equivalent Privacy (WEP) pero proporciona algo más de seguridad que esta última. Para hacer este tipo de conexión necesitaremos el paquete wpasupplicant, normalmente dicho paquete ya está instalado en Guadalinex v3. Para comprobarlo vaya a Sistema−→Administración−→Gestor de paquetes (Synaptic), una vez allí pulse el botón Buscar y escriba wpasupplicant. Para configurar nuestra red necesitamos los siguientes datos: • ESSID de la red • Contraseña WPA • Marca y modelo de nuestra tarjeta de red • Nombre de nuestra interfaz de red • Servidor DHCP: debemos saber si nuestra computadora va a obtener la dirección IP dinámicamente, o or el contrario debe tener una dirección IP fija. Como ejemplo vamos a configurar una red cuyos datos son: • ESSID de la red: mar • Contraseña WPA: linuxeschachi • Marca y modelo de la tarjeta: Intel Pro/Wireless 2200 • > Nombre de nuestra interfaz: eth1 (en su caso particular esto podría ser, eth0, eth1, ath0, ath1, wlan0, wlan1, etc.) Para saber cuál es su interfaz de red inalámbrica abra un terminal y escriba iwconfig 20 Capítulo 1. Conexión a la red • Servidor DHCP: En nuestra red las direcciones IP son asignadas dinámicamente (configuración que es la más frecuente). Así que en los ficheros que vamos a modificar a continuación, debe sustituir estos datos por los datos apropiados a su red. 1.1.4.4.1. Paso 1. Configurar wpasupplicant Abra una terminal y escriba $ wpa_passphrase mar Verá entonces la siguiente salida: $ reading passphrase from stdin Escriba ahora su contraseña de red linuxesguay Verá entonces la siguiente salida: network={ ssid="mar" #psk="linuxeschachi" psk=300dc4359b0274866d7fe2fbf193e44513cdcf12a72bdb72021c8f27ee0ae49d } Utilizando el puntero del ratón seleccione todo lo que hay a la derecha de psk= En la terminal escriba sudo gedit /etc/wpa_supplicant.conf Al final del fichero añada ésto y deje lo demás como estaba: network={ ssid="mar" scan_ssid=1 # only needed if your access point uses a hidden ssid proto=WPA key_mgmt=WPA-PSK pairwise=TKIP psk=300dc4359b0274866d7fe2fbf193e44513cdcf12a72bdb72021c8f27ee0ae49d } 21 Capítulo 1. Conexión a la red Guarde los cambios. En rigor no sería necesario ejecutar el comando wpa_passphrase para generar la clave precompartida (psk). Si no nos importa que la contraseña de red se almacene en texto plano podemos simplemente escribir: psk="linuxeschachi" Algunos sistemas pueden tener problemas para encontrar el punto de acceso (Access Point) y/o conectarse a él. Si es este su caso entonces modifique la línea ap_scan=1, con ap_scan=2, para permitir que sea wpasupplicant el que busque la red en lugar de hacerlo el driver de la tarjeta inalámbrica. Añada también la directiva pairwise=TKIP si tiene problemas para conectarse al punto de acceso2. Con lo que la cosa quedaría así. ctrl_interface=/var/run/wpa_supplicant ctrl_interface_group=0 eapol_version=1 ap_scan=2 fast_reauth=1 ### Associate with any open access point ### Scans/ESSID changes can be done with wpa_cli network={ ssid="mar" scan_ssid=1 # only needed if your access point uses a hidden ssid proto=WPA key_mgmt=WPA-PSK pairwise=TKIP psk=300dc4359b0274866d7fe2fbf193e44513cdcf12a72bdb72021c8f27ee0ae49d } 1.1.4.4.2. Paso 2. Probar la configuración. En este paso comprobaremos el buen funcionamiento de wpasupplicant. Abra una terminal y escriba: sudo /etc/init.d/wpasupplicant stop sudo wpa_supplicant -i eth1 -c/etc/wpa_supplicant.conf -D ipw -w En esta última línea usted debe poner en lugar de eth1 el nombre de su interfaz. -D ipw indica a wpasupplicant que utilice el driver ipw, que es el adecuado para las taretas Intel Pro/Wireless ipw2100 e ipw2200. Aquí usted deberá poner el driver adecuado a su tarjeta. Para ver la lista de drivers disponbiles escriba en una terminal: wpa_supplicant -h Los drivers disponibles son: hostap = Host AP driver (Intersil Prism2/2.5/3) 22 Capítulo 1. Conexión a la red prism54 = Prism54.org driver (Intersil Prism GT/Duette/Indigo) madwifi = MADWIFI 802.11 support (Atheros, etc.) atmel = ATMEL AT76C5XXx (USB, PCMCIA) wext = Linux wireless extensions (generic) ndiswrapper = Linux ndiswrapper ipw = Intel ipw2100/2200 driver wired = wpa_supplicant wired Ethernet driver En la salida del comando verá varias líneas, algunas de las cuales aparecen como errores, pero lo importante es que aparezcan las que nos indican que nos hemos asociado a un punto de acceso y que la negociación de la clave WPA ha sido correcta. Tales líneas tendrán un aspecto similar al siguiente. Associated with 00:01:38:42:55:ce WPA: Key negotiation completed with 00:01:38:42:55:ce [PTK=TKIP GTK=TKIP] CTRL-EVENT-CONNECTED - Connection to 00:01:38:42:55:ce completed (auth) Cuando haya leido esta salida pulse Ctrl+C para finalizar el comando. Si el test ha tenido éxito podemos continuar. Sólo nos queda hacer unos pequeños ajustes de tal modo que nuestra tarjeta de red inalámbrica se conecte y configur automáticamente en cada arranque. 1.1.4.4.3. Paso 3. Configurar la interfaz de red. En la terminal escriba sudo gedit /etc/network/interfaces Borre cualquier configuración anterior que pudiera haber para su interfaz de red inalámbrica y en su lugar escriba esto: auto eth1 iface eth1 inet dhcp pre-up /etc/init.d/wpasupplicant start pre-up sleep 5 Como ya se ha dicho aquí debe sustituir eth1 por el nombre de su interfaz. Esta configuración es válida siempre que la dirección IP sea asignada dinámicamente. En caso de que la IP fuera estática entoces tendríamos que escribir ésto (por supuesto sustituyendo las equis por los datos adecuados a su red): auto eth1 iface eth1 inet static address x.x.x.x netmask x.x.x.x gateway x.x.x.x pre-up /etc/init.d/wpasupplicant start pre-up sleep 5 23 Capítulo 1. Conexión a la red 1.1.4.4.4. Paso 4. Configuración del driver wpasupplicant Nos queda ya solamente activar wpasupplicant e indicarle los parámetros que debe utilizar en el arranque. Para ello en una terminal escriba: sudo gedit /etc/default/wpasupplicant Editaremos el fichero /etc/default/wpasupplicant para que sea algo así como esto: # /etc/default/wpasupplicant # WARNING! Make sure you have a configuration file! ENABLED=1 # Useful flags: # -D [driver]Wireless drive, typically optional. # -i [ifname]Interface # -c [config file]Configuration file # -d Debugging (-dd for more) # -w Wait for interface to come up # See the manual page wpa_supplicant(1) for more options and information. OPTIONS="-w" # EXAMPLES: # OPTIONS="-i wlan0 -D hostap -c /etc/wpa_supplicant.conf" # OPTIONS="-i ath0 -D madwifi -c /etc/wpa_supplicant.conf" OPTIONS="-i eth1 -D ipw -c /etc/wpa_supplicant.conf" Respecto del fichero que viene por defecto hemos cambiado lo siguiente: ENABLED=0 lo hemos puesto ENABLED=1 Y hemos añadido la línea OPTIONS="-i eth1 -D ipw -c /etc/wpa_supplicant.conf" 1.1.4.4.5. Paso 5. Final Ha llegado el momento de poner en marcha todo. En este punto el método más fácil consiste en reiniciar el ordenador. Pero no es en absoluto necesario. Por otra parte si tiene que ir haciendo pruebas cambiando uno u otro parámetro en los ficheros de configuración, puede llegar a ser tremendamente molesto tener que esperar a que el ordenador se reinicie. Así que para conectar la red escribimos: sudo /etc/init.d/wpasupplicant stop sudo ifdown eth1 sudo ifup eth1 24 Capítulo 1. Conexión a la red Pruebe entonces a navegar. Escriba en la barra de direcciones del navegador la dirección ip de un servidor web cualquiera, por ejemplo http://217.12.16.222 Hacemos esto para saber a ciencia cierta que tenemos acceso a Internet, pues podría ocurrir simplemente que nuestro servidor DNS no estuviese bien configurado. Si accede de este modo pero no lo hace poniendo una dirección con palabras, revise la configuración del fichero /etc/resolv.conf tal como se explicó más arriba. 1.2. Compartir una conexión a Internet y crear un cortafuegos La seguridad de la información en una red supone la implementación de algún mecanismo dedicado para controlar los privilegios de acceso y restringir los recursos de la red a los usuarios autorizados, identificables y localizables. Los cortafuegos o firewalls son uno de los componentes principales de la implementación de seguridad. Los cortafuegos pueden ser soluciones de hardware independiente, tales como aparatos cortafuegos de Cisco™, Nokia™, Sonicwall™... También existen soluciones de cortafuegos de software propietario desarrolladas para los mercados del hogar y de negocios por vendedores tales como Checkpoint™, McAfee™ o Symantec™. Por otra parte en redes de área local (LAN) tales como la de un Centro educativo suele ser necesario compartir la conexión a Internet: en estos casos una sola computadora tiene acceso directo a Internet y las otras máquinas de la red lo hacen a través de ella. De esta forma tendremos un gran control sobre el acceso y la seguridad de la red. Importante: A diferencia de otros sitemas operativos el filtrado de paquetes, necesario para compartir la conexión a Internet o implementar un cortafuegos, es realizado directamente en el núcleo y por tanto no se requiere de software adicional. Se encarga de ello el subsistema Netfilter que podemos manipular mediante la herramienta Iptables. El subsistema Netfilter proporciona a GNU/Linux un poderoso mecanismo cortafuegos capaz de satisfacer un amplio abanico de necesidades: desde los usuarios del hogar protegiendo un PC hasta las soluciones de Centros de Datos resguardando información vital de la corporación. Para configurar, administrar e inspeccionar las reglas de filtrado de paquetes del núcleo Linux, suele utilizar la herramienta iptables. La implementación de soluciones cortafuegos con GNU/Linux en entornos con altos requirimientos de seguridad implica un buen conocimiento de la herramienta iptables. Sin embargo el usuario doméstico o el administrador de una LAN de tamaño medio, tiene al alcance soluciones más sencillas sin perder nada de la potencia de Netfilter. En este caso la simplicidad no significa pérdida de potencia. En un primer momento veremos cómo compartir una conexión a Internet e implementar un cortafuegos con la herramienta gráfica de fácil manejo Firestarter. En un segundo apartado trataremos de hacer lo mismo pero utilizando directamente la herramienta en línea de comandos iptables, que nos servirá como introducción para cuando tengamos que crear reglas de cortafuegos más complejas 25 Capítulo 1. Conexión a la red 1.2.1. Configuración de cortafuegos con Firestarter Firestarter es un programa de cortafuegos gráfico que trata de combinar la facilidad de uso con la potencia necesaria para servir tanto a los usuarios medios como a los administradores de sistema. Según reza en su web (http://www.fs-security.com): "Usted debe preocuparse únicamente en tomar las decisiones sobre políticas de seguridad y nosotros nos ocuparemos de todo el trabajo. Esto supone un cambio radical respecto del modo como se han implementado hasta ahora los cortafuegos en Linux, que tradicionalmente han exigido un conocimiento de los arcanos". Firestarter le permitirá entre otras cosas: compartir una conexión de Internet, activar el reenvío de puertos, monitorizar la red incuidas las conexiones que atraviesan el cortafuegos, abrir y cerrar puertos, etc. Importante: Antes de empezar el usuario debe saber que Firestarter, para compartir su conexión a Internet con otros equipos, exige que su ordenador disponga de 2 dispositivos de red. ¿Por qué? Pues porque uno de los dispositivos es necesario para que su ordenador obtenga conexión a Internet de la manera habitual; mientras que el segundo dispositivo (que tendrá una configuración completamente ajena al primero) se usará para conectar su ordenador con otro ordenador (o una red local de ellos) que podrá beneficiarse de su conexión de internet. Una situación típica es que el ordenador que va a compartir la conexión esté conectado a Internet mediante un módem (ya sea ADSL O RTB) y disponga además de una tarjeta de red conectada a concentrador (switch o hub) donde también están conectados el resto de equipos de la red. Otra situación posible es que se conecte a Internet con un módem/router configurado en modo monopuesto y un ordenador (que será el que funcione como cortafuegos) con dos tarjetas de red. En ese caso una de ellas se conecta al módem/router y la otra a un concetrador de red, donde también están el resto de ordenadores de la red. Si usted se conecta a Internet mediante un módem/router configurado en modo multipuesto (lo cual es lo más frecuente) no necesitará compartir su conexión ya de que ello se encarga el propio módem/router cuando está así configurado. Si lo que pretende es utilizar Firestarter simplemente como cortafuegos, y no para compartir su conexión a Internet, entonces no necesitará de dos dispositivos de red. 1.2.1.1. Configurar Firestarter Para ejecutar la aplicación vaya a Sistema−→Administración−→Configuración de cortafuegos (Firestarter). La primera vez que lo ejecutamos se abrirá un asistente. Puede acceder a este asistente en cualquier momento desde el menú de la aplicación Cortafuegos−→Ejecutar asistente Firestarter 26 Capítulo 1. Conexión a la red En la primera pantalla del asistente se nos informa de que vamos a configurar el cortafuegos. Pulsamos Adelante. Se le pedirá a continuación que seleccione el dispositivo utilizado para conectarse a Internet. Si no lo sabe o no está seguro deje el valor detectado. Además si nuestra conexión requiere que usemos DHCP (deberá venir en las instrucciones de nuestra conexión o nos habrán informado telefónicamente desde nuestro proveedor de servicios de internet) tendremos que activar la última opción Dirección IP asignada vía DHCP. Marque la casilla Iniciar el cortafuegos al conectarse al exterior si usted se conecta a internet mediante módem que requiere marcación telefónica (PPP), con el que puede ocurrir que conexión se caiga ocasionalmente. Cuando la casilla está activada Firestarter tratará de recargar el cortafuegos tan pronto como la conexión se reestablezaca. Pulse ahora Adelante Configuración del dispositivo de red En la siguiente pantalla se nos pregunta si queremos compartir la conexión a internet. Activamos la casilla para responder que sí queremos. Al activarlo, se nos mostrará una lista de dispositivos y tendremos que elegir que dispositivo va a compartir la conexión a través de la red. Si va a utilizar Firestarte simplemente como cortafuegos no marque esta casilla. Pulsamos en Adelante .3 Pulse Adelante Red compartida Finalmente hemos llegado a la última pantalla del asistente. En ella se nos informa de que podemos iniciar el cortafuegos inmediatamente. Si no estuviera activada, activamos Iniciar el cortafuegos ahora. Después pulsamos Guardar. 27 Capítulo 1. Conexión a la red Final del asistente Si no hay ningún error en la configuración el cortafuegos Firestarter estará funcionando, permitiéndonos compartir internet y aportándonos seguridad extra. Final del asistente Firestarter está ahora funcionando en su modo predeterminado que consiste en aplicar un política muy restrictiva para el tráfico entrante y bastante permisiva con las conexiones salientes. Esto significa que usted está completamente protegido contra los intentos de conexión provinientes del exterior, pero que se le permitirá navegar por la web, leer el correo, etc. con toda normalidad. No necesita configurar nada más si esta política por defecto le resulta satisfactoria. Una pregunta que podría hacerse es qué sucede cuando se cierra el programa. La respuesta es que el firewall sigue funcionando. Puesto que Firestarter se ejecuta como un servicio se iniciará cuando el sistema arraque. Además puede usted controlarlo utilizando el menú de la propia aplicación, para ello vaya al menú 28 Capítulo 1. Conexión a la red Cortafuegos−→Detener cortafuegos 1.2.1.2. Compartir la conexión a Internet con Iptables En es apartado veremos cómo compartir una conexión a Internet sin instalar software adicional sino haciendo uso de Iptables. Iptables y Firestarter no deben utilizarse simultáneamente para implementar un cortafuegos, puesto que cada uno sobreescribirá las reglas del anterior. Lo primero que tenemos que hacer es decirle al núcleo que active el reenvío de paquetes. Para ello abrimos una terminal y escribimos: echo 1 > /proc/sys/net/ipv4/ip_forward Sin embargo esta orden sólo servirá para la sesión actual y la configuración se perderá cuando el ordenador se reinicie. Si se quiere dejar permanente el reenvio entonces ejecute sudo gedit /etc/sysctl.conf y añada al final del fichero la línea net.ipv4.conf.ip_forward = 1 Para trabajar con iptables crearemos un pequeño fichero de texto: sudo gedit micortafuegos En él que pondremos lo siguiente: #Script para configurar iptables #limpiando las distintas cadenas /sbin/iptables --flush /sbin/iptables --table nat --flush #creamos la cadena que nos permite compartir Internet iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE #Antes de descomentar la siguiente linea hay que asegurarse #de que todo funciona #/sbin/iptables-save > /etc/sysconfig/iptables Y lo guardamos como micortafuegos, por ejemplo. En este fichero eth0 es el nombre de la interfaz que utilizamos para salir a Internet, deberá cambiarlo en caso de ser necesario por el adecuado a su configuración. En particular, si está compartiendo una conexión ppp (módem analógico), será necesario modificar el valor eth0 por ppp0. En caso de compartir conexión de salida a Internet a través de red inalámbrica será necesario modificar el valor eth0 por el identificador de interfaz asociado a esa red (comunmente eth1 o wlan0). 29 Capítulo 1. Conexión a la red Pero necesitará también hacer otras modificaciones para adaptarlas a su red. Para ver cuáles permítanos que le expliquemos la línea: iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE Con esta instrucción hacemos que todos los paquetes procedentes de las máquinas cuya IP comienza con 192.168. y que salen por la interfaz eth0 (que suponemos es la interfaz de conexión a Internet) se enmascaren, es decir, aparezcan como procedentes de la IP que tenga la interfaz de red eth0. Pero ¿qué sucede si las máquinas de nuestra red no tienen una ip tal como 192.168.0.4 o 192.168.1.2?. Pues que será necesario cambiar el parámetro -s 192.168.0.0/24 por el adecuado a su red4. La mayoría de los modems/routers distribuidos por las compañías de acceso a Internet asignan direcciones de alguna de esas redes (10.0.0.0/8; 172.26.0.0/16; 192.168.0.0/24), por eso dependiendo de cuál sea su caso podría tener que cambiar la línea de arriba por alguna de estas otras dos: iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -o eth0 -j MASQUERADE iptables -t nat -A POSTROUTING -s 172.26.0.0/16 -o eth0 -j MASQUERADE En todo caso probablemente únicamente necesitará una línea, la que se ajuste a su configuración de red. Ahora para poner en marcha el cortafuegos haremos ejecutable nuestro fichero y lo ejecutaremos. Para ello en una terminal: sudo chmod 744 micortafuegos sudo ./micortafuegos Y ya estaríamos compartiendo nuestra conexión. Si algo va mal no tenemos más que reiniciar la máquina puesto que las reglas del cortafuegos no son permanentes. Si queremos hacerlas permanentes no tenemos más que quitar "#" de la última línea y volver a ejecutar nuestro script. 1.2.1.3. Configuración de las máquinas de nuestra red Una vez que ha terminado la configuración ya sea con Firestarter o iptables, la IP de su máquina funcionará como puerta de enlace (gateway) a Internet para el resto de computadoras de la red. Finalmente debe indicarles a las computadoras cliente, es decir aquellas que van a hacer uso de la conexión compartida, como puerta de enlace la IP de la máquina recién configurada. Para ello vea la sección más abajo sobre "Configuración de la red". 1.3. Redes de área local 1.3.1. Introducción Una red de computadoras (también llamada red de ordenadores, red informática o red a secas) es un conjunto de tres o más computadores o dispositivos conectados entre sí y que comparten información (ar- 30 Capítulo 1. Conexión a la red chivos), recursos (CD-ROM, impresoras, etc.) y servicios (e-mail, chat, juegos), etc. Las redes de área local, generalmente llamadas LAN (Local Area Networks) son redes de propiedad privada dentro de un solo edicifio o campus de hasta unos cuantos kilómetros de extensión. Se usan ampliamente para conectar computadoras personales y estaciones de trabajo en oficinas de compañías, fábricas o centros educativos con objeto de compartir recursos (por ejemplo, impresoras) e intercambiar información. Las LAN a menudo usan una tecnología de transmisión que consiste en un cable sencillo (coaxial o de par trenzado) al cual están conectadas todas las máquinas. Los dispositivos físicos necesarios para construir una LAN son al menos: tarjetas de red para los computadores; uno o más concentradores (hub) o conmutadores (switch) de red; una cantidad suficiente de cable, frecuentemente de par trenzado. Tarjeta de red PCI 10/100 Mbps La tarjeta de red o NIC (Network Interface Card, Tarjeta de Interfaz de Red, en español), es un dispositivo electrónico que permite a un ordenador o impresora acceder a una red y compartir recursos entre dos o más equipos (discos duros, cdrom, etc). Hay diversos tipos de adaptadores en función del tipo de cableado o arquitectura que se utilice en la red (coaxial fino, coaxial grueso, etc.), pero, actualmente el más común es del tipo Ethernet utilizando un interfaz o conector RJ45. Las tarjetas de red Ethernet pueden variar en función de la velocidad de transmisión, normalmente 10 Mbps ó 10/100 Mbps. Actualmente se están empezando a utilizar las de 1000 Mbps, también conocida como Gigabit Ethernet y en algunos casos 10 Gigabit Ethernet, utilizando también cable de par trenzado, pero de categoría 6, 6e y 7 que trabajan a frecuencias más altas. Las tarjetas están conectadas por medio de un cable de par trenzado terminado en un conector RJ45 que va a parar a un switch. Cada tarjeta de red tiene un número identificativo único de 48 bits, en hexadecimal llamado MAC. Estas direcciones hardware únicas son administradas por el Institute of Electronic and Electrical Engineers (IEEE). Los tres primeros octetos del número MAC identifican a proveedores específicos y son designados por la IEEE. Cable de par trenzado 31 Capítulo 1. Conexión a la red Conector RJ45 Conexiones RJ45 en un switch Ethernet Un switch (en español "interruptor" o "conmutador") es un dispositivo de interconexión de redes de computadoras. A diferencia del hub (concentrador) que difunde los paquetes de datos en todas las direcciones, el switch posee la capacidad de aprender y almacenar las direcciones de red de nivel 2 (direcciones MAC) de los dispositivos alcanzables a través de cada uno de sus puertos, con lo que se mejora notablemente el rendimiento de la red. Switch También es posible construir una red de área local utilizando dispositivos inalámbricos, en este caso lo único que se precisa es de una tarjeta de red inalámbrica (tarjeta WiFi) para cada computadora y uno o más puntos de acceso (Acces Point). En realidad, la comunicación inalámbrica digital no es una idea nueva. Ya en 1901 el físico italiano Marconi demostró un telégrafo inalámbrico de barco a costa usando el código Morse (los puntos y las rayas son binarios después de todo). Los sistemas inalámbricos modernos tienen mejor rendimiento, pero la idea básica es la misma. La tarjeta inalámbrica es ya moneda corriente en portátiles, pero también es frecuente en equipos de sobremesa. Tarjeta de red inalámbrica 32 Capítulo 1. Conexión a la red Punto de acceso Además de los dispositivos físicos para que sea posible la comunicación todas las computadoreas de la red, independientemente de cual sea su sistema operativo, tienen que hablar el mismo lenguaje. A ese lenguaje común que permite el intercambio de información en la red le llamamos un protocolo de red. Aunque son muchos los protocolos de red nos interesa el TCP/IP puesto que es la base sobre la que se contruye Internet y la mayoría de las redes locales. En realidad TCP/IP más que un protocolo es un conjunto de protocolos: Protocolo de Control de Transmisión (TCP) y Protocolo de Internet(IP). Aunque la descripción de este conjunto de protocolos escapa con mucho a los propósitos de este curso nos quedaremos con lo más característico. El protocolo TCP/IP exige que cada máquina de la red tenga una dirección IP única. La convención es escribir estas direcciones en la denominada notación decimal separada por puntos (dotted decimal notation). En esta notación cada dirección IP es descrita como un conjunto de cuatro números del rango 0 a 255 separados por puntos. Así 192.168.0.1 ó 172.126.0.1 son direcciones IP válidas mientras que 192.162.256.0 ó 192.23.4 no lo son. 1.3.2. Configuración de la red con Guadalinex El proceso de configuración de una tarjeta de red en Guadalinex se realiza, comunmente, durante la instalación del sistema operativo. En cualquier caso, el usuario pudo decidir postergar este proceso por diferentes razones. El proceso a seguir para preparar el ingreso del equipo en una red local es el siguiente: 1. Lanzamos la aplicación Sistema−→Administración−→Red 2. Introducimos la contraseña de administración y nos centramos en la pestaña Conexiones 33 Capítulo 1. Conexión a la red Configuración de la red 3. Seleccionamos el dispositivo asignado a nuestra tarjeta de red y pinchamos en Propiedades Propiedades del dispositivo 4. En la ventana propiedades de la interfaz, seleccionamos la opción Manual (si necesitamos una configuración de red fija), o bien Automática (si disponemos de un servidor DHCP en la red) 5. En caso de seleccionar el modo Manual, debemos asignar una dirección IP y máscara de subred al equipo, acorde con los datos de nuestra red local (solicite estos datos al administrador de la red local). El dato puerta de enlace no es necesario para configurar una red local. Sin embargo si usted tiene acceso a Internet a través de algún dispositivo tal como un modem/router o una computadora que esté compartiendo la conexión a Internet debe poner aquí la dirección IP de dicho dispositivo. Todos estos datos son escritos en el fichero /etc/network/interfaces cuyo contenido puede ser más o menos el siguiente: auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp name Tarjeta de red Ethernet En este fichero la primera intefaz definida es lo que es la interfaz de loopback necesaria para el buen funcionamiento de sistema. En general no tendrá que preocuparse de ella. 34 Capítulo 1. Conexión a la red Al siguiente interfaz definida es la interfaz Ethernet eth0. Se dice que tomará la dirección por medio de un servidor dhcp y que se activará automáticamente en el arranque (auto eth0) Aquí tiene otro ejemplo esta vez con asignación de IP estática y con puerta de enlace en 192.168.1.1 auto eth0 iface eth0 inet static address 192.168.1.6 netmask 255.255.255.0 gateway 192.168.1.1 Usted puede ver en todo momento cómo está configurada su/s tarjeta/s de red con el comando: $ ifconfig eth0 Link encap:Ethernet HWaddr 00:03:0D:2C:E4:D9 inet addr:192.168.1.6 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::203:dff:fe2c:e4d9/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:19379 errors:0 dropped:0 overruns:0 frame:0 TX packets:16890 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:20769263 (19.8 MiB) TX bytes:2614203 (2.4 MiB) Interrupt:5 Base address:0x400 Asimismo puede ver la tabla de rutas de red incluido su gateway con $ route Kernel IP routing table Destination Gateway 192.168.1.0 * default 192.168.1.1 Genmask 255.255.255.0 255.255.255.0 Flags Metric Ref U 0 0 UG 0 0 Use Iface 0 eth0 0 eth0 Una misma tarjeta de red puede tener más de una dirección IP. Para ello modifique el fichero /etc/network/interfaces de este modo: auto eth0 iface eth0 inet static address 192.168.1.6 netmask 255.255.255.0 gateway 192.168.1.1 auto eth0:0 iface eth0:0 inet static address 172.74.1.2 netmask 255.255.255.0 Como ve puede añadir tantos dispositivos como desee comenzando por eth0:0 y siguiendo por eth0:1, eth0:2, etc. Para activar un tarjeta de red inmediatamente utilice el comando ifup cuya sintaxis general es ifup nombre_interfaz por ejemplo, $ sudo ifup eth0:0 35 Capítulo 1. Conexión a la red Para desactivar una tarjeta de red inmediatamente utilice el comando ipdown cuya sintaxis general es ifdown nombre_interfaz por ejemplo, $ sudo ifdown eth0 1.3.3. Compartir recursos en redes Windows™ con SAMBA Samba es una suite de aplicaciones Unix que habla el protocolo SMB (Server Message Block). Mediante el soporte de este protocolo, Samba permite a los servidores Unix entrar en acción, comunicando con el mismo protocolo de red que los productos de Microsoft Windows™. De este modo, una máquina GNU/Linux con Samba puede funcionar como servidor en una red Microsoft™ y ofrecer entre otros los siguientes servicios: • Compartir uno o más sistemas de archivos. • Compartir impresoras, instaladas tanto en el servidor como en los clientes. • Funcionar como un Controlador Principal de Dominio (PDC) • Samba puede actuar también como cliente usando los servicios (discos e impresoras) ofrecidos por máquinas Windows. 1.3.3.1. Acceder desde Guadalinex a recursos compartidos en máquinas Windows En este primer caso veremos a Guadalinex como cliente accediendo a recursos compartidos en computadoras con Windows. Los pasos a seguir para acceder a recursos compartidos fuera de nuestra máquina son los siguientes: 1. Vamos al menú Lugares−→Servidores de red. 2. A continuación, tras un pequeño tiempo de espera, aparecerá el icono Red de Windows, sobre el que tendremos que hacer doble click.5. 36 Capítulo 1. Conexión a la red Red Windows 3. Tras un lapso de espera, surgirán los dominios y grupos que se encuentren en la Intranet. Accederemos a ellos con doble click. Red Windows 4. Una vez dentro del dominio/grupo, aparecerán automáticamente los equipos disponibles. Tendremos que hacer doble click sobre el equipo al que queramos acceder. 37 Capítulo 1. Conexión a la red Equipos del dominio 5. Por último, debemos facilitar el nombre de usuario y contraseña correctos para poder acceder al equipo si así se solicita, y a continuación, acceder al recurso que buscábamos. También es posible montar un recurso compartido como si fuese una carpeta más de nuestro sistema, algo similar a lo que en otros entornos se conoce como "unidad de red". Para ello: • Una vez tengamos delante el recurso compartido que queremos montar como parte de nuestro sistema, hacemos clic sobre él con el botón derecho del ratón y en el menú emergente seleccionamos "Conectarse con este servidor" 38 Capítulo 1. Conexión a la red • Nos aparecerá entonces una pequeña ventana solictándonos un nombre para el recurso compartido. Simplemente escribimos un nombre y pulsamos el botón Conectar • Ahora tendremos ese recurso disponible como una carpeta más de nuestro sistema, y podremos guardar o recuperar ficheros de ella desde cualquier programa. Por supuesto el que podamos escribir o no en esa carpeta dependerá de los privilegios que tengamos sobre el recurso en cuestión. • En cualquier momento podemos desmontar el recurso, es decir, desengancharlo de nuestro sistema de carpetas. Para ello desde una ventana del explorador de ficheros Nautilus, hacemos clic con el botón derecho del ratón sobre el recurso en cuestión y seleccionamos Desmontar en el menú emergente. 1.3.3.2. Acceder desde Windows a recursos compartidos en máquinas Guadalinex En este segundo caso nuestro Guadalinex funcionará como servidor ofreciendo recursos (carpetas y archivos) para que puedan ser accedidos desde las computadoras Windows. En primer lugar debemos asegurarnos de que el servidor samba está activo. Para activarlo abra una terminal ejecute la orden $ sudo /etc/init.d/samba start Si quiere que se active cada vez que se arranque el sistema la manera más fácil es ir al menú Sistema−→Administración−→Servicos. En la ventana emergente marcamos la casilla "Servicio de compartición de carpetas (Samba)". Finalmente pulse Cerrar. 39 Capítulo 1. Conexión a la red Habilitar SAMBA Guadalinex v4 proporciona un sencillo mecanismo para compartir recursos con otras máquinas. Por defecto durante la instalación de Guadalinex se crea la carpeta /home/compartido, y un acceso directo a ella, de nombre "Compartido", en la carpeta personal de cada usuario. Así que el modo más rápido de poner a disposición del resto de las máquinas de nuestra red un recurso (carpeta o fichero) es copiarlo aquí. Compartido Si desea compartir cualquier otra carpeta pulse sobre ella con el botón derecho del ratón y en el menú emergente seleccione Compartir carpeta. Con este método las carpetas se comparten con privilegios de sólo lectura, lo que significa que el resto de máquinas de la red podrán ver su contenido pero no podrán modificarlo. Si desea un mayor control sobre el módo como se comparten sus carpetas al añadirlas, utilice el menú Sistema−→Administración−→Carpetas compartidas 40 Capítulo 1. Conexión a la red Carpetas compartidas Para añadir nuevos recursos compartidos pulse el botón Añadir. Si desea modificar la forma en que se comparte una carpeta haga clic para seleccionarla y pulse en Propiedades En Nombre, indique un nombre para el recurso compartido. Este nombre puede coincidir o no con el de la carpeta en su sistema de ficheros. Comentario, es un campo opcional puede escribir lo que quiera. Desmarque la casilla sólo lectura si desea que los usuarios de su red puedan hacer modificaciones a su contenido. Ahora pulsando la pestaña Propiedades generales podremos acceder a algunos parámetros de configuración del servidor Samba. 41 Capítulo 1. Conexión a la red Configuración de compartición con Windows En Dominio/Grupo de trabajo: escriba el nombre del grupo de trabajo o dominio de Windows al que quiera que pertenezca su equipo. Esto es seguramente lo mínimo que usted tiene que saber para compartir recursos en redes Windows. No obstante si desea un mayor control sobre el proceso siga leyendo El fichero de configuración del servidor samba es /etc/samba/smb.conf Durante la instalación de Guadalinex v4 se crea este fichero con unas configuraciones suficientes para que el servidor se ejecute sin problemas. Sin embargo, de acuerdo con nuestros objetivos podemos hacer algunas modificaciones. El fichero smb.conf tiene un aspecto muy parecido al del los ficheros de configuración *.ini de Windows. Está divido en secciones marcadas entre corchetes [] que contienen diferentes parámetros. Los signos # y ; son comentarios, de manera que no son tenidos en cuenta por el sistema. La primera sección es [global] que controla la operativa general del servidor. Su aspecto inicial es: [global] netbios name = %h server string = Guadalinex v4 workgroup = GUADALINEX wins support = no encrypt passwords = true security = share printing = cups netbios name. El nombre netbios es el nombre con que será conocido el equipo en la red Windows. Del modo cómo esta se utilizarán como nombre netbios el nombre UNIX de la máquina (esto es, el que le puso cuando instaló Guadalinex). Puede ver el nombre de su máquina basta con ejecutar desde una terminal la orden: $ hostname. server string = Guadalinex v4. Se pone aquí una descripción de la máquina con la que será conocida en la red Windows. Puede poner aquí una descripción significativa de su computadora. workgroup = GUADALINEX. Cambie este parámetro para ajustarlo al nombre del grupo de trabajo o dominio de Windows al que pertenecerá su máquina. security = share. Indica que la seguridad será controlada a nivel de recurso compartido. Lo que significa que los privilegios de acceso dependen de cada recurso en particular y no del tipo de usuario que pretenda acceder a ellos. 42 Capítulo 1. Conexión a la red A continuación vienen una o más secciones acotadas entre corchetes [...] indicando los recursos compartidos así como los privilegios de acceso que tendrán los usuarios cuando accedan a ellos. [compartido] path = /home/compartido comment = Directorio compartido en Guadalinex v4 guest ok = yes guest only = yes browseable = yes available = yes public = yes writable = no La sección indica que estamos compartiendo la carpeta /home/compartido, que será vista por los equipos Windows con el nombre "compartido". Expliquemos esta sección un poco más. [compartido]. Indica el nombre con que verán las máquinas Windows el recurso. path= /home/compartido. Indica cuál es la carpeta real de su sistema de ficheros que está siendo compartida. Todo lo que pongamos en el interior de /home/compartido será visto por la máquinas de la red Windows. writeable = no. No se pueden borrar ni crear ficheros o subdirectorios en la carpeta "compartido", lo que significa que se comparte con permisos de sólo lectura. guest ok = yes / guest only = yes. No se precisa ser un usuario registrado del sistema para acceder a la carpeta browseable = yes. Los usuarios que accedan al recurso podrán explorar el contenido de la carpeta y de las subcarpetas que pudiera contener. Importante: En guadalinex v4 se ha habilitado un mecanismo para facilitar al usuario final compartir carpetas con el resto de usuarios de la red. En cada home de usuario existe una carpeta de nombre "compartido" que en realidad es un enlace simbólico a /home/compartido. Así que cuando queremos ofrecer al resto de la red un fichero o directorio tan sólo tenemos que copiarlo o crearlo aquí. Seguramente la mejor forma de ver cómo funciona el servidor Samba sea con unos sencillos ejemplos. En lo que sigue supondremos que tenemos la siguiente estructura: • Máquina Guadalinex. nombre = marlera descripción = Guadalinex v4 • Máquina Windows XP. nombre = portatil descripción = Equipo con Windows XP Ambos equipos pertenecen al grupo de trabajo CVALERA Caso 1. Queremos que las máquinas Windows accedan al recurso cuyo nombre es "compartido" situado en marlera pero sin tener que utilizar un nombre y contraseña de usuario. Debemos modificar la sección [global] añadiendo la línea 43 Capítulo 1. Conexión a la red security = share Explicación. Por defecto cuando una máquina Windows trata de acceder a un recurso en un servidor samba debe suministrar un nombre de usuario y contraseña válidos. De este modo deshabilitamos tal necesidad. Los privilegios de acceso serán los que se indiquen para cada recurso compartido. Adicionalmente queremos que se pueda borrar y crear carpetas o ficheros en el recurso compartido. Debemos entonces modificar la sección [compartido] writeable = yes También queremos añadir un nuevo recurso compartido con el nombre "publico" que corresponda a la carpeta real /home/samba. Para ello: $ sudo mkdir /home/samba $ sudo chmod 755 /home/samba Y en el fichero smb.conf añadimos: [publico] path = /home/samba comment = Directorio de acceso pubico writeable = no guest ok = yes guest only = yes browseable = yes Para que los cambios tengan efecto debe recargar el servidor samba, de esta forma cargaremos los nuevos privilegios sin tener que detener el servidor. Para ello utilizamos la orden: $ sudo /etc/init.d/samba reload Previamente podemos comprobar si hemos escrito correctamente todo en smb.conf con la orden: $sudo testparm Ahora en la máquina Windows XP en el explorador de ficheros y tras pulsar el enlace "Ver equipos del grupo de trabajo" nos aparecerá una ventana como la siguiente: 44 Capítulo 1. Conexión a la red Acceso desde Windows XP Si hacemos doble clic sobre el icono que representa al equipo Guadalinex v3 (marlera) podremos ver los recursos que nos ofrece sin necesidad de suministrar un nombre de usuario. Recursos compartidos Caso 2. Queremos que sólo los usuarios registrados en la máquina marlera, que en nuestro ejemplo es la máquina con Guadalinex, puedan tener acceso a los recursos compartidos. En primer lugar en la sección [global] añadimos la línea security = user Ahora debemos crear el usuario para el servidor samba. Para crear un usuario samba 45 Capítulo 1. Conexión a la red $ sudo smbpasswd -a pepe Se nos pedirá dos veces que escribamos la contraseña para ese usuario.6Es importante distinguir los usuarios UNIX estándar creados con el comando adduser y almacenados en el fichero /etc/passwd; de los usuarios samba creados con smbpasswd y almacenados en /etc/samba/smbpasswd. Para que un usuario pueda acceder a un recurso compartido en un servidor samba no basta con que tenga una cuenta Unix estándar, es necesario que además tenga una cuenta samba. Sin embargo para que un usuario pueda ser añadido a un servidor samba es preciso que tenga ya previamente una cuenta unix estándar. No ocurre así con la contraseña que puede ser diferente. Ahora en las máquinas Windows cuando tratemos de acceder a la máquina Guadalinex se nos solicitará un nombre de usuario y una contraseña sin la cual no tendremos acceso a los recursos. Registro Adicionalmente queremos que cuando un usuario acceda a la máquina con Guadalinex se le muestre, además de los recursos compartidos en general, su propia carpeta de inicio de usuario. Para ello añadimos la sección [homes] comment = Carpeta de inicio de usuario browseable = no writable = yes valid users = %S create mode = 0664 directory mode = 0775 Cuando el usuario acceda desde la máquina Windows a Guadalinex verá además de los recursos compartidos generales su propia carpeta de inicio. 46 Capítulo 1. Conexión a la red Compartir la carpeta de inicio 1.3.3.3. Agregar en Guadalinex una impresora instalada localmente en Windows. Veamos cómo imprimir en una impresora conectada a una máquina windows utilizando samba. Quizá el modo más sencillo pase por emplear el asistente para agregar impresoras. Para ello vaya el menú Sistema−→Administración−→Impresoras. Una vez allí vaya al menú Impresora−→Añadir impresora. En la siguiente pantalla marque la casilla Impresora de red y en la lista desplegable seleccione "Impresora Windows (SMB)". Habitualmente el sistema detectará automáticamente los equipos existentes en la red Windows con lo cual no tendrá más que seleccionarlo en el desplegable Equipo. Una vez seleccionado el ordenador Windows, abriendo el desplegable Impresora verá la/s impresora/s compartidas. Si no fuera así se puede deber a que el equipo no esté compartiendo una impresora. En todo caso siempre puede escribir manualmente los valores tanto del campo Equipo como del Impresora. Escriba un nombre de usuario y contraseña si éstos son requeridos para acceder a la impresora de Windows. 47 Capítulo 1. Conexión a la red Impresora SAMBA También podemos hacer lo mismo utilizando el navegador, tal como vimos en el capítulo sobre configuración de dispositivos Supongamos una impresora de nombre lexmark conectada a un equipo Windows de nombre fede. Para ello iniciamos CUPS y accedemos mediante el navegador con: localhost:631. Optamos por añadir una impresora y para ello pulsamos el enlace Añadir impresora . Rellenamos los campos Nombre, ubicación y descripción como de costumbre. En la lista desplegable Conexión seleccionamos Windows Printer via Samba y pulsamos Siguiente Añadir impresora compartida En el campo de texto URI de la conexión escribimos: 48 Capítulo 1. Conexión a la red • Si la máquina está en el mismo grupo de trabajo y no se requiere usuario y contraseña smb://nombre_maquina/nombre_impresora • Si la máquina está en el mismo grupo de trabajo y se requiere usuario y contraseña smb://usuario:contraseña@nombre_maquina/nombre_impresora • Si la máquina está en otro grupo de trabajo y no se requiere usuario y contraseña smb://grupo_trabajo/nombre_máquina/nombre_impresora • Si la máquina está en otro grupo de trabajo y se requiere usuario y contraseña smb://usuario:contraseña@grupo_trabajo/nombre_máquina/nombre_impresora Ahora sólo nos queda seleccionar el driver adecuado. Configurar el acceso 1.3.3.4. Agregar en Windows una impresora instalada localmente en Guadalinex Veamos cómo imprimir en una impresora conectada en una máquina Guadalinex utilizando samba. 7. En Cuadalinex tenemos que modificar la sección [global] del fichero smb.conf añadiendo las líneas: load printers = yes printing = cups printcap name = cups Debemos también añadir una sección [printers] comment = All Printers path = /var/spool/samba browseable = no public = yes 49 Capítulo 1. Conexión a la red guest ok = yes writable = no printable = yes printer admin = root, @ntadmins También hay que modificar un par de ficheros de CUPS para permitir que se envíen a la impresora datos "crudos" sin aplicarles filtro alguno, ya que esta función la realizará el driver instalado en Windows. En /etc/cups/mime.types hacia el final compruebe que está descomentada la línea: application/octet-stream En /etc/cups/mime.conv hacia el final descomente la línea application/octet-stream application/vnd.cups-raw 0 En la máquina Windows instale la impresora como lo haría si estuviese conectada a un equipo Windows. 1.3.4. El sistema de ficheros NFS Aunque puede utilizarse Samba para compartir recursos entre equipos sólo con Guadalinex lo más elegante y a la larga más eficaz para estos casos es utilizar NFS.8El Sistema de Archivos de Red (NFS, Network File System) es una forma de compartir ficheros eficaz y rápida entre equipos de una misma red que soporten este sistema, de forma que tenga la apariencia de que éstos están en el disco duro del equipo cliente. NFS sólo podrá ser utilizado cuando los equipos entre los cuales deseamos compartir los archivos utilizan Linux como sistema operativo. El funcionamiento de NFS es muy sencillo; se basa en el concepto de que un equipo actúe como servidor al compartir archivos y otro como cliente, pudiendo operar un mismo equipo como servidor y como cliente al mismo tiempo (si deseamos compartir archivos o carpetas de nuestra propiedad y a la vez queremos tener acceso a recursos de otros equipos). Lo mejor será verlo con un ejemplo. Partimos de una máquina cuya dirección IP es 192.168.1.6 que actuará como servidor y compartirá vía nfs el directorio /home/nfs en el que todo el mundo tendrá permisos de lectura y escritura. Además quiere que el recurso compartido esté disponible para todas las máquinas de su red. 1.3.4.1. Configuración del servidor Lo primero es instalar los paquetes necesarios para el sistema NFS, para ello: $ sudo apt-get install nfs-common nfs-kernel-server portmap Importante: En lugar del paquete nfs-kernel-server podría haberse instalado nfs-user-server. En ambos casos estamos proporcionando soporte para el servidor nfs, sólo que un caso a nivel de kernel y en otro a nivel de espacio de usuario. El soporte a nivel de kernel es más rápido y configurable, el soporte en espacio de usuario es más lento pero más fácil de depurar en caso de errores. 50 Capítulo 1. Conexión a la red El fichero clave para NFS es /etc/exports, aquí situaremos qué vamos a compartir, quién tendrá acceso y con qué privilegios. Siguiendo con nuestro ejemplo lo primero será crear el directorio /home/nfs, para ello: $ sudo mkdir /home/nfs $ sudo chmod 777 /home/nfs Ahora modificamos el fichero /etc/exports añadiéndole la línea: /home/nfs 192.168.1.0/255.255.255.0(rw) En esta línea decimos que vamos a compartir el directorio /home/nfs, que a él tendrán acceso todas las máquinas de la red 192.168.1.0 (es decir todas las máquinas de nuestra red) y que será compartido con permisos de lectura y escritura(rw). Una vez hechas las modificaciones únicamente nos queda que el servidor las lea, para ello ejecutamos: $ sudo /etc/init.d/nfs-kernel-server reload 1.3.4.2. Configuración del cliente Será necesario instalar al menos los paquetes nfs-common y portmap, aunque podría ser también conveniente instalar nfs-kernel-server, si queremos más adelante servir ficheros vía nfs. Para ello ejecutamos la orden: $ sudo apt-get install nfs-common portmap Y ahora simplemente montamos el recurso con la orden: $ sudo mount -t nfs 192.168.1.5:/home/nfs /mnt/test Donde /mnt/test es un punto de montaje que debe existir previamente en nuestro sistema de ficheros. En principio podemos hacer el montaje en cualquier directorio de nuestro sistema de ficheros. Para crear ese punto de montaje abra una terminal y escriba $ sudo mkdir /mnt/test Si queremos que el montaje sea automático cada vez que arranquemos el ordenador tan sólo debemos incluir una nueva línea en nuestro fichero /etc/fstab de este modo: 192.168.1.6:/home/nfs /mnt/test nfs rsize=8192,timeo=14,intr 51 Capítulo 1. Conexión a la red Conviene explicar esto un poco. En el primer campo indicamos la dirección del servidor y el recurso que vamos a montar. En el segundo indicamos el punto de montaje. En el tercero indicamos el sistema de ficheros, en este caso nfs. El cuarto campo es un tanto más críptico: rsize indica el tamaño del datagrama de usuario enviado por los clientes en las operaciones de lectura y escritura. timeo indica el tiempo en décimas de segundo que el cliente esperará a que una operación se complete. Es decir, indica el tiempo que el cliente esperará a que el servidor le responda. Si se sobrepasa este tiempo (timeout) entonces ocurrirá lo que indica el siguiente parámetro. intr indica abortar la operación cuando el servidor no responde. Estos dos últimos parámetros, en definitiva, indican qué hay que hacer cuando el servidor no responde, bien porque esté muy ocupado o bien porque se haya caido. Antes de reiniciar el sistema conviene comprobar que el fichero /etc/fstab va a montar correctamente el recurso nfs que acabamos de crear. Si hemos escrito algo mal en este fichero al arrancar el ordenador obtendremos diversos mensajes de error y el arranqe será mas lento. Para comprobarlo abra una terminal y escriba: $ sudo mount /mnt/test Si todo va bien tendrá ahora en su sistema de ficheros un directorio /mnt/test donde verá los ficheros y directorios compartidos desde el servidor. Ahora desmonte el recurso: $ sudo umount /mnt/test Reinicie entonces el ordenador. De ahora en adelante podrá trabajar en el directorio /mnt/test como si fuera uno más de su sistema de ficheros, por supuesto siempre que el servidor esté encendido. Notas 1. Se preguntará usted: si es tan fácill utilizar los drivers para Windows™ ¿por qué montar todo ese tinglado que hemos visto antes o por qué los desarrolladores de Linux se complican tanto la vida escribiendo drivers?. Esa pregunta se parece a esta otra: si Windows™ es un sistema operativo que funciona más o menos bien ¿por qué crear otro sistema operativo?. La respuesta a ambas preguntas es la misma: porque Linux es un sistema libre, cuyo código fuente es abierto y por tanto patrimonio de la humanidad. El enfoque de ndiswrapper no es bueno porque no hace nada contra la idea de mantener el código fuente cerrado. Para terminar usando drivers de código cerrado no haber empezado con el enorme esfuerzo que supone crear un sistema libre. En la conciencia de todo usuario de Linux debe haber una idea clara: debemos exigir a los fabricantes que liberen drivers abiertos para Linux y no comprar ningún dispositivo que no cumpla esa exigencia. Esto lejos de ser una utopía es una regla de mercado, si hay clientes para un producto y existe la tecnología para crearlo, pronto existirá el producto. 2. En el caso de la tarjeta Intel pro/Wireless con la que hemos trabajado era necesario añadirlo 3. En una situación típica usted conectará su máquina a Internet con un modem USB o serie y compartirá la conexión con el resto de equipos a través de su tarjeta de red Ethernet, conectada a un concentrador de red o mediante un cable cruzado. En ese caso su interfaz de acceso a Internet será ppp0 y la interfaz de red interna eth0. En otro escenario, frecuente por ejemplo en un Centro educativo, es que se disponga de un modem/router configurado en modo monopuesto y una máquina con dos interfaces de red: una 52 Capítulo 1. Conexión a la red conectada al router y la otra a la red interna mediante un concetrador. En ese caso la interfaz de Internet podría ser por ejemplo eth0 y la interna eth1 4. El número detrás de la barra inclinada "/" indica la máscara de red en notación abreviada. Asi 24 equivale en notación decimal a la máscara 255.255.255.0 es decir, tres octetos a uno lo que da 24. 16 equivale a 255.255.0.0 es decir, dos octetos a 1 lo que da 16 5. Si nuestro equipo pertenece ya a un grupo de trabajo de Windows existente veremos los equipos de ese grupo directamente 6. Si más adelante queremos cambiar la contraseña suprimiremos el parámetro -a y escribiremos únicamente smbpasswd pepe Para eliminar un usuario escriba smbpasswd -x nombre_usuario 7. Atención si su cliente es windows XP no es necesario utilizar samba, puesto que este sistema puede acceder a una impresora en Guadalinex utilizando el protocolo ipp tal como se explicó en el capítulo "Configuración de dispositivos" 8. Por cierto este es el sistema que se emplea actualmente en los Centros TIC, para que los usuarios puedan acceder a sus carpetas desde cualquier máquina de la red. 53