REDES HOGAREÑAS CON LINUX GNU/Linux es un sistema operativo pensado para trabajar en entornos de red, a lo largo del articulo vamos a conocer un poco mas nuestro querido GNU/Linux, aprenderemos a configurar placas de red, módem Ethernet, USB, consejos para compilar el kernel y finalmente vamos a aprovechar nuestra conexión a internet para compartirla en una red de área local o LAN, con clientes GNU/Linux e Windows, compartir archivos, recursos, configurar un proxy transparente, un firewall,y algunas directivas de seguridad. Recuerden que los pasos que se realizaran a lo largo del articulo, están pensados para distribuciones basadas en Debían, la mas conocida Ubuntu... Si utilizan otra distribución deberán buscar si existe la misma herramienta o alguna alternativa. Oscar Renato Gonzalez
Introducción Actualmente, si leemos las noticias en algunos sitios de internet, periódicos o revistas, vemos como en el mundo de las redes, cada vez nos están ofreciendo más y mejores ofertas de acceso a Internet de banda ancha, de manera que la mayoría de las personas pueden acceder a internet con una velocidad razonable, debido al avance de la tecnología y de las necesidades. ya que internet se esta convirtiendo en algo indispensable. y esta llegando cada ves a mas hogares. Obteniendo un buen servicio de internet, las personas se benefician y no desperdician su tiempo esperando delante del ordenador, mientras se carga cualquier página web o la descarga de un fichero hasta incluso pueden compartir su conexión a internet sin perder demasiado rendimiento, lo cual esta en función del ancho de banda y de la cantidad de maquinas que se compartan. Por otro lado hay quienes deciden aprovechar un acceso de este tipo para poner en marcha servicios de cara a Internet o pequeños emprendimientos, como son los servidores web, servidores ftp, etc... Pero entre toda la diversidad de ofertas, el lector se preguntará: ¿Cual de ellas es la mejor opción?, pues bien, eso depende de nuestras necesidades y requisitos a cumplir según la utilidad que le demos, como así también la cantidad de dinero disponible para gastar en una conexión a internet. Antes que nada deberíamos analizar las propuestas de la diferentes empresas que se encuentren en nuestra ciudad ya que varia el tipo y el precio del servicio según donde nos encontremos. Los servicio típicos de hoy en día son por ADSL – Fibra Óptica Wifi, cada uno de estas conexiones con sus ventajas y desventajas, (no es el objetivo del articulo explicar sus características). La idea de este articulo es explicar o dar directivas para que puedan configurar su conexión de internet, sin muchos problemas en nuestro sistema operativo favorito GNULinux y sepan donde buscar información para hacerlo. Luego de esto vamos a aprender a armar una pequeña red cableada, y para ello necesitamos varias cosas, diseñar nuestra red, verificar que cada computador
tenga una placa de red instalada físicamente y un sistema operativo funcionando, un switch con la cantidad de bocas que necesitemos, armar los cables (del tipo UTP) y conectores RJ45 según la norma EIA/TIA utilizando una crimpeadora, realizar la conexión física y configurar cada computador.
ADSL en GNU/Linux Cuando contratamos un servicio de ADSL, dependiendo de la empresa y el servicio, podemos llegar a tener 2 tipos de conexiones: 1) Mediante placa red y módem Ethernet 2) Mediante módem conectado a un puerto USB. Este último tipo de conexión necesita, en general, recompilar el kernel, cosa que todavía no hemos visto, por lo que dejaremos esta segunda opción para un poco más adelante. Por lo general cuando contratamos un servicio ADSL, uno de los 'ganchos' que tienen las empresas proveedoras de la conexión es ofrecernos el 'módem gratis'. En realidad no son gratis sino que se entregan 'en comodato' es decir que cuando se acaba el contrato y si no lo renovamos, debemos devolver el módem. Pues bien, a primera vista parece una buena opción aceptar este módem...pero si lo miramos bien ¡no es un buen negocio! Veamos porqué: Lo que normalmente nos entregan estas empresas son unos módem para conexión por puerto USB de procedencia generalmente desconocida y de muy bajo rendimiento, además de ser difíciles de configurar. Si bien, vamos a ver este tipo de módem, debemos saber que su rendimiento es bastante menor que el de un módem Ethernet. Podríamos decir que los módem USB son a ADSL lo que un winmodem es a una conexión dialup. ¿Funcionan? funcionan, pero...no le pidamos grandes cosas. Por otro lado las empresas proveedoras ISP tienen normalmente los módem Ethernet a precio de costo, para ofertarle a sus clientes. Esto significa que por un poco de dinero más tendremos una conexión mucho mejor. Esto es especialmente cierto en GNU/Linux, donde TCP está integrado en el kernel y por lo tanto las conexiones son mucho más rápidas que en otros Sistema Operativo. (si está bien configurado). Por todo lo expuesto, si tiene que contratar una conexión ADSL traten que sea mediante Ethernet y no por USB. Para poder realizar una conexión exitosa de un módem Ethernet primero debemos tener configurado nuestro placa de red correctamente.
INSTALACION DE UNA PLACA DE RED ETHERNET Lo mas probable es que la propia distribución detecte directamente la placa de red. en especial si es de las comunes o integrada. Pero si hubiera problemas, se puede configurar la placa manualmente y esto es lo que vamos a hacer nosotros. También hay modos gráficos para hacerlo, pero estos son diferentes en cada distribución, así que preferimos utilizar la consola para realizar una configuración buena y estándar. Recuerden que esto nos va a servir para configurar las placas de los distintos terminales que va a tener nuestra red.
¿Tenemos la placa de red configurada y funcionando? ... Para saberlo vamos a filtrar el archivo 'messages' de /var/log todo lo relacionado con las placas de red, que aquí se conocerán como 'eth' Veamos un ejemplo: # cat /var/log/messages | grep eth Y el sistema nos responde: Nov 29 10:20:32 localhost kernel: [ 180.440111] eth0: SiS 900 PCI Fast Ethernet at 0xcc00, IRQ 205, 00:0c:6b:45:65:d3. Nov 29 10:20:32 localhost kernel: [ 180.440111] eth0: Media Link On 100mbps fullduplex Nov 29 10:20:24 localhost kernel: [ 180.440111] bridgeeth0: already up Nov 29 11:15:03 localhost kernel: [ 180.440111] eth0: SiS 900 PCI Fast Ethernet at 0xcc00, IRQ 201, 00:0b:6a:74:45:d9. Nov 29 04:38:00 localhost kernel: [36298.539261] device eth0 left promiscuous mode ....... En estos casos la placa de red es detectada. Si utilizamos el comando ifconfig para listar las interfaces disponibles obtendremos algo similar a : #ifconfig eth0 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XX inet addr:192.168.1.248 Bcast:192.168.1.255 Mask:255.255.255.0 ......... ......... ......... ......... lo Link encap:Bucle local inet addr:127.0.0.1 Mask:255.0.0.0 ......... ......... ......... ......... nas0 Link encap:Ethernet HWaddr 00:73:06:19:01:51 inet6 addr: XX:XX:XX:XX:XX:XX Scope:Link ......... ......... ......... ......... ppp0 Link encap:Protocolo punto a punto inet addr:190.136.104.172 PtP:200.3.60.21 Mask:255.255.255.255 UP POINTOPOINT CORRIENDO NOARP MULTICAST MTU:1492 Metric:1 ......... ......... ......... ......... y nos damos cuenta que nuestro sistema ha reconocido esas interfaces, hay que notar que las placas de red Ethernet son reconocidas según el orden del slot que se encuentren conectadas, por lo tanto si
esta conectada en el primer slot pci o es integrado es detectada como eth0 Es decir que eth0 es el dispositivo asignado en /dev/ a la primera placa de red, por lo que la segunda eth1, la tercera eth2, etc...) Si pudiste encontrar las interfaces de red, significa que la placa de red esta instalada correctamente, por lo cual, podemos obviar las siguientes lineas y continuar con la configuración de esta. Para entender de que manera puedo solucionar el problema de detección de la placa debo conocer mínimamente un kernel y como funciona.
Detectando nuestra placa de red ¿Qué es un kernel? El kernel o núcleo de Linux se puede definir como el corazón de este sistema operativo. Es el encargado de que el software y el hardware de tu ordenador puedan trabajar juntos. Las funciones más importantes del mismo, aunque no las únicas, son: Administración de la memoria para todos los programas y procesos en ejecución. Administración del tiempo de procesador que los programas y procesos en ejecución utilizan. Es el encargado de que podamos acceder a los periféricos/elementos de nuestro ordenador de una manera cómoda. Hay distintos tipos de kernel, nuestro sistema GNU/Linux usa un kernel modular; un núcleo bastante grande comparado con un microkernel, pero que es capaz de delegar funciones en los llamados " módulos", partes independientes del núcleo que pueden ser incorporadas dinámicamente a este si hacen falta y luego descargadas si molestan. Así puedes cargar "drivers" para hardware, firewall o funciones especiales de red (ppp, rdsi, etc) cuando las necesitas y cuando por ejemplo, cierras tu conexión a internet, liberar la memoria que usaba ese módulo Para la solución a nuestro problema, podemos encararlo de 3 maneras, dentro de las soluciones mas fáciles se encuentra cargar el modulo de la placa de red en el kernel, También se puede optar por instalar, la versión estable del ultimo kernel disponible como paquete (.deb o .rmp ) en nuestra distribución favorita. ya que este generalmente cada vez trae mas soporte al nuevo hardware y no es complicada la instalación y por ultimo la mas complicada, trabajosa ya que se necesita conocer bien el hardware del ordenador, es compilar un kernel desde las fuentes.
Opción 1: Levantando el modulo de la placa de red Una buena pregunta sería como identifico al modulo que nos hace falta para nuestra placa de red. Para esto necesito sacar información de la placa de red. # lspci v .... ..... .... 06:08.0 Ethernet controller: Intel Corporation 82562ET/EZ/GT/GZ PRO/100 VE (LOM) Ethernet Controller (rev 01) ..... ..... ....
Si por algún no encontramos información sobre la placa de red, necesitaríamos abrir el gabinete sacar la placa del slot PCI y observar que marca tiene impresa en el chip. Con estos datos, buscamos en internet para saber que modulo le corresponde, o tambien nos podemos dirijir a /lib/modules//kernel/drivers/net donde aparecerán muchos tipos diferentes de módulos. Donde dice versión del kernel si no la conocemos exactamente podemos simplemente hacer # cd /lib/modules luego hacer # ls Y allí nos dará todos los posibles kernel que tenemos instalados en nuestra máquina. En mi caso concreto los comandos serían estos: # cd /lib/modules/2.6.1711386/kernel/drivers/net Con este 'cd' nos posicionamos en el subdirectorio 'net'. Y luego debemos listar mediante el comando 'ls' todos los archivos (drivers) que existan en el subdirectorio. root@charrua:/lib/modules/2.6.1711386/kernel/drivers/net# ls .... 3c515.ko defxx.ko ipg ppp_deflate.ko smcultra.ko 3c523.ko depca.ko irda ppp_generic.ko starfire.ko 3c527.ko dgrs.ko ixgb ppp_mppe.ko sundance.ko ..... ..... De todos los drivers que encontramos allí buscamos el que nos sirva y escribimos por ejemplo: modprobe viarhine.ko modprobe es un programa que permite agregar o quitar módulos al kernel Dependiendo de la distribución que poseamos, podremos hacerlo de una forma mas fácil o difícil, ya que con debían, bastara con un simple "modconf" como root para activar los módulos de nuestro kernel que no fueron agregados por defecto, esta herramienta nos permite configurar los módulos de manera visual, donde los módulos estarán ubicados en grupos o secciones, donde deberás buscar con paciencia, revisando cada grupo y activando el modulo que corresponda. A modo informativo, no cargues los módulos porque si, solo los que necesites. ya que esto ocupa lugar en memoria. Teniendo en cuenta que no tenemos internet, y que solo contamos con el CD o DVD de Debian. Para chequear si el paquete está en nuestro cd debemos tener configurada nuestra sources.list. #aptcdrom add agregamos el cd o dvd de debian #aptget update actualizamos la lista de paquetes que tenemos disponible para instalar
#aptcache search modconf | grep modconf buscamos el paquete modconf, en caso favorable, lo instalamos #aptget install modconf
Una vez que hayamos encontrado el modulo que nos hace falta lo seleccionamos y seguidamente nos preguntará si queremos instalar el modulo en el núcleo y que parámetros le queremos pasar. Tratándose de tarjetas Ethernet PCI, en la mayoría de casos no hará falta pasarle ningún parámetro adicional, ya que los autoprobará el kernel mismo, pero si nuestro caso fuese el de poseer una tarjeta ISA, necesariamente le deberemos pasar los parámetros "irq" e "io". Si no supiéramos estos parámetros podemos adquirirlos, mirando la bios de nuestro ordenador o en el panel de control de windows, si poseemos una partición con este sistema operativo (¿craso error?). Si nuestra distribución no es debían, y esta basado en Red Hat, la forma de añadir el modulo al kernel será, primero cargando el susodicho modulo, mediante el comando: modprobe modulo
Y después, para que lo cargue automáticamente en el arranque del sistema, deberemos añadir estas líneas al fichero /etc/config.modules (este fichero puede variar según la distribución, pues por ejemplo en debian es /etc/modules.conf o en Red Hat /etc/conf.modules): alias ethx modulo options ethx io=0xXXX irq=X
Como es de suponer, la segunda linea hace referencia a los parámetros io e irq de la tarjeta, por lo que si nuestra tarjeta es PCI, no hará falta ponerla.
Opción 2: Instalando un Kernel compilado para Debian Hay varias formas de obtener un kernel actualizado, la mayoría de las distribuciones como Debian o RedHat etc ... ya tienen paquetes (.deb, .rpm ..) con kernel funcionales en el caso de Debian, es muy sencilla su instalación y con un gran soporte de hardware, pero si por alguna u otra razón justo, lo que nos hace falta no esta compilado y no se lo pueda cargar como modulo, con alguna herramienta en ese caso no tendremos mas remedio, que compilar un kernel desde el código fuente y agregar los modulos faltantes. Vamos a empezar con explicar como instalar un kernel (.deb) en Debian y luego daremos algunas directrices para su compilación desde el código fuente. Vamos a considerar que aun no tenemos internet, aun en nuestro hogar. Entonces lo que vamos a hacer es bajar un kernel del sitio oficial de Debian, recordando que Debian como muchas otras distribuciones compilan varios kernel para distintas arquitecturas y va a depender de nosotros la arquitectura a elegir, la cual debe concordar con el computador que vamos a actualizar. En este sitio http://www.debian.org/distrib/packages van a encontrar una sección “Búsqueda en los directorios de paquetes” , allí colocan “linuximage”, en el filtro de versiones colocan la versión que tienen instalada en el ordenador a actualizar y por ultimo pulsan en buscar. Si no pueden identificar su arquitectura, o se sienten inseguros, hay un comando en debían que permite saber la versión del kernel y la arquitectura que tenemos instalado. (la cual no siempre es la mejor a modo informativo). # uname r
2.6.222686 el ultimo guión indica que la arquitectura es una 686 supongamos que como resultado de búsqueda obtenemos lo siguiente. linuximage2.6.222486 (Linux 2.6.22 image on x86) linuximage2.6.222686 (Linux 2.6.22 image on PPro/Celeron/PII/PIII/P4) linuximage2.6.222686bigmem (Linux 2.6.22 image on PPro/Celeron/PII/PIII/P4) linuximage2.6.222amd64 (Linux 2.6.22 image on AMD64) linuximage2.6.222k7 (Linux 2.6.22 image on AMD K7) linuximage2.6.222vserver686 (Linux 2.6.22 image on PPro/Celeron/PII/PIII/P4) linuximage2.6.222vserverk7 (Linux 2.6.22 image on AMD K7) ..... otras arquitecturas ..... Aclaraciones: bigmen es para pcs con mas de 4 GB de RAM, server para ordenadores pensados para brindar algún tipo de servicio. Vamos a suponer que tenemos una PIV HT 3GHz pc de escritorio con 512 MB RAM, Cual elijo? , por las características de este ordenador elijo linuximage2.6.222686 que soporta Ppro/Celeron/PII/PIII/P4 Para instalarla es muy sencillo, nos ubicamos donde descargamos el paquete. #dpkg i linuximage2.6.222686 al finalizar la instalación te actualizara automáticamente el gestor de arranque, Así que en el nuevo reinicio de la pc, el gestor de arranque tendrá una nueva entrada que es la que corresponde al nuevo kernel instalado, lo seleccionamos y empezamos a bootear .... deberíamos verificar si nos reconoce la placa de red, que fue el motivo que nos llevo a instalar un nuevo kernel. abrimos una consola # dmesg | grep eth con este comando buscamos en el buffer del kernel el dispositivo ethx. también podemos utilizar las herramientas antes mencionadas para ver si la detecto o no.
Opción 3: Compilando el kernel Por ultimo les daré unos consejos para que compilen un kernel. Recuerden que para lograrlo, obteniendo un resultado óptimo y que nos reconozca todas las piezas del hard, necesitamos investigar sobre que hardware tenemos y como indicarle al kernel que tenemos dicho hardware. Voy
a explicar como hacerlo de manera general. El primer paso es obtener el código fuente de la ultima versión del kernel en www.kernel.org. Hay que tratar de conseguir la versión mas reciente de todas las disponibles, ya que seguramente nos sera mas provechosa si estamos buscando obtener soporte para una placa de red que la versión del kernel instalado actualmente en nuestra maquina no ofrezca. Es recomendable que bajes el código fuente de una versión estable del kernel entonces deberás bajar una de las ramas pares (2.4.x, 2.6.x, ) según corresponda. Las ramas impares (2.1.x, 2.3.x y 2.5.x) son kernels de desarrollo y contienen código experimental, para testear. No son recomendables. Una vez que descargamos el código fuente, debemos copiarlo a /usr/src/ #cp /home/user/download/linux-2.6.23.9.tar.bz2 /usr/src/. #cd /usr/src #bzip2 dc linux2.6.23.9.tar.bz2 | tar xv descomprimimos el kernel #cd linux-2.6.23.9 nos ubicamos dentro de la carpeta descomprimida. Ahora deberíamos configurar el kernel. para lo cual tenemos varias opciones: make config ( presenta un sistema de consola que pregunta sucesivamente todas las posibles opciones de configuración, muy engorroso). make menuconfig (presenta una manera gráfica de configurar el kernel, hecho con ncurses, no hace falta tener las Xwindow corriendo, ) make xconfig. presenta un sistema visual para configurar el kernel hecho con qt3. En mi opinion xconfig es el mejor para alguien que esta empezando en esto. Nota: para utilizar make menuconfig necesitaremos el paquete libncurses5dev (con todas sus dependencias) y para utilizar make xconfig necesitaremos el paquete libqt3dev (con todas sus dependencias). Así que según lo que queramos utilizar, tendremos que instalar los paquetes correspondientes #apt-get install libncurses5-dev
o bien: # apt-get install libqt3-dev
Una duda que siempre surge: para configurar el kernel, ¿puedo partir de una configuración conocida?. Pues la respuesta es que sí. Si tenemos, por ejemplo, instalado el kernel que trae Ubuntu por defecto, en el directorio /boot nos encontraremos con un archivo llamado config2.6.2214 generic, y, ¿qué es ese archivo?, pues no es más que un archivo de texto con la configuración actual del kernel, por lo tanto, para partir de esa base y comenzar la configuración del nuevo kernel desde la actual, lo que tenemos que hacer es copiar dicho archivo al directorio donde se encuentra el codigo fuente del kernel a compilar por ejemplo /usr/src/linux2.6.23.9, pero llamándolo .config, es decir: $ cd /usr/src/linux-2.6.23.9 /usr/src/linux-2.6.23.9$ sudo cp /boot/config-2.6.22-14-generic ./.config
(lógicamente tendreis que cambiar los números de versión del kernel por los que se ajusten a vuestro
caso particular). Pues ahora ya podemos hacer (situados en el directorio /usr/src/linux2.6.23.9) un sudo make oldconfig menuconfig o un sudo make oldconfig xconfig y modificar las opciones que queramos del kernel, es decir, configurarlo a nuestro gusto. Con mucho cuidado, eso sí, porque este es el paso crítico. Aquí es donde lo podemos arruinar todo si, por ejemplo, no incluimos algún módulo necesario para nuestro sistema. Deben seleccionar las Sección Device Drivers, Network device support y dentro de esta, "Ethernet (10 or 100 Mbit)"). y en esta sección debemos buscar la placa de red que nos corresponda y si el lector lo considera oportuno, podrá seleccionarlo como modulo. Si ya le habíamos incluido antes el driver al núcleo, este paso no será necesario (automáticamente detectará las tarjetas), pero si lo habíamos incluido como modulo, habrá que metérselo al kernel.
Falta .....
CONFIGURACION DE UNA PLACA DE RED ETHERNET Para configurar nuestra placa de red necesitamos información sobre la red a la cual pertenece el ordenador: Dirección IP EstáticaManual o Dinámica DHCP Máscara de red Gateway (Por donde salimos a internet) DNS primario y secundario Dependiendo de esta información, vamos a configurar de una u otra manera. Por ejemplo si la IP es dinámica (DHCP) no será necesario hacer nada ya que todos o la mayoría de los datos necesarios se configurarán en forma automatizada. Si en cambio la IP es estática (es decir que no cambia) debemos ocuparnos de proveer los datos necesarios manualmente. ASIGNAR IP Y MÁSCARA DE RED Antes de Asignar un IP a una interface necesitamos saber lo siguiente, hay tres tipos de clases de IP, y por razones útiles algunos rangos de direcciones de cada una de las clases de red han sido reservados y designados como rangos de direcciones “reservadas” o “privadas”. Estas direcciones
están reservadas para el uso de redes privadas y no son encaminadas en Internet. Son usadas normalmente por organizaciones con su propia intranet, o incluso por redes pequeñas como es nuestro caso. Rangos de direcciones IP reservados para uso público Clase Redes A
10.0.0.0 hasta 10.255.255.255
B
172.16.0.0 hasta 172.31.0.0
C
192.168.0.0 hasta 192.168.255.0
Nosotros podemos elegir cualquiera de estos rangos de direcciones privadas, va a depender de la cantidad de maquinas que van a formar la red. Para el ejemplo nos basta usar el rango 192.168.0.0 hasta 192.168.255.0 Para configurar la tarjeta de red vamos a utilizar el comando 'ifconfig' de la siguiente forma: # ifconfig interface [Address Families Type] up netmask <mascara> broadcast
Algo como si los paquetes no encuentran una ruta adecuada, (como no conocen las direcciones de internet sino solo las de la red interna), serán enrutados en forma predeterminada al default gateway o puerta predeterminada. El default gateway es parte de la configuración del servidor y lo veremos oportunamente cuando nos ocupemos de Squid (un proxy muy utilizado por GNU/Linux y NAT Network Address Translate). Por ahora simplemente nos interesa configurar la placa de red de los ordenadores de la red. Solo debemos proveerle la información de la dirección del default gateway. La forma de escribirlo es esta: # route add default gw Veamos un ejemplo: # route add default gw 192.168.0.1 Configurando en forma permanente nuestra placa de red: Con lo que hemos visto tendríamos configurada nuestra placa de red, pero...si dejamos las cosas así, la próxima vez que encendamos la máquina todos estos datos habrán desaparecido y tendríamos que volver a escribirlos. Hay una forma mejor que es editar un archivo. Si el archivo no existe lo creamos y si existe podemos modificarlo. Utilizamos nuestro editor de texto preferido para lo que sigue: # mcedit /etc/network/interfaces Veamos lo que puede mostrarnos: auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 192.168.0.45 netmask 255.255.255.0 gateway 192.168.0.1 La primera parte es necesaria ya que estas placas de red necesitan para su funcionamiento tener habilitada esta opción. El loopback le permite funcionar viéndose a sí misma. Luego viene un espacio y más abajo la configuración de la placa como eth0. Lo primero que nos indica es que se trata de una conexión estática, luego nos indica la dirección IP, más abajo aparece la máscara de red y más abajo la puerta de enlace. Veamos ahora este mismo archivo pero para una configuración dinámica. Recordemos que esto depende de los que nos haya dado nuestro proveedor de servicios ISP. Veamos el archivo en cuestión ya editado: # mcedit /etc/network/interfaces auto lo
iface lo inet loopback auto eth0 iface eth0 inet dhcp address 192.168.0.45 netmask 255.255.255.0 gateway 192.168.0.1 Vemos que en lugar de inet static ahora dice inet dhcp. Los valores de address van a cambiar de acuerdo a la IP que nos asigne el ISP mediante su servidor DHCP, y por este motivo se le llama IP dinámica.
Configurando los hosts de red interna Existe un archivo que le dice a cada máquina cómo se llama y cual es su dirección IP no solo de su máquina sino de todas las componen una red interna. Este archivo se encuentra en /etc/hosts de cada máquina y en todas debe ser exactamente igual a fin que no existan errores. Un archivo de ejemplo podría ser este: # /etc/hosts 10.0.0.1 juan 10.0.0.2 pepe 10.0.0.3 roberto 10.0.0.4 correos 10.0.0.5 apache
Configurando los DNS En el archivo etc/hosts tenemos una pequeña lista de IPs que utilizamos para que cada computadora pueda a partir de un nombre ubicar una dirección IP. Pero...¿cómo saber todas las direcciones de los sitios que hay en Internet?. Esa titánica tarea es realizada por los servidores de DNS con enormes bases de datos. Si nuestra placa de red nos va a servir para 'salir a internet' debemos indicarle donde se encuentran por lo menos dos servidores de nombres (DNS). Esto se guarda de la siguiente manera: # mcedit /etc/resolv.conf nameserver 200.45.191.35 nameserver 200.45.191.40
De esta forma le he dado dos DNS a mi máquina. Podría haberle dado más DNS o bien también haberle dado otros. Estos dos son originalmente de telecom de argentina y funcionan bastante bien, al menos en Argentina. Generalmente todos los ISP tienen algún servidor de DNS propio. Una vez configurada nuestra conexión vamos a parar nuestro servicio de red y volverlo a poner en marcha para que tome los nuevos valores. Hay quién utiliza para esto la orden 'restart'. Pero no funciona bien en todas las distribuciones. Por este motivo es preferible utilizar los comandos 'stop' y luego 'start'. Veamos cómo: # /etc/init.d/networking stop y luego # /etc/init.d/networking start luego de esto podremos comprobar el funcionamiento de nuestra placa de la siguiente manera: 1) Conexión interna: haciendo un 'ping' a una máquina de nuestra red interna que esté funcionando. # ping 10.0.0.3 PING 10.0.0.3 (10.0.0.3) 56(84) bytes of data. 64 bytes from 10.0.0.3: icmp_seq=1 ttl=64 time=0.512 ms 64 bytes from 10.0.0.3: icmp_seq=2 ttl=64 time=0.384 ms 10.0.0.3 ping statistics 4 packets transmitted, 4 received, 0% packet loss, time 2997ms rtt min/avg/max/mdev = 0.384/0.682/1.394/0.414 ms Los ping siguen indefinidamente, para poder pararlos utilizamos la combinación de teclas Ctrl+C 2) Conexión externa: Hacemos un 'ping' a una dirección de algún sitio que sepamos está funcionando. # ping yahoo.com PING yahoo.com (66.94.234.13) 56(84) bytes of data. 64 bytes from w2.rc.vip.scd.yahoo.com (66.94.234.13): icmp_seq=1 ttl=53 time=233 ms 64 bytes from w2.rc.vip.scd.yahoo.com (66.94.234.13): icmp_seq=2 ttl=53 time=265 ms yahoo.com ping statistics 4 packets transmitted,4 received, 0% packet loss, time 3999ms rtt min/avg/max/mdev = 228.076/238.893/265.289/13.644 ms Si no obtuvieramos respuesta de los pings, lo más probable es que la placa de red no esté bien configurada, aunque también es posible que el sitio que buscamos acceder estén tras un firewall y
no permitan hacer ping.
CONFIGURANDO EL MODEM ETHERNET Vamos a empezar a explicar como configurar un módem Ethernet, estos son aquellos que de un lado van conectados a la linea telefónica y del otro a la placa de red del ordenador. Como la línea telefónica no se utiliza en forma analógica para ADSL, se puede igualmente seguir usando la dicha línea al mismo tiempo que se trabaja con la computadora en Internet. Antes de centrarnos en la configuración del servicio de ADSL, es imprescindible que configuremos la placa de red Ethernet bajo GNU/Linux. Si por algún motivo se saltaron la parte explicada anteriormente y aun no la tienen configurada les sugiero que vuelvan a leer e intenten configurarla. Así pueden continuar con esta sección.
Recuerden que estos pasos están pensados para distribuciones basadas en debían si utilizan otra distribución deberán buscar si existe la misma herramienta o alguna alternativa.
Vamos a utilizar el gestor de paquetes de debian 'apt' para bajar e instalar dos paquetes importantes, uno de ellos es el llamado protocolo punto a punto o ppp y el otro es pppoe o ppp over ethernet. Escribimos en línea de comandos: aptget install ppp aptget install pppoe Una ves instalados estos paquetes, que son protocolos de comunicación utilizados por muchos ISP, para brindar su servicio de ADSL. Ahora necesitamos un cliente pppoe y para esto tenemos varias opciones va a depender de la distribución que usemos si utilizamos alguna distribución basada en debían podemos utilizar el pppoeconf, la cual permite configurar la conexión PPPoE/ADSL de manera grafica y con preguntas sencillas nombre de usuario, contraseña, Servidor DNS, y demas. Vamos a utilizar un cliente pppoe que nos sirve para cualquier distribucion, Roaring Penguin (http://www.roaringpenguin.com/products/pppoe) para conectarnos a nuestro servidor de servicio ADSL, rpppoe es un cliente libre de pppoe. Para continuar realizaremos la configuración de rp ppoe en nuestro sistema GNU/Linux.
QUICKSTART Si estamos de suerte, el metodo "quickstart" funcionara.
$ tar zxvf rppppoe3.8.tar.gz $ cd rppppoe3.8 # ./go Esto deberá configurar, compilar e instalar el software y levantara la conexión luego de responder unas preguntas antes de finalizar. Si tu quieres, tienes una opción gráfica # ./gogui Si ./go and ./gogui no funcionan. deberás continuar con los siguientes pasos Compila e instala pppd si aun no lo tienes , luego $ tar zxvf rppppoex.x.tar.gz $ cd rppppoex.x $ cd src $ ./configure $ make # make install (recuerda este paso como root) Para conseguir el funcionamiento de pppoe, es necesario completar las preguntas generadas por rppppoe Welcome to the Roaring Penguin PPPoE client setup. First, I will run some checks on your system to make sure the PPPoE client is installed properly... Looks good! Now, please enter some information: USER NAME >>> Enter your PPPoE user name (default usuario@arnetsalapd):
a) Nombre del usuario (el que ha sido dado por el proveedor de la conexión) el cual debe ser escrito en el formato nombre_usuario@servidor INTERFACE >>> Enter the Ethernet interface connected to the DSL modem For Solaris, this is likely to be something like /dev/hme0. For Linux, it will be ethn, where 'n' is a number. (default eth0):
b) Indicar la Interfaz la cual está conectado el módem. si esta conectado a una placa Ethernet debemos indicar ethn, donde 'n' es un numero. Si esta conectado al puerto USB debemos indicar la interfaz nas0 que es una interfaz virtual creada. analizaremos mas en la siguiente sección.
Do you want the link to come up on demand, or stay up continuously? If you want it to come up on demand, enter the idle time in seconds after which the link should be dropped. If you want the link to stay up permanently, enter 'no' (two letters, lowercase.) NOTE: Demandactivated links do not interact well with dynamic IP addresses. You may have some problems with demandactivated links. >>> Enter the demand value (default no):
c) En este paso, rppppoe nos pregunta si queremos estar conectados solo cuando lo solicitamos o si preferimos hacerlo de manera permanente. la respuesta depende de nuestras necesidades y del servicio, en el caso que nos cobren por el tiempo que estemos conectados respondemos que no. DNS Please enter the IP address of your ISP's primary DNS server. If your ISP claims that 'the server will provide DNS addresses', enter 'server' (all lowercase) here. If you just press enter, I will assume you know what you are doing and not modify your DNS setup. >>> Enter the DNS information here:
d) En este paso nos preguntan los DNS primarios y secundarios que nos da el proveedor del servicio. Este paso es fundamental, ya que algunos ISP brindan direcciones de resolución de nombres automáticamente, pero algunas veces esto no funciona del todo bien bajo GNU/Linux. Hay que prestar atención a este simple paso y conseguir las direcciones correspondientes del servidor primario y del secundario respectivamente. Para obtener estos datos, consultamos a quien nos ofrezca el servicio de ADSL. Averiguamos ambas direcciones y la ingresamos en orden. PASSWORD >>> Please enter your PPPoE password:
e) En este paso deberemos ingresar la contraseña de acceso a nuestro servicio de adsl FIREWALLING Please choose the firewall rules to use. Note that these rules are very basic. You are strongly encouraged to use a more sophisticated firewall setup; however, these will provide basic security. If you are running any servers on your machine, you must choose 'NONE' and set up firewalling yourself. Otherwise, the firewall rules will deny access to all standard servers like Web, email, ftp, etc. If you are using SSH, the rules will block outgoing SSH connections which allocate a privileged source port. The firewall choices are: 0 NONE: This script will not set any firewall rules. You are responsible for ensuring the security of your machine. You are STRONGLY recommended to use some kind of firewall rules. 1 STANDALONE: Appropriate for a basic standalone websurfing workstation 2 MASQUERADE: Appropriate for a machine acting as an Internet gateway for a LAN
>>> Choose a type of firewall (02):
f) Esta pregunta nos ofrece configurar un firewall. Mi consejo es responder la opción 0 que corresponde a ninguno. Sugiero que cuando configuren un firewall lo hagan ustedes mismos y sobre todo eviten las reglas automáticas que pueden traerles tantos dolores de cabeza. Respondemos con “0” a esta opción.
** Summary of what you entered ** Ethernet Interface: nas0 User name: ogslash@arnetsalapd Activateondemand: No Primary DNS: 200.45.191.35 Secondary DNS: 200.45.191.40 Firewalling: NONE >>> Accept these settings and adjust configuration files (y/n)?
g) Esta es la ultima pregunta, para saber si queremos hacer efectiva la configuración que fuimos completando. Respondemos que si (“y”) para que se generen los archivos de conexión que utiliza nuestro cliente pppoe. Podemos chequear la configuración generada automáticamente por rppppoe /etc/ppp/papsecrets /etc/ppp/peers/dslprovider
Para automatizar la conexión vamos a crear o modificar el archivo ADSL, el cual esta ubicado en /etc/ppp/peers/adsl # example configuration for the kernel space PPP over Ethernet driver # # See the manual page pppd( for information on all the options. # MUST CHANGE: replace myusername@realm with the PPP login name given to # your by your provider. # There should be a matching entry with the password in /etc/ppp/papsecrets # and/or /etc/ppp/chapsecrets. user "nombre_usuario@servidor" # Load the PPPoE plugin. plugin rppppoe.so # Ethernet interface to which the modem is connected. nas0 # Assumes that your IP address is allocated dynamically by the ISP. noipdefault # Try to get the name server addresses from the ISP. usepeerdns # Use this connection as the default route. defaultroute # Makes pppd "dial again" when the connection is lost. persist
# Do not ask the remote to authenticate. noauth
Es bastante intuitiva la configuración, esto nos sirve para usarlo en conjunto con un comando pppd Para conectarnos #pppd call adsl
CONFIGURANDO EL MODEM USB En esta sección vamos a configurar un módem USB, un punto fundamental, para tener en cuenta, es que si bien hay muchos módems USB dando vueltas, en general vamos a encontrarnos con cuatro o cinco chips relativamente comunes que usan la mayoría de los módems , independientemente del modelo y la marca. Un fabricante suele diseñar un modelo de referencia que otros adaptan a sus propias necesidades. De ahí que un mismo driver funcione con módems de diferentes fabricantes. Lo primero que tendrán que averiguar, es saber que chipset utiliza el módem que recibieron y ver que driver precisan. Recuerden que la explicación va a ser de manera general debido a la inmensa cantidad de módems usb circulando, solo vamos a resumir los pasos a seguir, así cuando vayan a buscar en internet tengan ciertos fundamentos. Los tres drivers que abarcan casi todo el abanico de los módems USB que los ISPs ofrecen en sus promociones son: EagleUSB mas información en http://faq.eagleusb.org/wakka.php?wiki=ModemSupport para módems basados en chips chips CT350, fabricado por Analog, Sagem Fast 800, Sagem Fast 800 PE/E2, Sagem Fast 908, Sagem Fast 800 E3, Comtrend ct 350, Comtrend ct 361, US Robotics USR9000 Sureconnect, TELINDUS ND 220 ARESCOM, TELINDUS ND 220b ARESCOM, Elcon 111U (pots), Elcon 131U (isdn), Aztech 206U, Aztech 256UR2 (isdn), Dlink DSL200i, ARESCOM NDS1060, ECI BFOCuS 150A II, Aethra Starmodem, Huawei SmartAX MT810 ID, Teledat 300 usb, Zoom 5510B, ASUS AAM6000UG, Elsa Microlink ADSL
Conexant AccessRunner mas información en http://accessrunner.sourceforge.net/modems.shtml Conexant ADSL modem (Euphrates project), HAMLET, Conexant ADSL modem (Hasbani project), AusLinx AL2006, ACORP Sprinter@ADSL USB, Amigo HMXCA85URK8, Digicom Michelangelo Usb C, Origo ASU 8000, Atlantis Pocket USB ADSL Modem (A01AU2), Conexant ADSL modem, Atlantis IStorm USB (A01AU1), Trust Speedlink 235A, Light System ADSL Module, Billion BIPAC7000, Olitec ADSL modem version 1 y 2, Trust/Amigo Technology Co. AMXCA86U, Zoom 5510, Draytek Vigor 318, ZyXEL 630C1 aka OMNI ADSL USB (Annex A),
ZyXEL 630C3 aka OMNI ADSL USB (Annex B), Aethra Starmodem UM1020, Netopia Cayman 3341 / 3351, Netopia Cayman 3342 / 3352 También haremos una breve mención a un driver diseñado para el módem USB ZyXEL 63011, que según los desarrolladores, debería funcionar también para los módems Asus aam600ug, Digicom MichelAngelo USB A, Topcom Webracer 851 y PROLink Hurricane 8000.
Por último, si contratan ADSL y reciben un módem USB que no se menciona en esta sección, si no encuentran datos en internet e, incluso, si el propio fabricante les dice que es imposible hacerlo funcionar bajo GNU/Linux, les sugiero que no se rindan y sigan investigando. Porque no es necesario ser un guru para hacerlo andar y en segundo lugar, porque lo mas probable es que el módem termine funcionando bien. Siempre ten presente el chip que utiliza el dispositivo, cuando no encuentres los drivers específicos. Antes que nada deberemos chequear nuestro kernel y ver si tenemos soporte USB, para que detecte el cable-módem cuando lo conectemos y para que utilice esa conexión, como una de red. Dicho soporte, estará dado en la mayoría de distribuciones (y en la que no este dado, es posible, que se puede dar cargando los módulos pertinentes), ya que cada vez son más comunes los dispositivos que utilizan dicho puerto. Si no tuviésemos soporte para dispositivos USB (ni para utilizar el USB como un puerto de red) y tampoco tuviésemos posibilidad de cargar los módulos que otorgan dicho soporte, deberemos compilar nuestro kernel. Entonces lo que tenemos que hacer es investigar que módulos tienen que estar cargados para el módem usb que tengo. Para fijarnos que módulos tenemos cargados podemos usar el comando lsmod Recuerden que los módulos a cargar se encuentran ubicados en esta sección del kernel, deben tener en cuenta que no varia demasiado, depende de el módem. [*] Enable loadable module support [*] Set version information on all module symbols [*] Kernel module loader Networking Networking options <*> Packet socket <*> Unix domain sockets [*]TCP/IP networking [*] Asynchronous Transfer Mode (ATM) [*] Classical IP over ATM Device Drivers USB support USB DSL Módem Support Network Device Support <M>PPP (point-to-point protocol) support <M>PPP Deflate compression
<M>PPP Over Ethernet (Experimental) <M>PPP over ATM Una vez hecho esto, debemos instalar el firmware del módem y configurar el cliente ppp, ya sea con el pppoeconf o utilizando el rp-pppoe explicados anteriormente.
Explicación como funcionan los ISP DHCP con IP dinámica La mayoría de los Módems Ethernet operan de forma similar, y algo a tener en cuenta es saber que los ISP guardan la configuración MAC de la tarjeta de red (la dirección MAC, es la dirección física de la tarjeta y esta es irrepetible por lo que a ellos le sirve para identificarla entre todas las existentes en el mundo), que se utiliza en ordenador para conectarse con el cable-módem para evitar que se conectara el cable-módem directamente a un hub o switch. La manera de operar de estos módems es la siguiente: 1. Cuando te instala el Módem en casa, se apunta la dirección MAC del mismo, para tener controlados todos los módems instalados y así no asignarle una IP a un cable módem no instalado por ellos (si utilizas el tuyo propio, puedes configurarlo a tu antojo, pudiendo por ejemplo, ponerte un mayor caudal de ancho de banda). De esta forma, ellos configuran sus servidores DHCP en base a la MAC de estos cable-módems. 2. El cable-módem, a su vez, lleva consigo un servidor DHCP que te asigna, entre otras cosas, la ip dinámica directamente a la tarjeta de red del ordenador. Y es este servidor DHCP el que en algunas versiones de módems, captura la MAC de tu tarjeta de red. Por lo que si cambiamos la tarjeta de red, el servidor DHCP que lleva consigo el módem, se tomara su tiempo para darse cuenta donde esta ubicado por lo que tardara un poco mas de lo habitual en volverte a asignar un número de ip. Con estas consideraciones previas y teniendo muy claras las IPs que vamos a asignar a cada uno de los ordenadores que componen nuestra LAN, ya podemos ponernos en acción. Como hemos visto anteriormente, los ISP no te asignan una IP fija, sino que te la otorga por medio de un servidor DHCP de forma dinámica, así que lo primero que tendremos que hacer es instalar cualquier cliente DHCP, de los que existen para GNU/Linux. Nosotros hemos elegido el cliente dhclient, pero el lector puede hacer uso del que guste o le toque configurar, pues el funcionamiento es similar en todos ellos (cambian pequeñas cosas). Una vez tenemos instalado el cliente de DHCP, deberemos configurar las tarjetas de red para que una de ellas, la que conectamos al módem, coja la ip automáticamente (en nuestro caso será eth0), mientras que la otra tenga una ip fija de nuestra red interna. Esto lo conseguiremos en debian, modificando el fichero /etc/network/interfaces, quedando de esta manera: # mcedit /etc/network/interfaces auto lo iface lo inet loopback # eth0 puede ser remplazado por la interfaz donde se conecte su modem. le recomiendo que este # atento y coloque la interfaz correcta. auto eth0
iface eth0 inet dhcp auto eth1 iface eth1 inet static address 192.168.0.1 netmask 255.255.255.0 gateway 192.168.0.1 Una vez configuradas la tarjetas del servidor, arrancamos de nuevo la red (/etc/init.d/networking restart y ya deberíamos tener direcciones ip en las dos tarjetas. Para comprobarlo, ejecutamos el comando ifconfig.
INSTALAR UNA LAN BAJO LINUX Ahora que disponemos de internet, en un ordenador con GNU/Linux. Vamos a hacer algo mas interesante , vamos a aprender a compartir internet crearemos un Servidor DHCP SSH Router ,Firewall, Proxy. Propongo un diagrama ejemplo, así realizamos la configuración siguiendo esta estructura.
Para facilitar la comprensión del mismo, pondremos un ejemplo práctico con una conexión de xxxk y una LAN compuesta por varios ordenadores (el número no importa), cuyo único sistema operativo significativo es el del servidor, que será GNU/Linux por supuesto. Lo que queremos conseguir en el articulo es que todos y cada uno de los ordenadores que forman la LAN, accedan a Internet mediante esta única conexión y que lo hagan sin la necesidad de utilizar un proxy, pero sin quitarnos esa posibilidad, es decir, haremos uso de un servidor que se encargará de realizar NAT para la red interna, para que los ordenadores que la componen, puedan acceder a todos los servicios de Internet directamente. Esta configuración, nos permitirá en un futuro, instalar en ese servidor un proxy, con todos los beneficios que eso conlleva (pero eso es otro tema que no trataremos) Preparación previa a la instalación Antes de nada, el lector deberá saber que material necesitará para realizar la instalación de la LAN con conexión a Internet, Paso 1 Conexión a Internet al Servidor Necesitamos destinar una maquina para Servidor, vamos a necesitar placas de red compatibles con Linux, la cantidad de placas va a depender de como nos conectemos a internet, si nos conectamos con un módem USB necesitamos una sola tarjeta de red, y si nos conectamos con un módem Ethernet necesitamos 2 tarjetas de red. Recuerden que para realizar la conexión a internet deben repasar los pasos anteriormente explicados.
Paso 2 Lista para Armar la LAN Necesitamos un Switch o Hub con las de 8 bocas (depende del numero de ordenadores a conectar) También nos harán falta armar o comprar tantos cables de red directos (con conectores RJ45 con norma A), como ordenadores clientes posea la LAN. Manos a la obra Vamos a tener en cuenta que tenemos una conexión a internet con modem ethernet, asi que necesitamos 2 placas de red: eth0 conectada al módem Ethernet con IP Dinamica eth1 conectada a un switch para compartir los servicios como por ejemplo internet Como es de suponer el primer paso que debemos tomar, es la configuración de las tarjetas de red que componen la LAN, si aun no saben como configurar su placa de red, deberían leer las paginas anteriores. Ahora necesitamos definir nuestra LAN, y para ello necesitamos definir que tipo de asignación de IP vamos a utilizar para configurar las placas de red, para esto tenemos 2 opciones disponibles, Asignar ip de manera manual o utilizando un Servidor DHCP. Es mas interesante utilizar un servidor DHCP Para ser ordenados vamos a dividir la instalación en 2 partes lo que debo instalar en el servidor y lo que debo instalar en los clientes INSTALANDO EL SERVIDOR Recuerden que la distribución que usa el Servidor es una basada en debían. Vamos a empezar con la configuración de la placa de red. la cual deberá contener estos datos Editando interfaces # mcedit /etc/network/interfaces auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp auto eth1 iface eth1 inet static address 192.168.0.1 netmask 255.255.255.0 gateway 192.168.0.1 Servidor DNS bind9 Instalamos el servicio: # aptget install bind9
La instalación de este servicio es únicamente para poder brindar salida a internet a las máquinas cliente de la red de área local. Configurar adecuadamente un servidor DNS no está en el alcance de este documento. Servidor DHCP Instalamos el dhcp3server para asignar de manera automática las direcciones IPs # aptget install dhcp3server OJO: al final de la instalación el servidor dhcp3server intentará correr; sin embargo lo más probable es que muestre un error. No preocuparnos por esto, ya que tenemos que configurar el servidor dhcp3 con nuestro editor favorito en mi caso el mc. sino lo tienen instalado. #aptget install mc El archivo de configuración a editar es /etc/dhcp3/dhcpd.conf, utilizando algún editor por ejemplo #mcedit /etc/dhcp3/dhcpd.conf
Vamos a configurar para que cualquier ordenador que se conecte a la red reciba ip de manera automática y la impresora tengo ip fija # significa que una linea esta comentada. esto es solo una sección del archivo de configuración, la idea es descomentar y modificar las lineas que necesitemos de el archivo que tengan instalado en su servidor el cual debe quedar con las mismas opciones habilitadas que este archivo de configuración. ...... ...... # The ddnsupdatesstyle parameter controls whether or not the server will # attempt to do a DNS update when a lease is confirmed. We default to the # behavior of the version 2 packages ('none', since DHCP v2 didn't # have support for DDNS.) ddnsupdatestyle none; # option definitions common to all supported networks... option domainname "home"; # puede ser “midominio.com” option domainnameservers 192.168.0.1; defaultleasetime 86400; # esto es en segundos. 86400=1 di maxleasetime 86400; # If this DHCP server is the official DHCP server for the local # network, the authoritative directive should be uncommented. authoritative;
# Use this to send dhcp log messages to a different log file (you also # have to hack syslog.conf to complete the redirection). logfacility local7; # No service will be given on this subnet, but declaring it helps the # DHCP server to understand the network topology. subnet 192.168.0.0 netmask 255.255.255.0 { # Rango de ips disponibles para asignación por dhcp range 192.168.0.10 192.168.0.100; # Gateway option routers 192.168.0.1; # Dirección de broadcast option broadcastaddress 192.168.0.255; }
#Como necesitamos que la impresora de red tenga ip fija vamos a agregar lo siguiente al archivo de #configuración /etc/dhcp3/dhcpd.conf: # Asignación de una ip fija a una computadora concreta (se pueden poner tantas como se quiera) host pcfija { # Dirección MAC de la tarjeta de red. hardware ethernet 00:D0:59:32:AF:6B; # por ejemplo # IP asignada fixedaddress 192.168.0.101; # esta dirección NO puede estar en el rango declarado arriba } Para averiguar la dirección MAC de la tarjeta de red se puede obtener con el comando "ifconfig" en Linux o "ipconfig /all" en dos/windows. Ahora reiniciamos el servidor dhcp3 con el siguiente comando: # /etc/init.d/dhcp3server restart
Instalación del servicio ssh Ahora vamos a instalar el servicio ssh para loggearnos al servidor remotamente vía consola: ssh secure shell client and server (metapackage) aptget install ssh Vamos a reducir el tiempo de login y en caso de quererlo así no permitiremos conexiones de root.
Para esto editaremos únicamente las siguientes líneas en el archivo /etc/ssh/sshd_config: En la sección de autentificacion LoginGraceTime 45 PermitRootLogin no # esto es si no queremos que nadie se conecte como root remotamente Ahora, sólo permitiremos acceder por ssh a los usuarios indicados explícitamente en el archivo /etc/loginusers. Para esto, las siguientes líneas del archivo /etc/pam.d/ssh deben quedar así: # PAM configuration for the Secure Shell service # Read environment variables from /etc/environment and # /etc/security/pam_env.conf. #auth required pam_env.so # [1] # In Debian 4.0 (etch), localerelated environment variables were moved to # /etc/default/locale, so read that as well. #auth required pam_env.so envfile=/etc/default/locale auth required pam_listfile.so sense=allow onerr=fail item=user file=/etc/loginusers Creamos el archivo /etc/loginusers, recuerden que el contenido de este archivo deben ser los usuarios admitidos: usuario_pepe , para ello usamos el comando siguiente # echo pepe > /etc/loginusers Reiniciamos el servicio ssh con el siguiente comando: # /etc/init.d/ssh restart
Falta... INSTALACION DE LOS CLIENTES Servicio DHCP Debemos instalar el dhcpclient, para que nuestro servidor dhcp nos asigne ip de manera automática. Con esto ya tendríamos acceso a la red . Si no funcionara tendríamos que hacer antes: dhcpd eth0. # mcedit /etc/network/interfaces auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp address 192.168.0.45
netmask 255.255.255.0 gateway 192.168.0.1 Veamos ahora cómo configurar la red asignando nosotros las IPs locales: Servicio SSH Para acceder al servidor, abrimos una consola, escribimos el comando: ssh nombre_usuario@ip_del_servidor colocamos la contraseña y listo. recuerden que para acceder el nombre de usuario que le corresponde debe estar en /etc/loginusers
Falta...