Recherche de site Web

Configuration d’un serveur LAMP sur Ubuntu 24.04


Dans ce tutoriel détaillé, nous allons vous guider tout au long du processus de configuration d’un serveur LAMP (Linux, Apache, MySQL, PHP) sur Ubuntu 24.04. Cette configuration est cruciale pour l’hébergement de sites Web dynamiques et d’applications Web. Nous couvrirons tout, de l’installation des packages nécessaires à la sécurisation de votre installation MySQL et au test de votre configuration.

Dans ce tutoriel, vous allez apprendre :

  • Comment installer Apache, MySQL et PHP sur Ubuntu 24.04
  • Étapes pour démarrer et activer automatiquement les services après le redémarrage
  • Comment sécuriser votre installation MySQL
  • Création et test de scripts PHP pour vérifier les fonctionnalités d’Apache et de MySQL
  • Configuration d’un utilisateur et d’une base de données pour MySQL
  • Étapes facultatives pour la mise en œuvre de SSL avec Let’s Encrypt et la configuration d’un pare-feu

Comprendre la pile LAMP sur Ubuntu

Qu’est-ce que LAMP ?

LAMP est l’acronyme d’un ensemble de logiciels libres et open-source composés à l’origine de Linux (système d’exploitation), Apache (serveur Web), MySQL (logiciel de base de données) et PHP (langage de programmation). Cette combinaison puissante est largement utilisée pour la création et l’hébergement de sites Web et d’applications Web. Au fil du temps, MySQL et PHP peuvent être remplacés par des logiciels similaires comme MariaDB ou PostgreSQL pour la base de données, et Perl ou Python pour la programmation.

Pourquoi Ubuntu pour LAMP ?

Ubuntu, une distribution Linux populaire, est préférée pour sa facilité d’utilisation, ses fonctionnalités de sécurité et son support communautaire robuste. Son cycle de publication régulier garantit des logiciels mis à jour et sécurisés, ce qui en fait un choix idéal pour l’hébergement d’un serveur LAMP. La compatibilité d’Ubuntu avec une large gamme de matériel et de logiciels en fait une plate-forme polyvalente pour les développeurs et les administrateurs système.

Principaux avantages de LAMP sur Ubuntu

  • Nature de l’Open Source : Tous les composants de la pile LAMP sont open-source, ce qui garantit l’absence de frais de licence et un environnement transparent et personnalisable.
  • flexibilité: La pile LAMP offre la possibilité de modifier et d’adapter le serveur en fonction des besoins spécifiques, en bénéficiant de la vaste gamme de modules PHP et Apache disponibles.
  • Communauté et soutien : Ubuntu et les composants de la pile LAMP bénéficient d’un support communautaire étendu, offrant une multitude de documentation, de forums et de tutoriels pour vous aider.
  • Fiabilité et performance : LAMP sur Ubuntu est connu pour sa stabilité et ses performances, capable de gérer efficacement de grands volumes de trafic Web.

Avec une compréhension de base de ce qu’est LAMP et pourquoi Ubuntu est un choix préféré, passons à la configuration de la pile LAMP sur votre système Ubuntu 24.04.

Configuration étape par étape du serveur LAMP sur Ubuntu 24.04

  1. Mise à jour des index de package et installation des packages : commencez par mettre à jour vos index de package pour vous assurer d’obtenir la dernière version des packages.

    sudo apt update
    sudo apt install apache2 php-mysql libapache2-mod-php mysql-server
    
  2. Cette commande installe le serveur Web Apache, PHP, MySQL et les extensions PHP nécessaires.

  3. Démarrage et activation des services : assurez-vous que les services MySQL et Apache2 démarrent automatiquement au redémarrage du système.

    sudo systemctl enable --now mysql
    sudo systemctl enable --now apache2
    
  4. Sécurisation de l’installation MySQL : sécurisez votre installation MySQL pour une sécurité renforcée.

    sudo mysql_secure_installation
    
  5. Suivez les instructions à l’écran pour configurer un mot de passe root, supprimer les utilisateurs anonymes, interdire la connexion root à distance et supprimer les bases de données de test.

  6. Test du traitement PHP : créez un fichier PHP pour tester si Apache traite correctement les fichiers PHP.

    <?php phpinfo(); ?>
    

    Créez un fichier nommé info.php dans le répertoire /var/www/html/ avec le contenu ci-dessus. Accédez à http://localhost/info.php dans votre navigateur. Si PHP est correctement configuré, cette page devrait afficher des informations détaillées sur votre configuration PHP.

  7. Configuration de l’utilisateur et de la base de données MySQL : configurez un utilisateur et une base de données dédiés pour vos applications.

    sudo mysql
    mysql> CREATE DATABASE linuxconfig;
    mysql> CREATE USER `admin`@`localhost` IDENTIFIED WITH mysql_native_password BY 'yourpass';
    mysql> GRANT ALL ON linuxconfig.* TO `admin`@`localhost`;
    mysql> FLUSH PRIVILEGES;
    mysql> exit
    
  8. Cette étape crée une nouvelle base de données nommée 'linuxconfig' et un nouvel utilisateur 'admin' avec tous les privilèges sur la base de données nouvellement créée.

  9. Test de la connexion à la base de données MySQL : vérifiez la connexion à votre base de données MySQL.

    <?php $conn = new mysqli("localhost", "admin", "yourpass", "linuxconfig"); if ($conn->connect_error) { die("ERROR: Unable to connect: " . $conn->connect_error); } echo 'Connected to the database.
    '; $conn->close(); ?>
    

    Créez un fichier nommé mysql-test.php dans le répertoire /var/www/html/ avec le contenu ci-dessus. L’accès à http://localhost/mysql-test.php dans votre navigateur devrait afficher un message confirmant la connexion réussie à la base de données.

  10. Mise en œuvre de SSL avec Let’s Encrypt (facultatif) : Sécurisez votre site Web avec un certificat SSL.

    sudo apt install certbot python3-certbot-apache
    certbot --apache
    
  11. Ces commandes installent Certbot et obtiennent un certificat SSL gratuit de Let’s Encrypt, en configurant automatiquement Apache pour utiliser ce certificat. Notez que cela suppose que vous avez déjà correctement configuré votre DNS et votre nom de domaine complet (FQDN) pour votre serveur.

  12. Configuration du pare-feu (facultatif) : activez un pare-feu pour autoriser le trafic HTTP et HTTPS, et SSH si nécessaire.

    sudo ufw allow in "Apache Full"
    sudo ufw allow in "ssh"
    
  13. Cette étape configure le pare-feu simple (UFW) pour autoriser le trafic entrant pour les connexions Apache (ports 80 et 443) et SSH.

Conclusion

En suivant ces étapes, vous avez réussi à configurer un serveur LAMP sur Ubuntu 24.04. Ce serveur est maintenant prêt à héberger des sites Web et des applications Web, offrant un environnement robuste et sécurisé pour le développement et le déploiement Web.

Foire aux questions sur la configuration d’un serveur LAMP sur Ubuntu 24.04

  1. Quelle est la configuration minimale requise pour l’installation d’un serveur LAMP sur Ubuntu 24.04 ?

    Ubuntu 24.04 nécessite au moins 512 Mo de RAM, un processeur 1 GHz et 10 Go d’espace disque. Cependant, pour de meilleures performances, en particulier pour une pile LAMP, 1 Go de RAM et un processeur double cœur sont recommandés.

  2. Puis-je utiliser MariaDB au lieu de MySQL avec la pile LAMP ?

    Oui, MariaDB est un remplacement immédiat de MySQL et peut être utilisé avec la pile LAMP sur Ubuntu 24.04. Il offre des fonctionnalités similaires et est souvent considéré pour ses améliorations de performances.

  3. Est-il possible d’installer PHP 8.x sur Ubuntu 24.04 pour la pile LAMP ?

    Oui, vous pouvez installer PHP 8.x sur Ubuntu 24.04. Vous devrez peut-être ajouter un dépôt tiers pour obtenir la dernière version de PHP.

  4. Comment puis-je mettre à jour PHP vers une version plus récente sur mon serveur Ubuntu LAMP ?

    Pour mettre à jour PHP, ajoutez un référentiel contenant la version la plus récente de PHP, mettez à jour les listes de paquets, puis mettez à niveau PHP à l’aide du gestionnaire de paquets.

  5. Puis-je héberger plusieurs sites Web sur un seul serveur LAMP ?

    Oui, vous pouvez héberger plusieurs sites Web sur un seul serveur LAMP à l’aide d’hôtes virtuels dans Apache. Chaque site peut être configuré avec son propre domaine et son propre contenu.

  6. Comment puis-je sauvegarder les données de mon serveur LAMP ?

    Sauvegardez les données de votre serveur LAMP en exportant des bases de données à l’aide d’outils tels que mysqldump et en copiant régulièrement les fichiers de votre site Web et vos fichiers de configuration.

  7. Comment puis-je améliorer la sécurité de mon serveur LAMP ?

    Améliorez la sécurité en configurant des pare-feu, en installant des certificats SSL, en mettant régulièrement à jour les logiciels, en utilisant des mots de passe forts et en mettant en œuvre les meilleures pratiques de sécurité pour PHP et MySQL.

  8. Que dois-je faire si je rencontre des erreurs lors du processus d’installation de LAMP ?

    Si vous rencontrez des erreurs, recherchez des messages d’erreur spécifiques dans la sortie du terminal. Consultez les forums officiels ou la documentation d’Ubuntu pour obtenir des conseils de dépannage.

  9. Comment puis-je surveiller les performances de mon serveur LAMP ?

    Surveillez les performances à l’aide d’outils tels que top, htop ou Apache’s mod_status. Vérifiez régulièrement les journaux pour détecter les erreurs ou les activités inhabituelles.

  10. Puis-je utiliser un autre serveur web comme Nginx au lieu d’Apache ?

    Oui, vous pouvez utiliser Nginx au lieu d’Apache. Cela changerait la pile en LEMP (Linux, Nginx, MySQL, PHP). Nginx est connu pour ses performances et son efficacité.

  11. Comment configurer l’envoi d’e-mails depuis mon serveur LAMP ?

    Configurez l’envoi d’e-mails en installant et en configurant un MTA (Mail Transfer Agent) comme Postfix. Assurez-vous de le configurer correctement pour éviter d’être utilisé pour le spam.

  12. Est-il nécessaire de redémarrer Apache après avoir installé les certificats SSL ?

    Oui, vous devez redémarrer Apache après avoir installé les certificats SSL pour que les modifications prennent effet.

  13. Comment puis-je ajouter des extensions PHP supplémentaires à ma configuration LAMP ?

    Ajoutez des extensions PHP en les installant via le gestionnaire de paquets puis en les activant dans votre configuration PHP si nécessaire.

Articles connexes: