Come installare LAMP (Apache MySQL PHP) su Ubuntu 18.04 LTS

26 apr 2018 3 min di lettura
Come installare LAMP (Apache MySQL  PHP) su Ubuntu 18.04 LTS
Indice dei contenuti

Come utente abbonato puoi utilizzare lo script per il completamento di questo tutorial con un solo semplice comando. Visita la seguente pagina: Script per Ubuntu 18.04 LTS

Introduzione

LAMP è un gruppo di software open source che viene in genere installato insieme per consentire a un server di ospitare siti Web dinamici e app Web.
LAMP comprende Apache, MySQL, PHP.

In questo tutorial installeremo LAMP su Ubuntu 18.04 LTS.

Se il vostro intento è installare LAMP su di un server in remoto continuare a leggere, altrimenti se volete installare LAMP sul vostro computer locale saltate il primo paragrafo "Connessione al Server" e leggere il successivo.

Connessione al Server

Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno della password per l'autenticazione.

Per connettersi al server come utente root digitare questo comando:

ssh root@IP_DEL_SERVER

Successivamente vi verrà chiesto di inserire la password dell'utente root.

Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare il primo parametro:

ssh VOSTRO_UTENTE@IP_DEL_SERVER

Successivamente vi verrà chiesto di inserire la password del vostro utente.

Siete ora connessi al vostro server, siete pronti per iniziare l'installazione di LAMP.

Installazione Apache

I repository ufficiali dei pacchetti di Ubuntu includono una versione aggiornata di Apache, Possiamo quindi installare i pacchetti necessari usando apt.

Aggiornare l'elenco dei pacchetti di Ubuntu per avere la versione più recente degli elenchi del repository, da terminale:

sudo apt update

Per installare Apache aprire il terminale e dare questi comandi:

sudo apt install apache2

Se il firewall di Ubuntu è attivo dovete abilitare il traffico per Apache:

sudo ufw allow in "Apache Full"

A questo punto il server è pronto con le configurazioni di default.
Basta collegarsi al proprio indirizzo IP pubblico oppure in localhost:

http://localhost

Per riavviare Apache:

sudo service apache2 restart

Per fermare Apache:

sudo service apache2 stop

Per avviare Apache:

sudo service apache2 start

Installare MySQL

È possibile installare MySQL utilizzando il repository ufficiale di Ubuntu con apt.
Installare MySQL:

sudo apt install mysql-server

Mettere in sicurezza MySQL

Avviare uno script di MySQL per modificare alcune impostazioni:

sudo mysql_secure_installation

Vi verrà chiesto di inserire una password per l'utente root, che utilizzerete per accedere al server MySQL.

Inserire "y" per "si" oppure qualsiasi altra lettera per "no".

Vi verrà chiesto se si vuole testare la sicurezza della password.

Successivamente è consigliato premere "y" quindi "si".

  • Rimuovere gli utenti anonimi
  • Disabilitare il login root da remoto
  • Rimuovere il database test
  • Aggiornare le nuove regole

Modificare il metodo di autenticazione

A partire dalla versione 5.7 di MySQL, l'utente root di MySQL è impostato per l'autenticazione tramite il plug-in auth_socket per impostazione di default anziché con una password.

Per utilizzare una password per connettersi a MySQL come utente root è necessario modificare il metodo di autenticazione, da auth_socket a mysql_native_password.

Poiché non è stata impostata ancora nessuna password, è possibile connettersi al server MySQL utilizzando semplicemente il comando mysql oppure sudo mysql se si è loggati come utente normale. Successivamente sarà necessario utilizzare il comando mysql -u root -p da utente root, altrimenti sudo mysql -u root -p da utente normale.

Quindi se siete loggati come utente root, scrivere nel terminale:

mysql

Altrimenti se siete loggati come utente normale con privilegi sudo:

sudo mysql

Per verificare il metodo di autenticazione associato agli account di mysql:

SELECT user,authentication_string,plugin,host FROM mysql.user;

Dovresti ricevere un messaggio simile a questo:

+------------------+-------------------------------------------+-----------------------+-----------+
| 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)

Come potete vedere per l'utente root è impostato di default il metodo di autenticazione auth_socket.

Per utilizzare l'autenticazione con password per l'account root effettuare le seguenti modifiche:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'TUA_PASSWORD';
Attenzione:
Potresti ricevere un messaggio di output simile al seguente: Your password does not satisfy the current policy requirements. Leggi questo tutorial per risolvere il problema.

Effettuare un refresh delle tabelle:

FLUSH PRIVILEGES;

Adesso è possibile verificare il nuovo metodo di autenticazione associato all'utente root:

SELECT user,authentication_string,plugin,host FROM mysql.user;

Dovresti ricevere un messaggio simile a questo:

+------------------+-------------------------------------------+-----------------------+-----------+
| 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)

Uscire dal prompt di MySQL:

exit;

Per effettuare nuovamente il login al server MySQL adesso sarà necessario inserire una password, quindi da terminale:

Se siete loggati come utente root, scrivere nel terminale:

mysql -u root -p

Altrimenti se siete loggati come utente normale con privilegi sudo:

sudo mysql -u root -p

Installazione PHP

Per installare PHP da terminale:

sudo apt install php libapache2-mod-php php-mysql

Riavviare Apache:

sudo service apache2 restart

Verifichiamo la corretta installazione di PHP. Creiamo un file con estensione .php:

sudo nano /var/www/html/info.php

Incollare questo codice:

<?php phpinfo(); ?>

Salvare e chiudere il file.

Collegarsi al proprio indirizzo IP pubblico oppure in localhost:

http://localhost/info.php

Conclusione

L'installazione e configurazione base di un web server Apache con MySQL e PHP su Ubuntu 18.04 LTS. è terminata.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.