Instalar LAMP en Linux Mint 19

introducción
LAMP es un grupo de software de código abierto que normalmente se instala junto para permitir que un servidor aloje sitios web dinámicos y aplicaciones web.
LAMP incluye Apache, MySQL, PHP.

En este tutorial instalaremos LAMP en Linux Mint 19 Tara.

Instalación apache
Los repositorios oficiales de paquetes de Mint incluyen una versión actualizada de Apache, por lo que podemos instalar los paquetes necesarios usando apt.

Actualice la lista de paquetes de Mint para obtener la última versión de las listas de repositorios del terminal:
sudo apt update

Para instalar Apache abre el terminal y da estos comandos:
sudo apt install apache2

Si el firewall de Mint está activo, debe habilitar el tráfico para Apache:
sudo ufw allow in “Apache Full”

En este punto, el servidor está listo con las configuraciones predeterminadas.
Simplemente conéctese a su dirección IP pública o en localhost:

http://localhost
Para reiniciar Apache:
sudo service apache2 restart

Para detener Apache:
sudo service apache2 stop

Para iniciar Apache:
sudo service apache2 start

Instalar MySQL
Puede instalar MySQL usando el repositorio oficial de Linux Mint con apt.
Instalar MySQL:
sudo apt install mysql-server

MySQL seguro
Inicie un script MySQL para cambiar algunas configuraciones:
sudo mysql_secure_installation

Se le pedirá que ingrese una contraseña para el usuario root , que utilizará para acceder al servidor MySQL.

Ingrese “y” para “sí” o cualquier otra letra para “no”.

Se le preguntará si desea probar la seguridad de la contraseña.

A continuación se recomienda presionar “y” luego “sí”.

Eliminar usuarios anónimos
Deshabilitar el inicio de sesión remoto de root
Eliminar la base de datos de prueba
Actualizar las nuevas reglas.
Cambiar el método de autenticación.
A partir de la versión 5.7 de MySQL, el usuario root de MySQL está configurado para autenticarse usando el complemento auth_socket por defecto en lugar de una contraseña.

Para usar una contraseña para conectarse a MySQL como usuario root, necesita cambiar el método de autenticación, de auth_socket a mysql_native_password .

Dado que aún no se ha establecido una contraseña, puede conectarse al servidor MySQL simplemente usando el comando mysql o sudo mysql si ha iniciado sesión como usuario regular. A continuación, deberá usar el comando mysql u root -p del usuario root; de lo contrario, sudo mysql -u root -p del usuario normal.

Entonces, si ha iniciado sesión como usuario root, escriba en el terminal:
mysql

De lo contrario, si ha iniciado sesión como un usuario normal con privilegios de sudo:
sudo mysql

Para verificar el método de autenticación asociado con las cuentas mysql:
SELECT user,authentication_string,plugin,host FROM mysql.user;

Deberías recibir un mensaje como este:

+——————+——————————————-+———————–+———–+
| user             | authentication_string                     | plugin                | host      |
+——————+——————————————-+———————–+———–+
| root             |                                           | auth_socket           | localhost |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *5852386AB32C5DAD5DDA4F5FED911A70DA342656 | mysql_native_password | localhost |
+——————+——————————————-+———————–+———–+
4 rows in set (0.00 sec)
Como puede ver para el usuario root, el método de autenticación auth_socket está configurado de forma predeterminada. Para usar la autenticación de contraseña para la cuenta raíz, realice los siguientes cambios:
ALTER USER ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘TUA_PASSWORD’;

Luego refresca las tablas:
FLUSH PRIVILEGES;

Ahora puede verificar el nuevo método de autenticación asociado con el usuario root:
SELECT user,authentication_string,plugin,host FROM mysql.user;

Deberías recibir un mensaje como este:

+——————+——————————————-+———————–+———–+
| user             | authentication_string                     | plugin                | host      |
+——————+——————————————-+———————–+———–+
| root             | *E6A3377941E640ADEDCC8907E390B06B0C863862 | mysql_native_password | localhost |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *5852386AB32C5DAD5DDA4F5FED911A70DA342656 | mysql_native_password | localhost |
+——————+——————————————-+———————–+———–+
4 rows in set (0.00 sec)
Salga del indicador de MySQL:
exit;

Para iniciar sesión nuevamente en el servidor MySQL ahora deberá ingresar una contraseña, luego desde el terminal:

Si ha iniciado sesión como usuario root, escriba al terminal:
mysql -u root -p

De lo contrario, si ha iniciado sesión como un usuario normal con privilegios de sudo:
sudo mysql -u root -p

Instalación de PHP
Para instalar PHP desde un terminal:
sudo apt install php libapache2-mod-php php-mysql

Reinicie Apache:
sudo service apache2 restart

Verificamos la correcta instalación de PHP. Creamos un archivo con la extensión .php:
sudo nano /var/www/html/info.php

Pega este código:

<?php phpinfo(); ?>
Guarde y cierre el archivo.

Conéctese a su dirección IP pública o localhost:

http://localhost/info.php
La instalación y configuración básica de un servidor web Apache con MySQL y PHP en Linux Mint 19 Tara. ha terminado