Configurando el servidor
En esta parte, vamos a instalar un servidor apache, ademas de PHP y la base de datos que vamos a usar para instalar y correr WordPress.
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-lamp-amazon-linux-2.html pero usando php8.0 y mariadb10.5
- Lo primero es ir a nuestra instancia y nos conectamos a ella. Para esto, selecciona el boton Connect.

- Al seleccionar Connect, se va a abrir una pantalla en la que puedes elegir la forma de conectarte. En este caso vamos a usar la opción «EC2 Instance Connect«. Para esto solo presionamos el botón «Connect«. Cuando se conecta a una instancia con EC2 Instance Connect, la API de Instance Connect inserta una clave pública SSH de un solo uso en los metadatos de la instancia donde permanece por 60 segundos.

- Realice una actualización rápida del software en la instancia. Para esto, vamos escribir esto en la consola.
sudo yum update
- Instalar los repositorios para obtener las versiones más recientes de los paquetes LAMP MariaDB y PHP.
sudo amazon-linux-extras install -y lamp-mariadb10.2-php7.2 php7.2
- Luego instalar los paquetes de software PHP, MariaDB y el servidor web Apache.
sudo yum install -y httpd mariadb-server
Utilice «yum info package_name» para ver las versiones actuales de estos paquetes.
- Inicie el servidor web Apache.
sudo systemctl start httpd
- Utilice el comando systemctl para configurar que el servidor web Apache arranque cuando se inicie el sistema operativo en caso de reiniciarlo en algun momento.
sudo systemctl enable httpd
Para verificar que httpd está activo usa «sudo systemctl is-enabled httpd» en la consola. Una vez Apache esta activo, prueba el servidor web. En tu navegador web, escribe la dirección IP pública de la instancia, y si no hay ningún contenido en /var/www/html, debería aparecer la página de prueba de Apache.
Establecer permisos de archivo
Permitir que tu cuenta ec2-user pueda manipular archivos en el directorio web, debes modificar la propiedad y los permisos del directorio. Para esto añadiremos el usuario ec2-user al grupo apache, esto otorga al grupo apache la propiedad del directorio /var/www y se asignan permisos de escritura al grupo.
Para establecer permisos de archivo haremos lo siguiente:
- Añada el usuario (en este caso, el usuario
ec2-user) al grupoapache.
sudo usermod -a -G apache ec2-user
- Cierre sesión, luego vuelva a iniciarla para elegir el nuevo grupo y, a continuación, verifique si pertenece a este.
- Cierre sesión (utilice el comando exit o cierre la ventana del terminal):
- Para verificar si pertenece al grupo
apache, vuelva a conectarse a la instancia y, entonces, ejecute el siguiente comando:
groups ec2-user adm wheel apache systemd-journal
- Cambie la propiedad de grupo de
/var/wwwy su contenido al grupoapache.
sudo chown -R ec2-user:apache /var/www
- Para agregar permisos de escritura de grupo y establecer el ID de grupo en futuros subdirectorios, cambie los permisos del directorio
/var/wwwy sus subdirectorios.
sudo chmod 2775 /var/www && find /var/www -type d -exec sudo chmod 2775 {} \;
- Para agregar permisos de escritura de grupo, cambie recursivamente los permisos de archivo de
/var/wwwy sus subdirectorios.
find /var/www -type f -exec sudo chmod 0664 {} \;
Ahora tu usuario ec2-user (y cualquier futuro miembro del grupo apache) puede añadir, eliminar y editar archivos en la raíz de documentos de Apache, por lo que podrás añadir contenido, como un sitio web estático o una aplicación PHP (en nuestro caso, WordPress).
Probar el servidor LAMP
- Cree un archivo PHP en la raíz de documentos de Apache. Desde la consola de linux escribe esto:
echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php
Si recibe el error «Permiso denegado» al intentar ejecutar este comando, intente cerrar sesión e iniciarla de nuevo para actualizar los permisos de grupo correctos que ha configurado antes.
- Luego, en un navegador web, escriba la URL del archivo que acaba de crear. Esta URL es la dirección DNS pública de la instancia seguida de una barra diagonal y el nombre del archivo. Por ejemplo:
http://my.public.dns.amazonaws.com/phpinfo.php
Debería ver la página de información PHP en tu navegador.
- Para eliminar el archivo de info usa esta linea en la consola:
rm /var/www/html/phpinfo.php
Proteger el servidor MariaDB
- Inicie el servidor MariaDB.
$ sudo systemctl start mariadb
- Ejecute mysql_secure_installation.
[ec2-user ~]$ sudo mysql_secure_installation
- Cuando se le solicite, escriba una contraseña para la cuenta raíz.
- Escriba la contraseña raíz actual. por defecto, la cuenta raíz no tiene contraseña. Pulse Intro.
- Escriba Y (yes) en lo siguientes pasos
- Configurar una contraseña y escriba una contraseña segura dos veces. Recuerda guardar esta contraseña en un lugar seguro.
- Eliminar las cuentas de usuarios anónimos.
- Deshabilitar el inicio de sesión raíz remoto.
- Eliminar la base de datos de prueba.
- Volver a cargar las tablas de privilegios y guardar los cambios.
- De forma opcional, puedes parar mariadb usando «
$ sudo systemctl stop mariadb« - Para iniciar el programa cuando se inicie el sistema puedes escribir esto: «
$ sudo systemctl enable mariadb«.
Continua hacia la siguiente sección para instalar phpMyAdmin…

