Instalar un servidor Lamp en Ubuntu 18.04.
En este articulo vemos como instalar un servidor Lamp con phpMyAdmin en Ubuntu 18.04 y posteriores.
Para los profanos en el mundo de los servidores…, «LAMP» es un acronimo usado para describir el siguiente conjunto de herramientas-
- L – Sistema operativo Linux
- A – Servidor web Apache
- M – Base de datos MySQL o MariaDB
- P – Lenguajes de programación: PHP, Perl y Python
Nosotros le añadiremos «phpMyAdmin» que es una excelente herramienta para manejar la base de datos, también podrías usar «Adminer«, que es incluso más fácil de usar y no requiere de instalación.
Vamos a comenzar.
Instalar un servidor Lamp en Ubuntu 18.04
Actualizamos el sistema.
sudo apt update
Instalamos Apache.
sudo apt install apache2
Una vez concluya la instalación de Apache, comprobamos el estado del firewall de Ubuntu (por defecto UFW).
sudo ufw app list
ejemplo de salida…
Available applications: Apache Apache Full Apache Secure OpenSSH
Nos aseguramos que
Apache Full
habilita el tráfico en los puertos 80
y 443.
sudo ufw app info "Apache Full"
ejemplo de salida…
Profile: Apache Full Title: Web Server (HTTP,HTTPS) Description: Apache v2 is the next generation of the omnipresent Apache web server. Ports: 80,443/tcp
Por si acaso… abrimos de nuevo.
sudo ufw allow in "Apache Full"
En este punto, si insertas la IP del servidor en el navegador web veras la pagina por defecto de apache.
Proseguimos…
Instalamos MySQL.
sudo apt install mysql-server
Una vez concluida la instalación del servidor de base de datos, debemos securizar la instalación, ejecutamos lo siguiente:
sudo mysql_secure_installation
Te preguntara si quieres validar el password plugin, si no quieres tener problemas de conexiones rechazadas en un futuro, te recomiendo que respondas que NO.
Para el resto de las preguntas, presiona Y
y ENTER
en cada una. Esto eliminará los usuarios anónimos y la base de datos de prueba, deshabilitará los inicios de sesión a raíz remotos y cargará las nuevas reglas para que MySQL aplique inmediatamente los cambios que ha realizado.
La base de datos ya esta configurada y lista para ser usada.
Vamos a PHP.
Instalamos PHP.
sudo apt install php libapache2-mod-php php-mysql
Por defecto Ubuntu 18.04 instala PHP 7.2, así que puedes instalar los módulos que necesites, por ejemplo:
sudo apt install -y php7.2-xml php7.2-zip php7.2-mysql php7.2-curl php7.2-mbstring php7.2-json php7.2-gd php7.2-intl php7.2-mcrypt php7.2-xsl php7.2-soap php7.2-common php7.2-readline php7.2-cli php7.2-opcache php7.2-iconv php7.2-sqlite3
Reiniciamos apache.
systemctl restart apache2
Instalamos phpMyAdmin.
sudo apt-get update sudo apt-get install phpmyadmin php-mbstring php-gettext
Te aparecerá una pantalla gráfica de configuración, la vemos.
En la primera debes seleccionar «apache2» y OK.
En la segunda, nos pregunta si queremos instalar y configurar la base de datos en phpMyAdmin, respondemos YES y OK.
Ya lo tenemos, solo falta la ultima pantalla.
Ahora nos solicita la contraseña de nuestro MySQL, solo se usara internamente por phpMyAdmin. La puedes dejar esto en blanco, se generará una automáticamente.
Pulsa YES y ya puedes acceder a phpMyAdmin…
http://midominio.com/phpmyadmin
ohttp://miIP/phpmyadmin
Ya tienes tu servidor LAMP listo para trabajar.
Hola, gracias por el tutorial muy interesante. Ayer lo apliqué y funcionó todo, pero hoy he querido ejecutar http://localhost/phpmyadmin/ y no carga nada igual que solo localhost.
Me puede decir que pasa.
Gracias y un saludo
Probablemente Apache no inicia. Puedes comprobar el status con:
sudo systemctl status apache2
Inicia el servicio de nuevo y lo habilitas.
sudo systemctl start apache2
sudo systemctl enable apache2
Gracias Sergio por responder,
He probado lo que me dijiste y me da lo siguiente:
Active: failed (Result:exit-code) since …
Process: 732 ExecStart=/usr/sbin/apachectl start (code=exited, status=1/Failur
sudo systemctl start apache2
job for apache2.service failed because the control process exited with error code.
Sigue el problema
Bueno… sigue el problema pero no insertas el code error, jeje.
Posiblemente otro servicio este ocupando el puerto 80 (casi seguro), ejecuta:
sudo netstat -ltnp | grep ':80'
Y revisa que el tcp del puerto 80 no este abierto por otra aplicación como «lighttpd» (ejemplo), y este apache.
Si es tu caso modifica los puertos y listo.
Si sigues teniendo problemas, con:
journalctl | tail
podrás revisar si existe algún error del tipo:
Syntax error on line 5 of /etc/apache2/sites-enabled/mydomain-wsf.lan.conf
hola, muy bueno el articulo, realice la instalacion sin problemas, pero al querer acceder a myphpadmin no me toma ningun usuario ni contraseña. que puedo hacer para ingresar?.
Saludos
Utiliza las credenciales del root.
Si sigues teniendo problemas puedes obtenerlas en:
/etc/dbconfig-common/phpmyadmin.conf
Perfecto, pude entrar. Muchas gracias!
hola, este solo para saber si me podrías decir como identificar la credencial del root, es que soy nuevo en esto
La credencial del root es la contraseña.
Tal vez te interese revisar este articulo: https://www.sololinux.es/activar-la-cuenta-root-ubuntu/