Instalación de LAMP (Linux, Apache, MariaDB, PHP/PhpMyAdmin) en RHEL/CentOS 7.0
On diciembre 5, 2021 by adminOmitiendo la introducción de LAMP, ya que estoy seguro de que la mayoría de ustedes saben de qué se trata. Este tutorial se concentrará en cómo instalar y configurar la famosa pila LAMP – Linux Apache, MariaDB, PHP, PhpMyAdmin – en la última versión de Red Hat Enterprise Linux 7.0 y CentOS 7.0, con la mención de que ambas distribuciones han actualizado el demonio httpd a Apache HTTP 2.4.
Requerimientos
Dependiendo de la distribución utilizada, RHEL o CentOS 7.0, utilice los siguientes enlaces para realizar una instalación mínima del sistema, utilizando una dirección IP estática para la configuración de la red.
Para RHEL 7.0
- Procedimiento de instalación de RHEL 7.0
- Registro y habilitación de suscripciones/repositorios en RHEL 7.0
Para CentOS 7.0
- Procedimiento de instalación de CentOS 7.0
Paso 1: Instalar el servidor Apache con configuraciones básicas
1. Después de realizar una instalación mínima del sistema y configurar la interfaz de red de su servidor con una dirección IP estática en RHEL/CentOS 7.0, siga adelante e instale el paquete binario del servicio httpd de Apache 2.4 proporcionado por los repositorios oficiales mediante el siguiente comando.
# yum install httpd
2. Después de que el gestor yum termine la instalación, utilice los siguientes comandos para gestionar el demonio Apache, ya que tanto RHEL como CentOS 7.0 han migrado sus scripts de init de SysV a systemd – también puede utilizar los scripts de SysV y Apache al mismo tiempo para gestionar el servicio.
# systemctl status|start|stop|restart|reload httpdOR # service httpd status|start|stop|restart|reloadOR # apachectl configtest| graceful
3. En el siguiente paso inicie el servicio Apache usando el script init de systemd y abra las reglas del Firewall de RHEL/CentOS 7.0 usando firewall-cmd, que es el comando por defecto para gestionar iptables a través del demonio firewalld.
# firewall-cmd --add-service=http
NOTA: Tenga en cuenta que el uso de esta regla perderá su efecto después de un reinicio del sistema o del servicio firewalld, porque abre reglas sobre la marcha, que no se aplican permanentemente. Para aplicar las reglas iptables de consistencia en el firewall utilice la opción -permanente y reinicie el servicio firewalld para que tenga efecto.
# firewall-cmd --permanent --add-service=http# systemctl restart firewalld
A continuación se presentan otras opciones importantes de Firewalld:
# firewall-cmd --state# firewall-cmd --list-all# firewall-cmd --list-interfaces# firewall-cmd --get-service# firewall-cmd --query-service service_name# firewall-cmd --add-port=8080/tcp
4. Para verificar la funcionalidad de Apache, abra un navegador remoto y escriba la dirección IP de su servidor utilizando el protocolo HTTP en la URL (http://server_IP), y debería aparecer una página por defecto como en la siguiente captura de pantalla.
5. Por ahora, la ruta de Apache DocumentRoot se establece en la ruta del sistema /var/www/html, que por defecto no proporciona ningún archivo de índice. Si desea ver una lista de directorios de su ruta DocumentRoot abra el archivo de configuración de bienvenida de Apache y establezca la declaración Indexes de – a + en la directiva <LocationMach>, utilizando la siguiente captura de pantalla como ejemplo.
# nano /etc/httpd/conf.d/welcome.conf
6. Cierre el archivo, reinicie el servicio de Apache para reflejar los cambios y vuelva a cargar la página del navegador para ver el resultado final.
# systemctl restart httpd
Paso 2: Instalar el soporte de PHP5 para Apache
7. Antes de instalar el soporte de lenguaje dinámico PHP5 para Apache, obtenga una lista completa de módulos y extensiones PHP disponibles utilizando el siguiente comando.
# yum search php
8. Dependiendo del tipo de aplicaciones que desee utilizar, instale los módulos PHP necesarios de la lista anterior, pero para un soporte básico de MariaDB en PHP y PhpMyAdmin necesita instalar los siguientes módulos.
# yum install php php-mysql php-pdo php-gd php-mbstring
9. Para obtener una lista de información completa sobre PHP desde su navegador, cree un archivo info.php en la raíz del documento de Apache utilizando el siguiente comando desde la cuenta raíz, reinicie el servicio httpd y dirija su navegador a la dirección http://server_IP/info.php.
# echo "<?php phpinfo(); ?>" > /var/www/html/info.php# systemctl restart httpd
10. Si obtiene un error en la fecha y la zona horaria de PHP, abra el archivo de configuración php.ini, busque y descomente la declaración date.timezone, añada su ubicación física y reinicie el demonio de Apache.
# nano /etc/php.ini
Localice y cambie la fecha.timezone para que se vea así, usando la lista de zonas horarias soportadas por PHP.
date.timezone = Continent/City
Paso 3: Instalar y configurar la base de datos MariaDB
11. Red Hat Enterprise Linux/CentOS 7.0 cambió de MySQL a MariaDB para su sistema de gestión de bases de datos por defecto. Para instalar la base de datos MariaDB utilice el siguiente comando.
# yum install mariadb-server mariadb
12. Una vez instalado el paquete MariaDB, inicie el demonio de la base de datos y utilice el script mysql_secure_installation para asegurar la base de datos (establezca la contraseña de root, desactive el inicio de sesión remoto desde root, elimine la base de datos de prueba y elimine los usuarios anónimos).
# systemctl start mariadb# mysql_secure_installation
13. Para probar la funcionalidad de la base de datos, inicie sesión en MariaDB utilizando su cuenta raíz y salga utilizando la sentencia quit.
mysql -u root -pMariaDB > SHOW VARIABLES;MariaDB > quit
Paso 4: Instale PhpMyAdmin
14. Por defecto, los repositorios oficiales de RHEL 7.0 o CentOS 7.0 no proporcionan ningún paquete binario para la interfaz web de PhpMyAdmin. Si no se siente cómodo utilizando la línea de comandos de MySQL para gestionar su base de datos, puede instalar el paquete PhpMyAdmin habilitando los repositorios rpmforge de CentOS 7.0 mediante el siguiente comando.
# yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
Después de habilitar el repositorio rpmforge, instale PhpMyAdmin.
# yum install phpmyadmin
15. A continuación, configure PhpMyAdmin para permitir conexiones desde hosts remotos editando el archivo phpmyadmin.conf, ubicado en el directorio conf.d de Apache, comentando las siguientes líneas.
# nano /etc/httpd/conf.d/phpmyadmin.conf
Use un # y comente estas líneas.
# Order Deny,Allow# Deny from all# Allow from 127.0.0.1
16. Para poder acceder a la interfaz web de PhpMyAdmin utilizando el método de autenticación por cookies, añada una cadena blowfish al archivo phpmyadmin config.inc.php como en la captura de pantalla siguiente, utilizando la opción de generar una cadena secreta, reinicie el servicio web de Apache y dirija su navegador a la dirección URL http://server_IP/phpmyadmin/.
# nano /etc/httpd/conf.d/phpmyadmin.conf# systemctl restart httpd
Paso 5: Habilitar LAMP en todo el sistema
17. Si necesita que los servicios de MariaDB y Apache se inicien automáticamente después de reiniciar, emita los siguientes comandos para habilitarlos en todo el sistema.
# systemctl enable mariadb# systemctl enable httpd
Eso es todo lo que se necesita para una instalación básica de LAMP en Red Hat Enterprise 7.0 o CentOS 7.0. La próxima serie de artículos relacionados con la pila LAMP en CentOS/RHEL 7.0 discutirá cómo crear Hosts Virtuales, generar Certificados y Claves SSL y añadir soporte de transacciones SSL para el Servidor HTTP Apache.
Deja una respuesta