GNU/Linux >> Tutoriels Linux >  >> Linux

Comment installer LAMP Apache, MySQL, PHP dans Ubuntu 22.04

Comment installer LAMP Apache, MySQL, PHP dans Ubuntu 22.04. Dans ce guide, vous apprendrez à installer Apache2, MySQL et PHP 8.1.

Vous installerez également certaines extensions PHP courantes et ajusterez les configurations PHP. Installez PhpMyAdmin et enfin vous sécuriserez votre configuration avec Let's Encrypt SSL et configurerez la redirection HTTPS.

Cette configuration est testée sur Google Cloud, elle fonctionnera donc sur tous les services d'hébergement cloud comme AWS, Azure ou tout VPS ou tout serveur dédié exécutant Ubuntu 22.04.

Prérequis

  • Accès root à votre serveur ou à un utilisateur sudo.

Étape 1 :Initialisation de la configuration

Commencez par mettre à jour les packages vers la dernière version disponible à l'aide de la commande suivante.

sudo apt update
sudo apt upgrade

Une fois que vous avez mis à jour la configuration, vous pouvez démarrer la configuration.

Étape 2 :Installez Apache

Installez Apache à l'aide de la commande suivante.

sudo apt install apache2

Cela installera apache2 et toutes les dépendances requises.

Étape 3 :Configurer le pare-feu

Vous pouvez désormais configurer un pare-feu non compliqué (UFW) avec Apache pour autoriser l'accès public sur les ports Web par défaut pour HTTP et HTTPS

sudo ufw app list

Vous verrez toutes les applications répertoriées.

Output
Available applications:
Apache
Apache Full
Apache Secure
OpenSSH
  • Apache :Ce profil ouvre le port 80 (trafic Web normal et non chiffré)
  • Apache complet :Ce profil ouvre les deux ports 80 (trafic Web normal et non chiffré) et le port 443 (trafic crypté TLS/SSL)
  • Apache sécurisé :Ce profil ouvre uniquement le port 443 (trafic crypté TLS/SSL)
  • OpenSSH :Ce profil ouvre le port 22 pour l'accès SSH.

Si vous n'utilisez pas SSL, vous devez activer uniquement le profil Apache.

Nous allons maintenant activer Apache Full.

sudo ufw allow OpenSSH
sudo ufw allow 'Apache Full'
sudo ufw enable

Avec cette commande, vous pouvez afficher l'état d'UFW.

sudo ufw status

Vous verrez la sortie comme suit.

Output
Status: active
To Action From
-- ------ ----
Apache Full ALLOW Anywhere
OpenSSH ALLOW Anywhere
Apache Full (v6) ALLOW Anywhere (v6)
OpenSSH (v6) ALLOW Anywhere (v6)

Étape :4 Vérifier l'installation d'Apache

Comme nous avons installé Apache à l'étape 2, il devrait être démarré automatiquement et déjà opérationnel.

Vérifiez la version d'Apache à l'aide de la commande ci-dessous

sudo apachectl -v
Output
Server version: Apache/2.4.52 (Ubuntu)
Server built:   2022-03-25T00:35:40

Chaque processus dans Apache est géré avec le systemctl commande. Vérifiez l'état d'Apache avec la commande suivante.

sudo systemctl status apache2
Output
● apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2022-04-29 00:34:49 UTC; 2min 52s ago
       Docs: https://httpd.apache.org/docs/2.4/
   Main PID: 12782 (apache2)
      Tasks: 55 (limit: 1151)
     Memory: 5.1M
        CPU: 52ms
     CGroup: /system.slice/apache2.service
             ├─12782 /usr/sbin/apache2 -k start
             ├─12784 /usr/sbin/apache2 -k start
             └─12785 /usr/sbin/apache2 -k start

Nous avons maintenant Apache installé et configuré le pare-feu.

Étape 5 :Installer MySQL

Dans Ubuntu 22.04, MySQL 8 est inclus par défaut dans les référentiels Jammy Jellyfish, vous pouvez donc l'installer facilement en utilisant le apt install commande.

sudo apt install mysql-server

Une fois l'installation terminée, le service MySQL démarrera automatiquement. Pour vérifier que le serveur MySQL est en cours d'exécution, tapez :

sudo service mysql status

Le résultat doit indiquer que le service est activé et en cours d'exécution :

● mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2022-04-29 00:38:45 UTC; 11s ago
    Process: 13836 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, statu>
   Main PID: 13844 (mysqld)
     Status: "Server is operational"
      Tasks: 38 (limit: 1151)
     Memory: 351.4M
        CPU: 1.043s
     CGroup: /system.slice/mysql.service
             └─13844 /usr/sbin/mysqld

Vérifiez la version de MySQl à l'aide de la commande ci-dessous.

sudo mysql -V
Output
mysql  Ver 8.0.28-0ubuntu4 for Linux on x86_64 ((Ubuntu))

Étape 6 :Sécuriser MySQL

L'installation de MySQL est livrée avec un script nommé mysql_secure_installation qui vous permet d'améliorer facilement la sécurité du serveur MySQL.

sudo mysql_secure_installation

Il vous sera demandé de configurer le VALIDATE PASSWORD PLUGIN qui est utilisé pour tester la force des mots de passe des utilisateurs MySQL et améliorer la sécurité.

Appuyez sur y si vous souhaitez configurer le plug-in de validation de mot de passe ou toute autre clé pour passer à l'étape suivante.

Il existe trois niveaux de politique de validation des mots de passe :faible, moyen et fort.

Entrez 2 pour une validation de mot de passe fort.

À l'invite suivante, il vous sera demandé de définir un mot de passe pour l'utilisateur racine MySQL.

Si vous configurez le plugin de validation de mot de passe, le script vous montrera la force de votre nouveau mot de passe. Tapez y pour confirmer le mot de passe.

Ensuite, il vous sera demandé de supprimer l'utilisateur anonyme, de restreindre l'accès de l'utilisateur root à la machine locale, de supprimer la base de données de test et de recharger les tables de privilèges. Vous devez répondre y à toutes les questions.

Étape 7 :Installez PHP

Par défaut, Ubuntu 22.04 a le dernier référentiel PHP 8.1 ajouté. Vous pouvez donc installer PHP à l'aide de la commande suivante.

sudo apt install php8.1-fpm php8.1 libapache2-mod-php8.1 php8.1-common php8.1-mysql php8.1-xml php8.1-xmlrpc php8.1-curl php8.1-gd php8.1-imagick php8.1-cli php8.1-imap php8.1-mbstring php8.1-opcache php8.1-soap php8.1-zip php8.1-intl php8.1-bcmath unzip -y

Une fois PHP installé, vous pouvez vérifier la version à l'aide de la commande suivante.

php -v
Output
PHP 8.1.5 (cli) (built: Apr  7 2022 17:46:26) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.5, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.5, Copyright (c), by Zend Technologies

Étape 8 :Configurer PHP

Maintenant, nous configurons PHP pour les applications Web en modifiant certaines valeurs dans php.ini fichier.

Pour PHP 7.4 avec Apache, le php.ini l'emplacement sera dans le répertoire suivant.

sudo nano /etc/php/8.1/apache2/php.ini

Tapez F6 pour la recherche dans l'éditeur et mettez à jour les valeurs suivantes pour de meilleures performances.

upload_max_filesize = 32M 
post_max_size = 48M
memory_limit = 256M
max_execution_time = 600
max_input_vars = 3000
max_input_time = 1000

Une fois que vous avez modifié vos paramètres PHP, vous devez redémarrer votre Apache pour que les modifications prennent effet.

Préparez-vous à un poste de professionnel des technologies de l'information avec le système d'exploitation Linux

Étape 9 :Configurer Apache

Désactivez la configuration Apache par défaut.

sudo a2dissite 000-default

Créez des répertoires de sites Web.

sudo mkdir -p /var/www/html/domainname/public

Configurez les autorisations correctes.

sudo chmod -R 755 /var/www/html/domainname
sudo chown -R www-data:www-data /var/www/html/domainname

Créez une nouvelle configuration d'hôte virtuel.

sudo nano /etc/apache2/sites-available/domainname.conf

Collez les configurations suivantes dans le nouveau fichier.

<VirtualHost *:80>
     ServerAdmin [email protected]
     ServerName domainname.com
     ServerAlias www.domainname.com

     DocumentRoot /var/www/html/domainname/public

     <Directory /var/www/html/domainname/public>
         Options Indexes FollowSymLinks
         AllowOverride All
         Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/error.log 
     CustomLog ${APACHE_LOG_DIR}/access.log combined 
 </VirtualHost>

Activez la nouvelle configuration.

sudo a2ensite domainname.conf

Étape 10 :Installez PhpMyAdmin

PhpMyAdmin est un outil pour gérer facilement la base de données MySQL. Vous pouvez l'installer en utilisant la commande ci-dessous.

sudo apt install phpmyadmin

Copiez la configuration de PhpMyAdmin pour Apache.

sudo cp /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf

Activez la configuration.

sudo a2enconf phpmyadmin.conf

Redémarrez Apache.

sudo service apache2 restart

Maintenant que PhpMyAdmin est installé, cela peut être accessible avec cette route yourdomain.com/phpmyadmin .

Étape 11 :Installez Let's Encrypt SSL

HTTPS est un protocole de communication sécurisée entre un serveur (instance) et un client (navigateur Web). Grâce à l'introduction de Let's Encrypt, qui fournit des certificats SSL gratuits, HTTPS est adopté par tout le monde et donne également confiance à votre public.

sudo apt install python3-certbot-apache

Maintenant que nous avons installé Certbot by Let's Encrypt pour Ubuntu 22.04, exécutez cette commande pour recevoir vos certificats.

sudo certbot --apache --agree-tos --redirect -m [email protected] -d domainname.com -d www.domainname.com

Cette commande installera Free SSL, configurera la redirection vers HTTPS et redémarrera le serveur Apache.

Étape 12 : Renouvellement du certificat SSL

Les certificats fournis par Let's Encrypt sont valides pendant 90 jours seulement, vous devez donc les renouveler souvent. Testons donc la fonctionnalité de renouvellement à l'aide de la commande suivante.

sudo certbot renew --dry-run

Cette commande testera l'expiration du certificat et configurera la fonction de renouvellement automatique.

Étape 13 :Testez la configuration

Une fois que vous avez effectué les étapes nécessaires, vous pouvez créer un nouveau fichier PHP de test dans votre répertoire Web.

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

Collez le code ci-dessous dans le fichier.

<?php phpinfo();

Enregistrez le fichier.

Maintenant, allez-y et vérifiez votre nom de domaine avec le info.php dans l'url (domainname.com/info.php ).

Vous verrez que votre domaine a été redirigé vers HTTPS et verrez les détails des informations PHP.

Devenez un professionnel AWS certifié avec ce cours facile à apprendre maintenant.

Conclusion

Vous avez maintenant appris à installer la pile LAMP Ubuntu 22.04. Vous avez également appris à installer et à configurer PhpMyAdmin et à sécuriser votre installation à l'aide de Let's Encrypt SSL.

Merci pour votre temps. Si vous rencontrez un problème ou si vous avez des commentaires, veuillez laisser un commentaire ci-dessous.


Linux
  1. Comment installer Apache sur Ubuntu 18.04

  2. Comment installer Apache, MySQL, PHP (LAMP) sur Ubuntu 16.04 LTS

  3. Comment installer LAMP sur Ubuntu 16.04

  4. Comment installer LAMP Apache, MySQL, PHP sur Debian 11

  5. Comment installer LAMP sur Ubuntu 16.04

Comment installer LAMP sur Ubuntu 14.04

Comment installer LAMP sur Ubuntu 15.10

Comment installer LAMP sur un serveur Ubuntu 15.04

Comment installer LAMP sur Ubuntu 15.10 (Linux, Apache, MySQL et PHP)

Comment installer Apache, MySQL, PHP (LAMP) sur Arch Linux

Comment installer la pile Apache, MySQL, PHP (LAMP) sur Ubuntu 16.04