Conociendo Linux

27 Agosto, 2008

Virtualización desde Ubuntu: VirtualBox

Archivado en: Virtualización — Etiquetas:, — Garbu @ 12:41 am

¿¿ Ya echas de menos Windows ?? Te comprendo, es un paso dificil. Ademas, hay un montón de programas que no puedes instalar en tu nuevo Sistema Operativo.

Aunque la mayoría de los programas tienen su equivalente linuxero, tenemos la posibilidad de poder lanzar la versión de Windows desde nuestro Linux. Basicamente hay 2 posibilidades:

- Utilizar Wine

- Virtualizar Windows sobre Linux con, por ejemplo, VirtualBox

En este post solo hablaré de VirtualBox, dejaremos Wine para más adelante.

VirtualBox es un programa que actualmente pertenece a Sun y que nos permite lanzar otros sistemas operativos ( Linux, Windows, etc… ) desde el nuestro de una manera virtual, es decir, aislada de nuestro sistema, aunque podremos hacerlos funcionar de manera paralela e incluso interactuar entre ellos. Se trata de una filosofía de trabajo muy potente que cada día se tiende a usar más, sobre todo en empresas que invierten mucho dinero en servidores potentes dentro de los cuales se virtualiza para evitar complejidad, encarecimiento de coste y mas puntos de fallo hardware. El otro lado de la balanza es que hay que dotar dichos servidores de virtualización de buena seguridad, comunicaciones, rendimiento y mantenimiento constante, ya que es un punto crítico en la arquitectura de la red.

Pero como nosotros solo vamos a probar, y no necesitamos de momento programas más avanzados como puede ser VmWare, os dejo como instalar la última versión de VirtualBox, suponiendo que no tengais una versión antes instalada.

Si es así, primero habreis de desinstalarlo, las maquinas virtuales no se perderán si bien es cierto que es preferible apagarlas en el caso que las tengamos abiertas o pausadas. Yo he migrado de versión de VirtualBox y he conservado todas sin problemas, exactamente tenia las siguientes:

  • Maquina Virtual de MS-DOS
  • Maquina Virtual de XP
  • Maquina Virtual de Windows 2003 Server
  • Maquina Virtual de Windows Vista Ultimate
  • Userful Desktop

# Desinstalación de versiones anteriores de VirtualBox ( solo si se poseen )

sudo apt-get remove virtualbox-ose

# Desinstalación de los modulos dependientes de VirtualBox

sudo apt-get remove virtualbox-ose-modules-2.6.24-*

Bueno, pues tanto los que tuvierais VirtualBox previamente como los que no, ya podemos pasar a instalar la última version de VirtualBox. La podreis encontrar en la seccion Downloads de la página de Sun.

En mi caso, he bajado el paquete deb siguiente: virtualbox_1.6.4-33808_Ubuntu_hardy_i386.deb

Una vez guardado, procedemos a instalarlo:

# Instalación de VirtualBox

sudo dpkg -i virtualbox_1.6.4-33808_Ubuntu_hardy_i386.deb

Despues de lo cual veremos como se instala y se crea el grupo de usuarios vboxusers donde tendremos que incluir al usuario con el que queramos ejecutar VirtualBox.

Una vez acabada la instalación, en el caso de que tengamos el entorno de ventanas se habrá creado un acceso directo en Aplicacion>Herramientas del Sistema ( Ubuntu, si no aparece puede que haya que reiniciar ) aunque tambien podemos ejecutar el programa desde consola ( o creando un lanzador manualmente ) con la siguiente orden:

# Iniciar VirtualBox, con el usuario con permisos en el grupo vboxusers

VirtualBox

Y ya podeis empezar a configurar vuestras maquinas virtuales, sobre algunas de ellas hablaremos más adelante

Fuentes usadas: Tombuntu

25 Agosto, 2008

Administrar tu máquina remotamente: OpenSSH

Archivado en: Comandos, SSH — Etiquetas:, , , — Garbu @ 3:55 pm

Hasta ahora hemos repasado varios de los comandos más útiles o frecuentes en Linux que como bien sabeis se ejecutan desde consola o terminal de nuestra máquina. Los comandos suelen tener equivalente a evento gráfico pero en muchos casos es preferible hacerlo desde la consola, con el fin de depurar o agilizar cualquier proceso que necesitemos.

También es muy práctico usar los comandos de consola cuando el interfaz gráfica no responde o simplemente no es posible, como en el caso de una conexión remota a traves de Internet o en una LAN.

Es aquí donde interesa instalar en nuestra máquina un servidor SSH, que no es mas que un demonio que añadiremos a nuestro sistemas con el fin de que podamos acceder a él desde otros equipos remotos en modo consola con el fin de administrar, consultar o utilizar nuestro equipo desde cualquier otro, simplemente se requiere un emulador de SSH como puede ser putty para Windows o cualquier terminal para Linux.

Para ello una de las herramientas más difundidas es OpenSSH, el cual podemos instalar en nuestra máquina de la siguiente manera:

sudo apt-get install openssh-server

Tras lo cual, y por increible que parezca, ya tenemos nuestro servidor SSH funcionando a pleno rendimiento, con los certificados RSA y DSA necesarios y la configuracion estandar. Si tu equipo es crítico se recomiendas revisar la configuración del servidor SSH para establecer un puerto de conexión distinta o bien filtrar otros parámetros como el acceso remoto de root ( hay scripts de gente que intenta acceder a esa cuenta ), el puerto de conexión entrante y el X11 forwarding.

Todo ello se puede hacer a través de la edición fichero /etc/ssh/sshd_config de la siguiente manera:

#Acceder al fichero de configuración con un editor ( en mi caso desde consola usando nano )

sudo nano /etc/ssh/sshd_config

#Una vez dentro de nano pulsamos Control W y buscamos la ocurrencia PermitRootLogin y vemos que tiene el siguiente aspecto:

PermitRootLogin yes

#Asi que para deshabilitar acceso remoto del root editamos la linea dejandolo asi:

PermitRootLogin no

#Ahora buscamos la cadena Port y nos encontramos con:

Port 22

#Y si queremos cambiar el puerto pues es tan simple como sustituir el número por el nuevo, por ejemplo el 2022

Port 2022

#Deshabilitar X11 Forwarding es claramente intuitible. Buscamos la linea X11Forwarding y nos encontramos con:

X11Forwarding yes

#Para deshabilitarlo:

X11Forwarding no

Comentar que X11 Forwarding sirve para poder ejecutar aplicaciones gráficas de una máquina A desde una máquina B a traves de un cliente de terminal que soporte conexion ssh con X11. Dejar abierto X11 Forwarding está catalogado como una posible vulnerabilidad pero a su vez es necesaria para ejecutar varios programas.

Ya tenemos configurado y asegurado el servidor SSH, asi que lo único que nos queda es darle uso. Podemos probar que todo esta OK previamente abriendo un terminal en la misma máquina y ejecutando:

ssh localhost

Si nos solicita usuario y password, es que todo va bien y si logueamos ( no con el root por lo anterior mencionado ) recibiremos un mensaje de bienvenida al servidor SSH.

Ahora podemos repetir la misma operación desde cualquier équipo de la red, desde un Linux a traves de la consola con el comando:

ssh direccion_IP_servidorSSH

#Donde direccion_IP_servidorSSH es la dirección IP de la máquina que corre OpenSSH

Tambien podemos acceder al mismo desde un equipo bajo Windows, instalandonos previamente un programa que interprete SSH, yo recomiendo putty

Si nos atrevemos hasta podemos habilitar en nuestro NAT del Router con el que tengamos acceso a internet una regla de tal manera que las conexiones entrantes a traves del puerto 22 ( o el que hayamos configurado para SSH ) accedan a nuestra maquina servidor de SSH, con lo cual podremos acceder desde cualquier estación de trabajo de Internet a nuestro equipo.

Por curiosidad, si hemos dejado el X11 Forwarding en modo Yes podemos llevar a cabo la ejecución de programas gráficos en nuestro servidor SSH que se visualizarán en nuestra máquina que lleve a cabo la conexión. Para lanzar, por ejemplo, xclock que es la aplicación que muestra la hora de manera gráfica, ejecutaremos:

ssh -X direccion_IP_ServidorSSH

xclock

#Ante lo cual se abrirá un reloj gráfico con la hora de la máquina servidor, no con la que tengas en la máquina desde la que hagas la conexión. Compruebalo!.

Más adelante hablaremos más de OpenSSH, en concreto de los siguientes aspectos:

  • Cambiar el mensaje de bienvenida
  • Copia de archivos mediante SSH
  • Administración remota de manera gráfica a través de SSH: FreeNX y Nomachine
  • etc…

Fuentes utilizadas: UbuntuGeek y LinuxQuestions

Blog de WordPress.com.