Instalar CentOS remotamente por VNC

Una de las cosas que me gusta de las distribuciones basadas en Red Hat es que todas ellas utilizan el instalador Anaconda junto a los ficheros Kickstart para realizar instalaciones desatendidas. Hasta ahora es uno de los sistemas mas flexibles y potentes que conozco para automatizar instalaciones Linux.

Debian Installer quizás pueda ser mas potente en determinados escenarios, aunque en general elaborar un buen fichero preseed para una instalación desatendida de Debian pueda ser algo mas laborioso… Anaconda, destaca además por ser muy sencillo.

Pero hoy el protagonista es Anaconda y su módulo de instalación remota por VNC.. ya hablaremos en otro momento del resto de instaladores ;-)

¿Cuando nos puede interesar instalar remotamente Linux por VNC?

– El servidor a instalar no tiene pantalla, teclado, ratón, unidad de CD/DVD, puerto USB.. una instalación por VNC será mas cómoda, rápida y económica que utilizar un dispositivo KVM sobre IP, puerto serie, etc..

– Instalación de otra distribución. Muchos ISP entregan los servidores dedicados con una determinada distribución Linux sin posibilidad de elegir otra y/o personalizar algunos parámetros que solo se pueden hacer durante la instalación, por ejemplo, el esquema de particiones.

Actualizaciones. Todas las distribuciones basadas en Red Hat se recomienda actualizarlas desde Anaconda utilizando el método upgradeany. Por ejemplo, podemos arrancar por VNC para actualizar remotamente desde CentOS 4 a CentOS 5 de forma cómoda sin necesidad de CDs, arranque por PXE, etc..

– Seguimiento y depuración de una instalación desatendida con Kickstart, así podremos ver «en vivo» que está ocurriendo en todo momento por VNC.

– El sistema VNC es multiplataforma: existen implementaciones para prácticamente todos los Sistemas Operativos, incluso clientes en Java que podríamos incrustar en algún herramienta de gestión web tipo Spacewalk.

Lógicamente en todos estos casos podríamos utilizar Kickstart para realizar una instalación totalmente desatendida sin necesidad de interactuar en ningún momento por teclado/ratón/pantalla y todos los problemas anteriores quedarían resueltos, pero el objetivo es tener una conexión VNC con el servidor que estamos instalando.

La conexión remota por VNC con el instalador Anaconda puede realizarse de dos formas:

Servidor: la máquina a instalar arranca un servidor Xvnc y nosotros nos conectamos a el utilizando un cliente VNC, es la configuración mas utilizada (parámetros vnc y vncpassword).

Cliente: en nuestro escritorio levantamos un cliente VNC en modo «listen» y Anaconda se conectará a nosotros (parámetros vnc y vncconnect). En algunos casos puede ser una configuración mas segura, pero resulta mas problemática si estamos bajo un firewall, NAT, etc..

Como ejemplo vamos a modificar el GRUB de una Debian para instalar remotamente CentOS 5 por VNC, los pasos a seguir son:

– Descargar los ficheros initrd.img y vmlinuz de la imagen PXE de CentOS (pxeboot) en el directorio /boot/centos, o en cualquier otro directorio, evitando sobreescribir los actuales:

  1. mkdir -p /boot/centos ; cd /boot/centos
  2. wget http://mirror.centos.org/centos-5/5/os/i386/images/pxeboot/initrd.img
  3. wget http://mirror.centos.org/centos-5/5/os/i386/images/pxeboot/vmlinuz

– Editar la configuración de GRUB, fichero /boot/grub/menu.lst, y añadir la siguiente entrada. Lógicamente será necesario personalizar la configuración de red o bien utilizar DHCP (parámetro ip=dhcp):

  1. title Instalación CentOS 5 por VNC
  2. root (hd0,0)
  3. kernel /centos/vmlinuz vnc vncpassword=password ip=192.168.0.2 netmask=255.255.255.0 gateway=192.168.0.1 dns=192.168.0.1 method=http://mirror.centos.org/centos/5/os/i386
  4. lang=en_US keymap=us ksdevice=eth0
  5. initrd /centos/initrd.img

– Comprobamos que la entrada default de GRUB es la correcta, y reiniciamos el servidor.

– En el siguiente arranque GRUB cargará el kernel + initrd con los parámetros indicados, iniciando así la instalación con Anaconda.

– Anaconda descarga la imagen stage2.img desde el mirror indicado. Este archivo está comprimido con SquashFS y contiene todo lo necesario para arrancar el instalador gráfico, ocupa unos 90MB así que dependiendo de la conexión este paso puede durar unos minutos..

– Anaconda arranca el servidor Xvnc e inicia una instancia del gestor de ventanas mini-wm, en la consola del servidor aparecerá el mensaje:

  1. Starting VNC..
  2. The VNC server is now running.
  3. Please connect to 192.168.0.2:1 to begin the install...
  4. Press for a shell
  5. Starting graphical installation..
  6. XKB extension not present on :1

– Listo!! Utilizando un cliente VNC nos conectamos al display 1, puerto 5901/tcp, para empezar a instalar el servidor normalmente, como si estaríamos delante de el

Software para la auditoria de sistemas

Aqui les dejo una lista de software que les ayudara en la auditoria de sistemas, servidores, ordenadores….

Copypastea el siguiente comando en una sola linea:

sudo apt-get install netcat hping3 kismet tcpdump ettercap nikto dsniff p0f ntop tripwire ngrep xprobe2 etherape lsof rkhunter chkrootkit yersinia nmap nmapfe wireshark aircrack-ng airsnort john kismet

*** si algun programa te dice que no lo encuentra .. eliminalo de la lista y copia y pega la misma orden sin ellos, es posible que con nuevas versiones de UBUNTU, cambien algunos nombres.

Con esta orden de arriba se instalar los siguientes programas en vuestro servidor UBUNTU/DEBIAN, con lo que abreis transformado de una forma muy simple vuestro equipo en una sofisticada maquina para auditar vulnerabilidades y posibles fallos en sistemas.

Explicacion de lo que se instala :

Netcat: Utilidad que te permite abrir puertos, leer y escribir en conexiones TCP o UDP, asociar una shell a un puerto. A menudo se usa para abrir backdoors en sistemas remotos.

Hping3: Utilidad capaz de enviar cualquier tipo de paquetes ICMP/UDP/TCP y mostrar la respuesta de la máquina de destino.

ettercap: Es un sniffer que puede capturar contraseñas y producir ataques de man-in-the-middle de forma sencilla.

nikto: Escáner de servidores web que identifica versiones y detecta vulnerabilidades.

dsniff:
Sniffer especializado en la captura de passwords transmitidos a través de varios protocolos. Incluye herramientas adicionales que permiten llevar a cabo ataques de spoofing y man-in-the-middle.

p0f: Utilidad que identifica sistemas operativos de forma pasiva, es decir, escuchando el tráfico que generan sin introducir paquetes en la red.

ntop: Muestra estadisticas de uso de la red. Es como el top de unix pero aplicado a las comunicaciones en red.

tripwire: Verifica la integridad de los archivos del sistema. Detecta cambios en los ficheros ejecutables a fin de informar sobre posibles acciones no autorizadas como la instalación de backdoors.

ngrep: Es un sniffer que implementa el tradicional grep pero buscando en los paquetes que se escuchan en la red.

xprobe2: Identifica sistemas operativos de forma activa, es decir, enviando una serie de tests al sistema remoto y determinando su tipo en base a las respuestas recibidas.

etherape: Muestra graficamente estadísticas sobre la actividad de la red.

lsof: Muestra una lista de los archivos abiertos en el sistema. Util para detectar arccesos no autorizados o para ver qué ficheros está utilizando una aplicación determinada.

rkhunter: Es un detector de rootkits.

chkrootkit: Otro detector de rootkits.

yersinia: Utilidad que se aprovecha de diversas flaquezas en algunos protocols de red (STP, CDP, DTP, DHCP, HSRP. ISL, VTP…) para provocar ataques de diversos tipos.

nmap: Es el mejor escáner de puertos que existe. Implementa una gran variedad de técnicas y un excelente sistema de deteccion de sistemas operativos y versiones. Para el que no la conozca , es «LA HERRAMIENTA QUE UTILIZABA TRINITY, EN LA PELICULA MATRIX, para hackear uno de los sistemas».

nmapfe: Front-end para nmap. Una interfaz gráfica basada en GTK.

wireshark: (antes se llamaba ethereal). Es el mejor sniffer en modo gráfico que existe. Es muy potente y sus capacidades para filtrar el tráfico lo hacen indispensable para cualquier administrador de red. Tambien hay version para Windows.

aircrack: Suite de utilidades para crackear las claves WEP utilizadas en las redes 802.11. Permiten la escucha del tráfico de la red, la inyección de paquetes y el crackeo de claves WEP de cualquier longitud.

airsnort: Utilidad para crackear claves WEP, similar a aircrack.

john: (John the Ripper) Es un excelente crackeador de contraseña. Soporta un gran numero de formatos distintos y permite bien el uso de diccionarios o el crackeo por fuerza bruta.

kismet: Identifica redes inalambricas de forma pasiva recolectando paquetes, detecta redes ocultas, clientes asociados y es capaz de sniffar el tráfico de las redes no encriptadas. Kismet es el sistema de monitorización de redes inalambricas más potente que existe en la actualidad.

BlackUbuntu – La nueva distribución «para pruebas de seguridad» basada en Ubuntu

Blackbuntu es la distribución de pruebas de penetración, que fue diseñado especialmente para estudiantes de formación en seguridad y profesionales de seguridad de la información. Blackbuntu distro Ubuntu es la base de pruebas de penetración de seguridad con entorno de escritorio GNOME. Es en la actualidad se está construyendo con el Ubuntu 10.10 y de trabajo en la referencia posterior.

Blackubuntu

Blackbuntu features the following upstream components:

Ubuntu 10.10, Linux 2.6.35 and Gnome 2.32.0 System requirements

* 1GHz x86 processor

*768 MB of system memory (RAM)

* 10 GB of disk space for installation

* Graphics card capable of 800×600 resolution

* DVD-ROM drive or USB port

Blackubuntu

BlackUbuntu os la podeis descargar desde el siguiente link
http://sourceforge.net/projects/blackbuntu/files/Community%20Edition/Community%20Edition%200.2/bbuntu-ce-0.2.iso/download

Una breve video review de BlackUbuntu