Powerlinks Plugin: Record for page-titles updated successfully!.
Array ( [title] => updated [doa] => code:200. )
Fetched title: 'Debian Volatile' xtitle==Debian -- The debian-volatile Project
Array ( [title] => updated [doa] => code:200. )
Fetched title: 'Debian Backports' xtitle==Debian Backports

Instalación de Debian

;-) Nota de Utilidad Pública
Esta página tiene material visual, como imágenes y texto preformateado,
que hacen la página muy ancha.
Para ver mejor el contenido de la página, esconde el sidebar de la derecha con el botón Sidebar Toggle.

Esta página muestra el proceso para la instalación básica del Router en Debian.

Obtener Hardware y Software

Para instalar el router (router-debian) descargamos desde el sitio Oficial de Debian la imagen netinst (instalación en red) para i386 de su distribución. Los datos del archivo a continuación:

debian-506-i386-netinst.iso
MD5: d6e493925f7160ce3cb5f4df38b21e8f Peso: ~150 MiB Instalación en Red

Requeriremos una PC con:

  • al menos 2 GiB de espacio libre en disco duro.
  • al menos 192 MiB de memoria RAM.
  • lector de CD (ATAPI posterior a 1997).
  • dos tarjetas de red (NE/2000 o compatible); por supuesto una puede ser integrada.
  • conexión a Internet (servidor DHCP si es posible).

Instalación Inicial

Conectamos una de las interfaces del PC a la red, asegurándonos de tener acceso a un servidor DHCP y un servidor de nombres (si no los tenemos deberemos proveerlos nosotros; esto sale del ámbito de este documento). Booteamos el PC con el CD insertado y damos <enter> para acceder a la instalación. Ésta nos realizará una serie de preguntas, las cuales determinarán la configuración de la interfase y la instalación inicial, y las respuestas pueden resumirse como sigue:

Configuración de Instalación General:

  • Idioma: Español.
  • Distribución de teclado: Español → Español (NO Latinoamericano).
    * Ubicación: Chile.
  • Zona Horaria: UTC-4 (America/Santiago).
  • Hostname: uno como router-debian. Para mi ejemplo he escogido decatoncale (ver imágenes por explicación).
  • Dominio: local si se va a configurar una red de prueba con WINS o NetBIOS; dejar el valor por defecto en caso contrario.
  • Interfaces de red: Al menos una eth0 Realtek con salida a Internet por DHCP.
  • Contraseña del Administrador: escoger una adecuada, acá asumiremos que es ''*********''ultramaestro999 .
  • Nombre del usuario y contraseña: escoger los adecuados, acá asumiremos user=user y password=minidiscipulo001.
  • Selección del repositorio de Software: los repositorios con mejor conexión en Chile son los de la Universidad de Talca.
  • Proxy: Configurarlo según sea necesario.
  • Instalación Mínima (sólo “paquetes estándar”).
Instalación de Debian en una máquina virtual

Para el particionamiento hemos de separar una partición swap (área de intercambio) de al menos 64 MB, el valor recomendado por la instalación suele ser entre 256 y 320 MB. Después de esto se asigna espacio a la partición raíz /, que debe tener al menos 2 GB, más si vamos a instalar herramientas de configuración o desarrollo, y con sistema de archivos ext3.

Si tenemos instalado un disco duro extra, se puede hacer uso de él para reservar el espacio de las herramientas propias del servidor, en caso que deseemos migrar de distribución más adelante, pero eso será expuesto en otro documento.

FIXME: enlace.


Imágenes del proceso de instalación:

Proceso de particionado. Algunas consideraciones generales para el proceso:
  • La partición de intercambio (swap) debe tener una cantidad de memoria aproximadamente igual a la RAM del sistema. Para un servidor liviano, una buena opción es entre 128 y 512 Megabytes de tamaño.
  • Para un servidor que puede ser potencialmente migrado, mi recomendación personal es dejar una partición /usr/local/ separada y enlazar (o hacer mount-bind) de las bases de datos o servicios vitales hacia esa partición, de modo que no se pierda la información al hacer una migración de emergencia.
    Esto será explicado en un documento posterior.
  • Una partición /boot, en caso que se reserve, debe estar al inicio del disco y tener un tamaño mínimo igual a un (1) cilindro del disco duro.
    La recomendación general es de ~100 Megabytes por kernel.

Detección del hardware del sistema.
Descarga vía internet de los paquetes necesarios para la instalación.

  • Cuántos paquetes sea necesario descargar depende de algunas opciones que se hayan escogido durante la instalación, en particular las opciones de locale (idioma y ubicación geográfica) y el tipo de red detectado.

Selección del nombre de host.

  • El nombre escogido para esta instalación es decatoncale, el nombre del megaservidor de simulaciones del Gabinete Nacional de Inteligencia en la serie Ghost in the Shell. Para los cursos anteriores (2007, 2008) se utilizaron nombres como izuno y tirol, relacionados con la serie Robotech.

Llegados a este punto podemos ir por una taza de :coffee: sniff cafecito…
Instalación de las locales (configuración de idioma y ubicación) del sistema, así como de otros paquetes necesarios para la instalación.
FIXME: Imagen Llegados a este punto, debemos escoger el repositorio desde el cual deseamos instalar el software. A este punto debemos tener una configuración de conexión a Internet ya disponible (la que configuramos al seleccionar las opciones de red). Se nos pregutará por el proxy (por ejemplo http://proxy.midominio.cl:8080) y el repositorio que deseamos instalar. En nuestro caso por estar en Chile escogemos como repositorio central el de la Universidad de Talca (deb http://debian.utalca.cl/debian lenny main contrib).

Una vez terminado el proceso básico de instalación, se nos preguntará si deseamos instalar GRUB, el Gestor de Arranque, en el inicio maestro del sistema. Si estamos configurando un servidor como máquina virtual o si será la única distribución instalada en la máquina, la mejor respuesta es sí.

Para terminar la instalación debemos remover el disco cuando se nos indique y reiniciar la máquina. FIXME: imagen.

Configuración Post-Instalación

Habilitando Repositorios

Dado que esta es una instalación netinst, podemos utilizar el Gestor de Paquetes (apt-get o mejor aptitude) para actualizar el sistema. Editamos primero el fichero de fuentes (/etc/apt/sources.list) para remover la entrada del CD que ya no vamos a usar.

# deb cdrom:[Id del CD de instalacion]
 
deb http://debian.ubiobio.cl/debian/ lenny main contrib
deb-src http://debian.ubiobio.cl/debian/ main main contrib

Notar el gato (#) de comentario que cubre a línea de la entrada de CD.

Podemos habilitar el repositorio Debian Volatile, que almacena y actualiza algunas piezas de software que requieren de una actualización más periódica que la del repositorio estándar (por ejemplo, antivirus). Creamos un archivo y lo agregamos al /etc/apt/sources.list.d/:

deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib

Agregado a esto y si lo llegamos a necesitar podemos habilitar el repositorio Debian Backports, que provee actualizaciones de algunas piezas de software como el Kernel de Linux 2.6.32 y XFCE 4.6.

deb http://backports.debian.org/debian-backports lenny-backports main contrib

Ahora ejecutamos sudo apt-get update para actualizar los listados de paquetes, y tras un rato podemos empezar a instalar las aplicaciones que nos hagan falta.

[root@debian-router] ~$ apt-get update

Paquetería Recomendada

Los primeros paquetes que debemos instalar los cargaremos con la siguiente línea:

[root@debian-router] ~$ apt-get install aptitude minicom iftop mc
  • aptitude es un gestor de paquetes para la consola que presenta una interfase más gráfica, de modo que permite seleccionar grupos de paquetes para su instalación.
  • minicom provee una terminal para el puerto serial, similar a HyperTerminal en Windows, que nos permitirá acceder a la configuración del Router Cisco una vez que lo instalemos.
  • iftop es un paquete que permite monitorear el tráfico de las interfases de red.
  • mc es un navegador de ficheros al estilo Norton Commander.

Otros paquetes que puede ser interesante instalar:

  • dnsutils, dnstracer y otras utilidades para realizar peticiones y diagnósticos DNS.
  • pppoeconf para habilitar conexiones ADSL en caso que nuestro servidor esté conectado a una línea ADSL.
  • elinks o elinks-lite, un navegador web en modo consola que nos permitirá descargar algunos materiales así como acceder a páginas web.
  • apt-file y herramientas similares para realizar gestión local y mirroring de nuestro repositorio de software.
  • ssh-server: nos permitirá obtener acceso remoto y controlado a la máquina.
  • mingetty: un terminal de login con requisitos ligeramente más bajos que la terminal estándar, pero que no puede utilizarse para las conexiones seriales.
  • tofrodos: utilidades que convierten archivos de texto con terminaciones de linea de UNIX (LF) a DOS (CR/LF) y viceversa; muy util para mover archivos desde una maquina Windows.
  • ethtool: utilidad para acceder a algunas configuraciones de las interfases de red.
  • p7zip: archivador muy poderoso que soporta formatos ZIP y similares.
  • Esta lista se ira extendiendo con el tiempo

Afinando Funciones del Kernel

En esta sección se realizarán algunas modificaciones a las opciones del Kernel para mejorar el desempeño y capacidades del sistema.

Para esto se cargan parámetros en el kernel por medio del archivo etc/sysctl.conf. En este archivo podemos modificar una serie de opciones, algunas de las cuales son de particular interés para la gestión de nuestro servidor.

vm.swappiness = 45
kernel.panic = 20
kernel.sysrq = 1

net.ipv4.icmp_ignore_bogus_error_responses = 1
net.ipv4.conf.default.rp_filter = 1
Opción Efecto
vm.swappiness Altera la tendencia del sistema a pasar contenidos desde la RAM a la Swap.
Mientras más bajo, menos probabilidad que se pasen archivos hacia la Swap; sin embargo tampoco se debe escoger un valor demasiado bajo.
kernel.panic Si se detecta un kernel panic, el sistema tratará de reiniciarse automáticamente a los 20 segundos.
Útil si la máquina se queda “pegada” y no es posible acceder a ella remotamente.
kernel.sysrq Habilita la “tecla mágica” con las funciones de SysRq. consultar en Google para más información.
net.ipv4.
icmp_ignore_bogus_error_responses
El sistema ignorará peticiones ICMP o ping malformadas. Útil para proteger routers.
net.ipv4.conf.default.rp_filter Protege al router de ataques de spoofing.

Para hacer que los cambios tengan efecto es necesario invocar la utilidad sysctl:

[root@router-debian] ~$ sysctl -p

Reduciendo la Memoria de la Consola

FIXME

Deshabilitando Servicios Innecesarios

FIXME

Configurando el Acceso Remoto

FIXME

Instalando una Segunda Tarjeta de Red

Módulos del Kernel

Si tenemos una tarjeta de red integrada, lo más probable es que ésta ha sido automáticamente detectada por el sistema y el módulo correspondiente está cargado. Chequeamos con lspci o lsmod para encontrar los módulos cargados de red, como: ne2k_pci (el estándar para NE/2000 compatible), via_rhine (para la mayoría de las integradas Realtek), rt???? (para algunas Realtek “DLink” PCI numeradas), etc…

A continuación debiéramos apagar la máquina e instalar una segunda tarjeta de red, en nuestro caso, la instalada es una Realtek 8839. Al reiniciar el equipo la segunda tarjeta de red no será cargada pues solamente el módulo del kernel para la primera tarjeta ha sido cargado. Se soluciona este problema en dos pasos:

  1. Determinamos (con ayuda de San Google) el modelo y chipset de la tarjeta de red para determinar el módulo que corresponde. Una búsqueda en Google: http://www.google.cl/?q=modprobe+RT8839, nos entrega como resultado dos nombres de módulos: los mencionados via_rhine y rt???? como “rt8x39” por lo cual hemos de probar.
  2. Miramos en /etc/modprobe.d/* los archivos blacklist para determinar que ninguno de los módulos antes mencionados se halla en la lista negra, de lo contrario no cargará aunque lo pidamos.
  3. Agregamos el nombre del módulo en el listado de módulos a cargar por defecto que está en /etc/modules, de modo que lea como en el anexo al final del documento

Una vez hecho esto debemos reiniciar la máquina una vez más para determinar que el módulo se carga correctamente. Si lo hace, veremos mensajes referntes a eth1, por ejemplo, donde este nombre corresponde a la nueva interface de red detectada, y podremos proceder a configurarla con herramientas como las descritas en Notación de Redes y Segmentación.

/etc/modules

# /etc/modules     : modules to load at boot time

loop
ide_generic
via_rhine
piix

Verificando el Funcionamiento de las Interfases

La manera más rápida de verificar si las interfaces están funcionando es hacer un /etc/init.d/networking restart para determinar si las interfases se activan, y luego pingear a alguna máquina más allá de nuestro ruteador.

Resumen de Configuración

Hemos de recordar la configuración de nombres de usuario y contraseña para la administración de la máquina; en este ejemplo supondremos las credenciales siguientes:

root = ultramaestro999
user = minidiscipulo001

Hemos de chequear que los módulos necesarios para reconocer todas las tarjetas de red, estén cargados durante el booteo; de lo contrario, no podremos operar con las interfaces de red.

Ver También


proyectos/taller-redes/contenidos/instalacion-debian.txt · Última modificación: 2010/10/28 17:07 (editor externo)

“Taller de Redes” Universidad del Mar, Sede Temuco, 2007—2009

Creative Commons License
Taller de Redes” por  Luis Machuca B. está licenciado bajo
Creative Commons Atribución-No Comercial-Sin Derivados 2.0 Chile License.
Para más información del Autor, visita: ¿Quién Soy?