Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. Linux
  3. Déploiement et gestion de serveurs
Extrait - Linux De la ligne de commande à l'administration système
Extraits du livre
Linux De la ligne de commande à l'administration système Revenir à la page d'achat du livre

Déploiement et gestion de serveurs

La mise en place d’un serveur LAMP

La mise en place d’un serveur LAMP sur Debian est un processus fondamental pour les développeurs et les administrateurs de systèmes souhaitant héberger des applications web. L’acronyme LAMP désigne un ensemble de logiciels open source qui sont généralement installés ensemble pour permettre à un serveur d’héberger des sites et des applications web dynamiques. Ces logiciels comprennent Linux, Apache, MySQL et PHP.

Linux, dans ce contexte, fait référence au système d’exploitation, et Debian est une distribution populaire de Linux connue pour sa stabilité et sa sécurité. Apache est le serveur web utilisé pour servir les pages web. MySQL est le système de gestion de base de données, qui stocke les données de l’application. Enfin, PHP est le langage de script du côté serveur, utilisé pour développer la logique des applications web.

La mise en place d’un serveur LAMP sur Debian commence par l’installation du système d’exploitation, suivie de l’installation et de la configuration des différents composants du stack LAMP. Chaque étape requiert une attention aux détails, notamment en matière de sécurité et de performance. La configuration de Debian pour utiliser Apache, MySQL et PHP peut varier en fonction des besoins spécifiques de l’application ou du site web à héberger. Une fois que tout est configuré et testé, le serveur LAMP est prêt à héberger des applications web efficacement et de manière sécurisée.

Nous allons voir ensemble étape par étape l’installation et la configuration d’un serveur LAMP prêt à héberger vos sites, pages web et scripts personnalisés.

 Mettez à jour des paquets et upgrade du système :

apt update && apt upgrade 

 Installez les paquets pour LAMP :

apt install apache2 mariadb-server php libapache2-mod-php php-mysql 
images/06EI01.png
images/06EI02.png

Les configurations VirtualHost se situent dans /etc/apache2/sites-available/. Par défaut il existe deux fichiers à savoir 000-default.conf et default-ssl.conf. Nous allons créer ensemble une nouvelle configuration correspondant à un VirtualHost associé à l’URL http://www.mon-serveur-lamp.com.

 Créez un nouveau fichier monsite.conf dans /etc/apache2sites-available/ et ajoutez-y ce contenu :

<VirtualHost *:80> 
    ServerAdmin webmaster@mon-serveur-lamp.com 
    ServerName www.mon-serveur-lamp.com 
    DocumentRoot /var/www/monsite 
 
    <Directory /var/www/monsite> 
        Options Indexes FollowSymLinks 
        AllowOverride All 
        Require all granted 
    </Directory> 
 
    ErrorLog ${APACHE_LOG_DIR}/mon-serveur-lamp-error.log 
    CustomLog ${APACHE_LOG_DIR}/mon-serveur-lamp-access.log combined 
</VirtualHost> 

Voici quelques explications du fichier :

  • <VirtualHost *:80> : cette ligne spécifie que le VirtualHost répond aux requêtes HTTP sur le port 80 pour toutes les adresses IP disponibles sur le serveur.

  • ServerAdmin webmaster@mon-serveur-lamp.com : l’adresse e-mail de l’administrateur du site. Cette information peut être utilisée par Apache pour envoyer des messages d’erreur au webmestre.

  • ServerName www.mon-serveur-lamp.com : le nom de domaine du site web. Apache utilise ce nom pour déterminer quel VirtualHost doit répondre à une requête HTTP.

  • DocumentRoot /var/www/monsite : le répertoire racine du site web. C’est l’endroit où Apache cherchera les fichiers à servir pour ce site

  • <Directory /var/www/html> : cette section permet de spécifier des directives de configuration pour le répertoire racine...

La gestion d’un serveur de fichiers

Les serveurs de fichiers sous Linux jouent un rôle crucial dans le stockage et la gestion de données dans des environnements réseau. Ils permettent aux utilisateurs de partager des fichiers sur un réseau, tout en offrant une variété de fonctionnalités pour la sécurité, l’administration et l’optimisation des performances. 

L’une des premières solutions à considérer est Samba, un logiciel open source qui facilite le partage de fichiers et d’imprimantes entre Linux et Windows. Samba est largement utilisé pour sa compatibilité avec les protocoles SMB (Server Message Block) et CIFS (Common Internet File System) de Microsoft, ce qui en fait une option idéale pour les réseaux mixtes.

Une autre option populaire est NFS (Network File System), spécialement conçu pour les systèmes UNIX et Linux. NFS permet un partage de fichiers efficace et rapide à travers le réseau, avec une configuration relativement simple et une intégration aisée dans les environnements Linux.

Pour ceux qui recherchent des solutions avancées, il y a GlusterFS et Ceph. GlusterFS est un système de fichiers distribué capable de gérer de grandes quantités de données sur plusieurs serveurs, tandis que Ceph offre des capacités de stockage distribué avec une grande flexibilité et une évolutivité massive....

La gestion des serveurs avec SSH

La gestion des serveurs via SSH (Secure Shell) est un domaine essentiel de l’administration des systèmes informatiques, particulièrement dans les environnements où la sécurité et l’efficacité opérationnelle sont des priorités absolues. Dans le contexte actuel où les infrastructures informatiques jouent un rôle central dans le fonctionnement des entreprises et des organisations, la maîtrise de SSH devient un atout incontournable pour tout administrateur système.

SSH est un protocole de communication sécurisé, conçu pour fournir une connexion cryptée entre un client et un serveur. Sa fonction principale est d’assurer la connexion sécurisée à des serveurs distants pour exécuter des commandes, gérer des configurations et transférer des fichiers. L’importance de SSH réside dans sa capacité à sécuriser les communications sur des réseaux non sécurisés, comme Internet, en évitant les écoutes clandestines, les attaques de type « man-in-the-middle » et d’autres menaces de sécurité.

L’usage de SSH est diversifié et s’étend bien au-delà de la simple connexion à distance. Il permet l’automatisation des tâches administratives, la gestion centralisée des serveurs, et même la configuration de tunnels pour d’autres protocoles, rendant possible la sécurisation de services qui ne sont pas sécurisés par défaut. SSH utilise des méthodes d’authentification avancées, comme les clés publiques/privées, offrant une sécurité renforcée par rapport aux mots de passe traditionnels.

En outre, SSH joue un rôle crucial dans la mise en œuvre des politiques de sécurité informatique. L’administrateur peut configurer SSH pour limiter les accès en fonction des utilisateurs, des adresses IP, ou même exiger une authentification multi-facteurs, augmentant ainsi significativement le niveau de sécurité. De plus, SSH offre...