Bienvenido a cursohacker.es. Puedes acceder a todo el contenido líbremente pero si deseas poder crear tus propios temas en el foro y que tus respuestas y comentarios se publiquen de forma automática regístrate como alumno aquí

Instalación LAMP Ubuntu Server virtualizado

Ahora que ya conocemos las ventajas de la virtualización y hemos sido capaces de instalar nuestra máquina virtual con windows XP llega el momento de instalar nuestro primer servidor LAMP (Linux, Apache, Mysql, Php). Tener un servidor LAMP virtualizado te permitirá en cualquier momento emular un sistema real y probar sobre el aquella técnica que desees. Además, si eres webmaster te permitirá tener todas tus páginas web en local a modo copia de seguridad o para implementar mejoras y posteriormente subirlas a tu servidor real.

LAMP Ubuntu Server

Vamos en esta ocasión a virtualizar un servidor Ubuntu para dejarlo onfigurado como un LAMP server. ¿Por qué Ubuntu Server? La respuesta a esta pregunta es muy sencilla, estamos siguiendo un curso de seguridad informática desde cero. Nuestro objetivo es que nadie se quede atrás. La distribución de Linux Ubuntu, tanto su versión de escritorio como su versión de servidor son de las más fáciles de instalar y configurar que hay en la red. Además es una versión totalmente gratuita, con lo que descargarla, instalara y configurarla no te supondrá ningún coste. Ubuntu es una distribución de Linux basada en Debian. Esta distribución es excelente para montar servidores cuya seguridad es primordial. Su robustez y los paquetes que la componen hacen de ella una de las distribuciones de Linux más seguras que existen a día de hoy.

Ubuntu server tiene un nivel de seguridad no tan alto como Debian, pero si más que suficiente, además su instalación y configuración es infinitamente más sencilla que Debian y otras distribuciones como RedHat o CentOS.

¿Qué versión de Ubuntu Server necesitas?

Después de esta pequeña introducción y puesta al día pasamos ya a la acción. Lo primero que debemos de hacer es descargarnos una imagen de la distribución Linux Ubuntu Server. Antes de descargarla debemos de tener claros un par de conceptos para no equivocarnos y perder el tiempo. El primer concepto es el tipo de distribución que queremos; hay dos LTS y la versión actual. ¿Qué es Ubuntu Server LTS? LTS significa Long Time Support. Esto quiere decir que tendrá actualizaciones para bastante mas tiempo que la normal. El precio a pagar por estas actualizaciones es que la versión LTS es siempre inferior a la actual. A día de hoy, 9 de febrero de 2013, la versión LTS que hay en la página oficial de Ubuntu Server es la 12.04.4 mientras que la versión más actual de Ubuntu server es la 13.10. Nuestra recomendación es que para servidores reales siempre os descarguéis la versión LTS, para máquinas virtuales de prueba no importa cual tengáis.

El segundo concepto que tenéis que tener en cuenta antes de hacer la descarga es el referente al tipo de ordenador que tenéis. Ubuntu Server está disponible tanto en arquitectura de 64 bits como en 32 bits. De hace unos 5 años en adelante se empezaron a comercialiar los ordenadores con arquitectura 64 bits y dejaron de hacerlo progresivamente los de 32 bits. Lo que tienes que tener en cuenta es: Si tu ordenador es de 64 bits puedes hacer funcionar tanto ubuntu server 64 como ubuntu server 32. Si tu ordenador es de 32 bits no puedes hacer funcionar ubuntu server 64. Así que si estás seguro de que PC soporta 64 bits puedes descargar la versión de 64 bits de Ubuntu Server (que es la recomendada), y si no estás seguro descarga la de 32 bits. Si tu ordenador viene de fábrica con Windows Vista o superior casi seguro que tienes un sistema de 64 bits, si tu ordenador tiene más de 4 gigas de Ram también es un indicativo totalmente seguro de que trabajas en 64bits. Para saber más sobre cómo averigurar si tu PC es 64 o 32 bits puedes utilizar estos trucos de búsqueda avanzada en google.

Máquina virtual LAMP Ubuntu Server

Ya tienes claro la versión de ubuntu que debes descargarte. Así que puedes descargarla desde aquí: http://www.ubuntu.com/download/server. Nunca JAMÁS descargues una distribución de ubuntu en un sitio NO oficial. La razón es que ha podido ser manipulada y estar controlada por un tercero. Ubuntu ha sido, es y será una distribución linux libre y gratuita, así que podrás descargarla siempre desde su página oficial.

Nosotros hemos descargado la versión LTS que ocupa unos 695 megas, después de unos minutos la tenemos descargada y lista para empezar. Si no tienes preparado VirtualBox haz una pausa y lee la publicación sobre cómo instalar y configurar VirtualBox. Cuando lo tengas operativo estarás listo para continuar.

El primer paso es crear una máquina virtual tal y como lo hicimos para windows en la publicación anterior (Virtualizando Windows XP con VirtualBox). Al igual que la vez anterior VirtualBox permite preconfigurar ciertos aspectos para optimizar la máquina virtual a Ubuntu:
LAMP ubuntu server virtualizado, preconfiguración

El siguiente paso es establecer el tamaño de memoria RAM que queremos aplicar a la máquina virtual, con 512MB es más que suficiente, además tened en cuenta que podréis ampliarlo sin ningún tipo de problema en cualquier momento. Vamos a crear un disco duro totalmente nuevo:
LAMP Ubuntu Server virtualizado disco duro

Vamos a crearlo de tipo VDI (está marcado por defecto en el siguiente diálogo) y lo más importante, vamos a hacer que crezca de forma dinámica. Esto lo hacemos así porque de esta forma podemos crear un disco duro virtual de 20 gigas pero en nuestro PC solo ocupará aquella parte del disco duro que tengamos ocupada. Para que lo entiendas mejor. Si nosotros creamos un disco duro de 20 gigas estático tu máquina virtual pasará 20 gigas desde ya. Sin embargo si lo creas dinámico tu máuqina virtual pesará hoy unos megas y conforme le instales programas irá creciendo hasta un peso máximo de 20 gigas:
LAMP Ubuntu Server disco duro dinámico

El siguiente diálogo os preguntará el tamaño del disco duro. No os quedéis cortos ya que estáis definiendo el tamaño máximo del disco duro. Para un LAMP Ubuntu Server en una máquina virtual de pruebas con 20 gigas es más que suficiente (a no ser que tengáis pensado subir archivos multimedia pesados a vuestro servidor vitual).

Todo lo que hemos hecho hasta aquí es preparar la máquina virtual. Aún nos falta un paso necesario para poder instalar nuestro servidor LAMP con ubuntu. Este paso es configurar la unidad de CD para que lea la imagen de Ubuntu Server que nos hemos descargado. Para ello pulsamos sobre el botón de configuración, nos dirigimos al apartado de almacenamiento, dentro de este al disposivo de CD e indicamos que queremos seleccionar un archivo de disco virtual:

Se nos abrirá un diálogo para buscar el archivo de disco virtual, lo localizamos, lo seleccionamos y veremos cómo VirtualBox lo habrá cargado correctamente:

Ahora SI estamos en posción para poder arrancar. Iniciamos nuestra máquina virtual pulsando el botón con la flecha verde "Iniciar" y se nos abrirá nuestra máquina virtual con la instalaciónd e Ubuntu Server. Lo primero que pide es el idioma, yo he seleccionado el español vosotros podéis escoger el que mas os guste:
LAMP Ubuntu server español

Una vez en nuestro idioma indicamos que queremos hacer una instalación limpia de Ubuntu Server:
Instalación limpia Ubuntu Server virtualizado
 

Aquí empezaremos el proceso de instalación. Si vuestro VirtualBox no ha sido capaz de virtualizar un sistema de 64bits quizá necesitéis ajustar ciertos parámetros en la bíos. En caso de que tengaís este problema la máquina virtual os mostrará el siguiente mensaje de error:

Si esto ocurre tenéis dos caminos; el primero es verificar que vuestro PC soporta 64 bits en virtualización, el segundo y más sencillo es descargar la versión de 32 bits y continuar con ella. No os preocupéis para un servidor virtual de pruebas da exactamente igual trabajar en 32 bits que en 64. La potencia de 64 bits se nota cuando tenemos muchos usuarios conectados a la vez. En un servidor virtual este no es el caso.

Si no hay errores, o si habéis tenido que solucionar el error descrito anteriormente la instalación continuará pidiendo el pais donde estáis, esto lo hace para poder establecer correctamente la zona horaria entre otras cosas:
zona horaria LAMP ubuntu Server

En el siguiente paso váis a indicar el tipo de teclado que tenéis. Os recomiendo que dejéis que lo autodetecte ya que funciona bastante bien. En caso de que prefiráis que no os va a pedir que pulséis una serie de teclas para el poder detectar el teclado que estáis utilizando.

Después comenzará a instalar el sistema base. Tardará unos minutos en función de la potencia de vuestro ordenador. Una vez completado tendremos que indicar el nombre de nuestra máquina. Como estamos creando un servidor LAMP con Ubuntu Server lo más adecuado podría ser:

Lamp Ubuntu Server RED

Justo después de introducir estos datos, en el siguiente diálogo vamos a definir nuestro usuario y contraseña. Estamos en un servidor virtual de pruebas, elegid unos credenciales sencillos y cortos ya que váis a tener que identificaros muchas veces y en este escenario no es necesario tener una contraseña robusta. En un servidor real os diría todo lo contrario. La instalación continuará una vez hayáis indicado estos datos.

Unos minutos después la instalación se detendrá de nuevo para preguntarnos cómo queremos particionar nuestro disco duro. En un servidor real habría que hacer esto con bastante cuidado ya podríamos querer un sistema con distintas particiones para parte de Linux. En nuestro caso y debido a que estamos aún en el nivel inicial vamos a seleccionar que queremos que utilice todo el disco y configure de forma automática por nosotros el sistema LVM

Ubuntu Server LVM particionado

Como solo tenemos un disco duro virtual en el siguiente paso vamos a tener que seleccionarlo y Ubuntu Server se preparará para hacer los cambios indicados. Y digo se que se preparará porque no los hará hasta que pasemos esta "pregunta de seguridad":
LAMP Ubuntu Server pregunta de seguridad

El instalador de Ubuntu Server nos informa de que está apunto de hacer los cambios y nos pregunta si realmente queremos hacerlos. Por defecto aparece marcada la opcion NO. Esto es así para darle una última oportunidad a aquellos que estén apunto de cometer un fallo modificando el disco duro de forma distinta a la que están pensando. Nosotros en nuestra máquina virtual no estamos corriendo ningún riesgo así que marcamos la opción "SI" y continuamos. Dejad por defecto el tamaño de disco duro que os indica Ubuntu Server en el siguiente paso.

De nuevo otra pregunta de seguridad:
Formateo particiones LAMP

El instalador nos avisa de que se va a proceder a formatear las particiones tal y como le hemos indicado. Volvemos a cambiar la opción "NO" por "SI" y seguimos. Si estamos conectados a internet el propio instalador actualizará de forma automática aquellos paquetes que así lo requieran. Si estamos sin red, se instalarán en la version que vienen en la imagen que nos hemos descargado y luego deberemos actualizarlos en caso de estar montando un servidor real.

Continuando con la instalación el asistente os preguntará si deseáis que el servidor se actualice de forma automática. En los sistemas operativos de escritorio esta opción es obligatoria contestarla de forma afirmativa. Pero en caso de servidores esto no es recomendable. Puede que suene raro, ¿No dejar que se actulice de forma automática? No, porque un servidor es algo que da servicio a muchos usuarios, y una actualación de forma automática puede parar el servicio o incluso desconfigurarlo. Cuando trabajamos con servidores debemos de tener un cuidado especial a la hora de instalar/desinstalar nuevo software y también a la hora de actualizarlo. Por este motivo no se recomienda activar las actualizaciones automáticas para servidores.
LAMP actualizaciones automáticas

Llegamos a la parte mas importante de toda la instalación. Aquí es donde realmente indicamos a Ubuntu Server que queremos configurarlo como servidor LAMP. Así que vamos a marcar la opción LAMP y también la opción OpenSSH Server. OpenSSH es un tipo de servicio que nos permite conectarnos al servidor para controlaro desde cualquier parte del mundo. Es un servicio que se instala en casi cualquier servidor.
LAMP y OpenSSH Server en Ubuntu Server

Marcado esto el asistente prosigue con la instalación y empieza a instalar los paquetes que hemos marcado. En unos segundos la instalación se detiene y nos pide una nueva contraseña para gestionar MySQL (la base de datos); escribimos una que nos sea fácil de recordar (estamos en un servidor de pruebas) y continuamos:
root password MySQL Ubuntu Server
La instalación continuará y ahora si tardará más tiempo que en todos los pasos anteriores, si tenéis que hacer algo es el momento de dejar el asistente trabajando. A vuestra vuelta quedará ya muy poco para finalizar. Lo siguiente que os va a preguntar es si queréis instalar el cargado de arranque de sistema GRUB. Contestad afirmativamente, ya que de lo contrario no podréis arrancar vuestro LAMP. Y finalmente la máquina virtual se reinicia y se da por finalizada la instalación.

Comprobación de nuestro nuevo LAMP Server

En este apartado final vamos a verificar que todo está funcionando realmente. Para ello nos debemos de identificar en el sistema con los credenciales (usuario y contraseña) que hemos elegido en la instalación descrita unas líneas mas arriba. Cuando estéis escribiendo la contraeña no veréis nada en la pantalla. Esto es así porque es un método de seguridad por si alguien os está mirando la pantalla desde atrás que no os vea la contraeña. Si son válidos los credenciales el sistema os dará acceso:
Acceso permitido Ubuntu Server

Miramos la IP que le ha tomado el servidor, si no sabes muy bien que es una IP puedes leer nuestra publicación sobre introducción a lo que son las IPs. Para mirar la IP que tiene un sistema Linux necesitamos utilizar el comando "ifconfig"; el cual nos arrojará una salida tal que así:
ifconfig LAMP Ubuntu Server virtual

El campo Direct. inet nos estará indicado cual es la IP que tiene el servidor; en mi caso 10.0.2.15. Ahora abrimos nuestro navegador y tecleamos en la URL la IP del servidor. Si todo está funcionando de forma correcta obtendremos la siguiente respuesta del servidor:

Y listo, nuestro servidor está funcioando correctamente, está preparado para poder trabajar con el. Nos vemos en la siguiente entrega.

Comentarios

Hola, estoy siguiendo el curso y solo tengo una pequeña duda, una vez instalado el servidor LAMP , he visto que el utlimo paso que has hecho es comprobar si apache está funcionando correctamente visitando la ip 10.0.2.15 (que es la que tiene el servidor).
La duda es ¿ desde que navegador estas comprobando si funciona bien el servidor? ¿desde el windows xp instalado anteriormente? ¿desde el host anfitrion?.
Gracias por ofrecer el curso.

Hola Javi.

Nosotros siempre hacemos la comprobación desde el host afitrión. El motivo es porque si lo haces desde el windows XP virtualizado estás metiendo en juego otra máquina virtual, y una de las premisas a la hora de hacer pruebas es que intervengan los elementos estrictamente necesarios. Se podría dar el caso de que desde tu Windows XP virtualizado no tengas acceso  pero no por culpa del servidor, sino por culpa de la máquina virtualizada no está correcta y esto te podría inducir a error.

Gracias, aunque encontré esto respecto a las configuaciones de red dentro de las máquinas virtuales:
Cuando usas NAT en VirtualBox entonces todos los sistemas que virtualices siempre tendrán una misma dirección IP que es asignada por VirtualBox (por ej. 10.0.2.15). Ello no causa ningún problema ya que los sistemas virtualizados no se ven entre sí, sólo tu sistema host los ve y a través de él salen a la red ya que ven el sistema host como si fuera un enrutador.

Si quieres que dichos sistemas se vean entre sí entonces deberías cambiar NAT por Internal Network en cada sistema virtualizado, y de esta manera utilizar direcciones IP distintas y podrás interconectarlas ... pero te quedarías sin salida a la red de tu host. Para solventar esto simplemente debes añadir otra tarjeta de red en cada sistema virtualizado: así tendrás una con NAT (para que salgan a la red) y otra con Internal Network (para que se vean entre sí).

Cuando usas Bridge entonces requerirás que los sistemas virtualizados usen direcciones IP que estén dentro del mismo rango de tu host. Si en el host usas, por ejemplo, 192.168.1.1, entonces los virtualizados deberán usar direcciones también del rango 192.168.1.x. De esta manera tus sistemas virtualizados quedarán visibles en la red en el mismo nivel que tu sistema host ... y ello te ayudaría a instalar servidores en los sistemas virtualizados, y otros equipos en la red los podrán alcanzar aún cuando estén virtualizados ya que habrás usado la opción Bridge y porque tendrán direcciones IP del mismo rango de red.

Recomiendo leas la ayuda de VirtualBox, ya que en en Windows, MacOS y Linux hay cosas de VirtualBox que varían por cuestiones técnicas.

Con la configuracion por defecto, yo no he sido capaz de conectarme al servidor y que Apache me diga el mensaje de que está trabajando (aunque se sabe que si porque cuando carga el sistema se inicia el demonio), no he conseguido que responda a un ping y al cambiar la configuracion del adaptador de la red para el servidor (por probar otras configuraciones) tampoco he podido volver a tener la interface eth1 en el servidor y por consiguiente perdí la ip por DHCP 10.0.2.15.

No se, voy a volver a reinstalar y probar.... pero vamos que empiezo mal por lo que veo.... :-/

Gracias de todas formas por contestar y por ofrecernos este curso que seguiré cueste lo que cueste :D

Pedazo de comentario Javi!

En la lección sobre la instalación y configuración de virtualBox vimos los distintos tipos de redes. Si quieres que tus sitemas virtualizados sean visibles en toda tu red local de forma sencilla y rápida has de seleccionar la configuración de red "Bridge", que lo que hace es puentear la tarjeta de red emulada con la tarjeta de red real. Así tu router le dará una IP a tu máquina virtual como si fuera otro elmento más de tu red.

Conforme siguamos avanzando contenidos en el curso veremos estas configuraciones mas a fondo para emular entornos virtuales con las características específicas que necesitemos.

Un saludo y gracias por seguirnos.

hola, estoy siguiendo el curso y lo considero muy interesante.

En la lección de hoy he seguido y comprendido los pasos y todo ha funcionado correctamente, pero al teclear la IP del servidor en el explorador (firefox) desde el host anfitrion (win7) no lo encuentra.
La IP es la misma que en la lección 10.0.2.15. De hecho he comparado el ifconfig que me da mi distro de ubuntu y la que aparece en la lección y son practicamente iguales, exceptuando la MAC.

He intentado hacer ping desde la consola de windows y tampoco la ve.

Al seguir todos los pasos debo entender que las opciones de Red de Virtualbox se queda con la predeterminada, NAT.

¿hay alguna comprobación que pueda hacer para averiguar por que no funciona?

Gracias

Hola Victor. Es muy probable que tu cortafuegos (ya sea el de windows u otro que tengas instalado) esté impidiendo la comunicación. Antes de entrar en detalles de cómo reconfigurar tu cortafuegos te recomendamos hacer la siguiente configuración en tu máquina virtual:

​Dentro de la configuración de tu máquina virtual con Ubuntu LAMP Server ve al apartado de red y selecciona el modo puente. Una vez hecho VirtualBox te va a pedir que indiques la tarjeta de red con la que quieres puentear tu máquina virtual. Si solo tienes una tarjeta solo tendrás una opción; pero si tienes varias selecciona aquella que te está dando conexión a internet. Una vez hecho, reinicia tu máquina virtual y comprueba que te ha dado una nueva IP del mismo rango de tu PC; hecha esta verificación prueba a acceder de nuevo. Con casi total seguridad podrás acceder sin problemas.Configuración red LAMP Ubuntu Server

Saludos.

Afirmativo admin. Tal y como dices al puentear ha funcionado perfectamente. Ya la tengo preparada para ponerla a prueba cuando toque.
si que he de decir que he desactivado el Karpesky y he vuelto a la configuración inicial de la maquina Virtual (NAT) y sigue sin funcionar. Lo seguiré investigando.

Un saludo.

He hecho lo que decias en el comentario anterior y sigue sin darme resultado

Hola, soy de Perú, y soy novato en temas de servidores mi problema es el siguiente: Yo estoy usando ubuntu(cliente) no más de 5 meses y todo bien hasta el momento, he instalado XAMPP para poder usar mi ubuntu como servidor y funciona de manera correcta, pero cuando quiero ver mis páginas desde otra computadora en local no me funciona se queda cargando el navegador y al final me arroja página no cargada. yo tengo 2 computadores una con ubuntu y otra con window7 "W7"en mi W7 tengo tambien instalado XAMPP y desde mi ubuntu puedo ver las páginas de forma correcta, pero cuando intento lo contrario (osea ver mis paginas en ubuntu desde W7), pasa el error que les comento. y peor si quiero acceder a ella desde internet osea a traves de mi ip pública.

Realmente no se cual puede ser el error, ya que desde W7 puedo ver mis paginas tanto desde mi red local y desde internet accediendo a su ip correspondiente.

Para que quede claro mi pregunta tengo configuradas mis ips de la siguiente manera: mi ubuntu tiene la 192.168.1.2 y mi w7 tiene 192.168.1.3.

Espero que me puedan ayudar quizas ubuntu no deja ingresar de forma tan permisiva a mi servidor como lo hace window, o quizas me falte configurar algo adicional en mi ubuntu,

PD: Tambien instale ubuntu server 14.04 LTS en mi virtual box y desde mi anfitrion pude ingresar le asigne la ip 192.168.1.4, desde el propio ubuntu chevere funciona pero desde otra maquina en la red nada.

Hola,

Para ver el servidor desde el exterior debrás instalar dyndns o no-ip.

http://www.noip.com/support/knowledgebase/installing-the-linux-dynamic-u...

Los que teneis problemas para resolver desde el navegador una vez instalado es el firewall de ubuntu ufw. Debeis abir el puerto 80 TCP.

Salu2,

Hola.

He seguido el tutorial y tengo mi servidor y puedo acceder a la página de prueba desde cualquier ordenador de la red.

Ahora, mi duda es: ¿Cómo envío los datos de las webs al servidor?

 

Gracias!!

Solucionado.

Gracias a nuestro amigo SSH.

 

Gracias!!!

Hola,he desactivado los firewalls y no me deja conectar ,alguna solucion?gracias,buen trabajo no pareis jijiji

Si te ha sido de utilidad Compárteme