Saltar al contenido

Como instalar un Servidor LAMP en Fedora 12 paso a paso

Ya ha pasado un tiempo desde que escribí el tutorial de Instalar un servidor LAMP en Fedora Core 6 , Core 7 y Core 8, es un artículo con muchas visitas y con más de 100 comentarios y preguntas, he decidido a que ya es hora de actualizarlo a la versión 12 de Fedora que es la más reciente al momento, además aprovechar y agregar mucho de los tips y preguntas incluidas en los comentarios así como también las cosas que han cambiado y algunos tópicos más avanzados. Así que empecemos…

En este tutorial vamos a ver como instalar y configurar un servidor LAMP para Fedora 12.

Un servidor LAMP se refiere a un conjunto de aplicaciones que por sus siglas es Linux+Apache+MySQL+PHP y en este caso vamos a instalar y configurar un servidor con los siguientes componentes:

Apache 2 – Servidor Web muy versatil y uno de los más utilizados en el mundo

MySQL 5 – Uno de los servidores de base de datos más populares y utilizados en sitios y aplicaciones web

PHP 5 – Es un lenguaje interpretado utilizado para construir aplicaciones y páginas web

Y veremos algunas utilidades como phpmyadmin que nos permitirán administrar mejor nuestro servidor.

Concepto: Un servidor no es más que un PC que presta algún servicio (como mostrar páginas web).

Pasos previos:

  • Obtener e Instalar Fedora: lo pueden obtener desde la página Oficial del proyecto Fedora.
  • El servidor debe tener al menos 256 MB de memoria RAM, si no saben cuanta memoria tiene su PC simplemente ejecuten free -m en el terminal si donde dice total es mayor a 256 están bien. Yo personalmente recomiendo tener al menos 512 MB de memoria RAM
  • También pueden probar instalando el servidor en una máquina virtual ya sea con virtualbox, vmware, kvm o el manejador de máquinas virtuales de su preferencia.
  • Si van a hacer la administración del servidor LAMP de manera remota les aconsejo instalar openssh-server (yum install openssh-server esto lo deben ejecutar como root).

Les aconsejo también seguir el tutorial paso a paso, he tratado de hacer los pasos lo más concretos y cortos posibles, para que así no se pierdan de nada y tampoco les aburra el tutorial.

Bueno ya tenemos todo listo para empezar así que abran un Terminal y pongámonos a trabajar.

A partir de ahora todos los comandos deben ser ejecutados como root (administrador)

1. Actualizar el Sistema

Es siempre aconsejable realizar la actualización de nuestro sistema antes de llevar a cabo cualquier instalación simplemente ejecuten lo siguiente en el terminal

yum -y update

Con este comando se actualiza nuestra lista de repositorios y los paquetes que tengamos instalados si hay alguna actualización disponible.

2. Instalar Apache y PHP en un sólo comando

Fedora nos da la opción de instalar paquetes en “grupos” algo parecido al tasksel de Debian y Ubuntu.

Para instalar el servidor Apache y PHP 5 vamos a utilizar el grupo “Servidor Web” para ver los paquetes que contiene este grupo ejecutamos el comando:

yum groupinfo "Servidor Web"

Nota: Si tu servidor está en otro idioma que no sea Español puedes reemplazar “Servidor Web” por “Web Server” que funciona para cualquier idioma

Esto nos dá la siguiente lista:

Paquetes obligatorios:
 httpd
 Paquetes predeterminados:
 crypto-utils
 distcache
 httpd-manual
 mod_perl
 mod_python
 mod_ssl
 php
 php-ldap
 php-mysql
 squid
 webalizer
 Paquetes opcionales:
 ...

Para instalar el grupo ejecutamos:

yum -y groupinstall "Servidor Web"

Al finalizar la instalación ya deberíamos tener instalado el servidor Apache y PHP5

Si quieres comprobar que versión de Apache se ha instalado debes ejecutar el siguiente comando:

httpd -v

Te aparecerá algo como:

Server version: Apache/2.2.14 (Unix)
Server built:   Dec  3 2009 10:25:53

Para finalizar la configuración de Apache debemos configurarlo para que inicie siempre que reiniciemos nuestro servidor para esto ejecutamos en el terminal:

chkconfig --level 345 httpd on

Ahora iniciamos Apache con:

service httpd start

Si todo está bien debería aparecer un [OK]

Los comandos para manejar el servidor Apache son los siguientes, pueden utilizar cualquiera de las dos versiones del comando la versión larga o la corta, todos estos comandos deben ejecutarse como root:

FunciónComandoComando Corto
Iniciar Apache/etc/init.d/httpd startservice httpd start
Detener Apache/etc/init.d/httpd stopservice httpd stop
Reiniciar Apache/etc/init.d/httpd restartservice httpd restart
Estatus Apache/etc/init.d/httpd statusservice httpd status

El archivo de configuración por defecto de Apache se encuentra en el directorio /etc/httpd/ y el directorio por defecto de los archivos donde se guardarán las páginas web es en /var/www/html

Para probar que Apache está funcionando bien basta con ir a la dirección en tu navegador (Firefox, Konqueror o el que prefieran) http://localhost desde el mismo servidor o http://ipservidor desde otra PC y les debe aparecer algo como lo siguiente:

Fedora Pagina por defecto de Apache

Para comprobar la versión de PHP ejecutamos:

php -v

Debería aparecer algo como:

PHP 5.3.1 (cli) (built: Nov 20 2009 12:52:06)
 Copyright (c) 1997-2009 The PHP Group
 Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies

Para comprobar que PHP  está funcionando correctamente, vamos a crear el siguiente archivo llamado prueba.php como root con tu editor favorito puedes utilizar nano, vim, gedit, etc.:

vim /var/www/html/prueba.php

Nota: Aquí estoy utilizando vim para editar utilicen el editor de su preferencia.

Dentro del archivo copiamos lo siguiente:

<?php phpinfo(); ?>

Guardamos al archivo y vamos al navegador y colocamos la dirección http://localhost/prueba.php si estamos en el mismo servidor o http://ipdelservidor/prueba.php. Deberia desplegar una lista con toda la información de PHP, los módulos y librerias instalados.

Pagina de prueba.php phpinfo()

Si te aparece una pantalla parecida a la anterior es que PHP está correctamente instalado y funcionando con Apache. Si te aparece algo como que quiere guardar el archivo prueba.php intenta reiniciar el servidor Apache con service httpd restart.

El archivo de configuración de PHP se encuentra en /etc/php.ini

3. Instalar MySQL

MySQL es una de las base de datos open source más popular y utilizadas en innumerables páginas web y aplicaciones tanto gratuitas como comerciales. Es una base de datos bastante robusta y flexible, fácil de configurar y lo bastante rápida para la mayoría de las aplicaciones comunes.

Al igual que para Apache existe un Grupo de paquetes de instalación para MySQL llamado “Base de datos MySQL” para ver los contenidos de este grupo de paquetes puedes ejecutar:

yum groupinfo "Base de datos MySQL"

Para instalar el servidor de MySQL debemos ejecutar el siguiente comando:

yum -y groupinstall "Base de datos MySQL"

Nota: Si tu servidor está en otro idioma que no sea Español puedes reemplazar “Base de datos MySQL” por “MySQL Database” que funciona para cualquier idioma

Esto instalará todos los paquetes y librerias necesarios para que funcione el servidor MySQL

Ahora debemos hacer que el servidor MySQL se inicie cada vez que se arranque o se reinicie el sistema para esto ejecutamos:

chkconfig --level 345 mysqld on

Para iniciar MySQL ejecutamos

service mysqld start

Luego debemos configurar el servidor MySQL para configurar la clave de administrador ejecutando:

mysql_secure_installation

Primero nos pregunta por la contraseña de root de MySQL, aquí presionamos enter ya que todavía no hay ninguna contraseña de root configurada para MySQL

Enter current password for root (enter for none): 

Luego nos pregunta si queremos asignarle una contraseña de root para MySQL escribimos Y y presionamos Enter/Intro

Set root password? [Y/n]

Luego nos pide la contraseña, aquí deberán colocar una clave para el administrador de la base de datos (no confundir con root de Fedora), no es recomendable colocar la misma clave del usuario de Fedora, se recomienda también que tenga una longitud mayor a 8 caracteres y que mezclen letras, símbolos y números, no son permitidos los espacios en blanco.

New password:

Cuando diga Re-enter new password: Simplemente volvemos a escribir la contraseña anterior

Luego nos pregunta si eliminamos los usuarios anónimos, a lo cual respondemos que Y por medidas de seguridad

Remove anonymous users? [Y/n]

Ahora pregunta si el usuario administrador solo puede ser utilizado desde el host local, esto es recomendable por razones de seguridad, a menos que tengas algún requerimiento especial respondemos Y

Disallow root login remotely? [Y/n]

Removemos la base de datos test que es de prueba si queremos respondiendo que Y

Remove test database and access to it? [Y/n]

Por último nos pide que reiniciemos los privilegios para que se efectuen los cambios respondemos Y

Reload privilege tables now? [Y/n]

Listo ya nuestra base de datos MySQL está instalada y segura.

Para comprobar el funcionamiento del servidor MySQL ejecuten el siguiente comando:

mysql -u root -p

Deberá pedirles la clave que colocaron en el paso anterior y aparecerles el prompt  mysql> algo parecido a esto:

vensign@lamp-vensign:~$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 11
Server version: 5.1.42 Source distribution

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

Vemos que nos muestra la versión del MySQL que acabamos de instalar. Para salir del prompt de mysql y volver al terminal de Linux simplemente escriban exit y presionen Enter o Intro.

Los comandos para administrar MySQL son:

FunciónComandoComando Corto
Iniciar MySQL/etc/init.d/mysqld startservice mysqld start
Detener MySQL/etc/init.d/mysqld stopservice mysqld stop
Reiniciar MySQL/etc/init.d/mysqld restartservice mysqld restart
Estatus MySQL/etc/init.d/mysqld statusservice mysqld status

El archivo de configuración de mysql se encuentra en /etc/my.cnf

Con estos tres pasos ya tenemos instalado un servidor LAMP en Fedora.

Con esto finalizamos el tutorial, ya tenemos un servidor web LAMP totalmente funcional y ya pueden empezar a colocar sus páginas y desarrollar sus proyectos, pronto publicaremos más tutoriales de configuración y seguridad de servidores web así que estén pendientes.

Cualquier duda o sugerencia por favor dejen sus comentarios