Les bases indispensables

Comprendre les bases de l’administration Linux et configurer un serveur pour l’application TaskManagerPro

Module 1 : Les bases indispensables


1.1. SystĂšmes d'exploitation : Linux

Objectif : Comprendre les bases de l’administration Linux et configurer un serveur pour l’application TaskManagerPro.


Cours : Commandes Linux essentielles

Gestion des fichiers et répertoires :
  • Lister des fichiers : ls, ls -l, ls -a
  • Changer de rĂ©pertoire : cd /chemin
  • Copier des fichiers : cp source destination
  • DĂ©placer des fichiers : mv source destination
  • Supprimer des fichiers : rm fichier, rm -r repertoire
  • CrĂ©er des fichiers et dossiers : touch fichier, mkdir repertoire
  • Lire des fichiers : cat fichier, less fichier
Gestion des permissions :
  • Changer les permissions : chmod (Exemple : chmod 755 fichier)
  • Changer le propriĂ©taire : chown (Exemple : chown user:group fichier)
Gestion des processus :
  • Lister les processus : ps aux, top
  • ArrĂȘter un processus : kill PID
  • ArrĂȘter un processus par nom : pkill nom
Services et systemd :
  • DĂ©marrer un service : sudo systemctl start nom_service
  • ArrĂȘter un service : sudo systemctl stop nom_service
  • Activer un service au dĂ©marrage : sudo systemctl enable nom_service
  • DĂ©sactiver un service : sudo systemctl disable nom_service

Exercice pratique 1 : Installer et configurer le serveur Linux

Scénario : Vous allez préparer un serveur Linux pour accueillir TaskManagerPro. Voici les étapes à suivre :

  1. Connexion au serveur :

    • Connectez-vous Ă  un serveur Linux via SSH :
      ssh user@adresse_ip
  2. Mise Ă  jour du systĂšme :

    • Assurez-vous que le systĂšme est Ă  jour :
      sudo apt update && sudo apt upgrade -y
  3. Installer Node.js et npm :

    • Ajoutez le dĂ©pĂŽt Node.js officiel :
      curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
    • Installez Node.js :
      sudo apt install -y nodejs
    • VĂ©rifiez l’installation :
      node -v npm -v
  4. Installer Git :

    • Installez l’outil Git :
      sudo apt install -y git
    • VĂ©rifiez l’installation :
      git --version
  5. Cloner le dépÎt TaskManagerPro :

    • Rendez-vous dans le rĂ©pertoire /var/www :
      cd /var/www
    • Clonez le dĂ©pĂŽt :
      sudo git clone https://github.com/TechNovaCorp/TaskManagerPro.git
  6. Installer les dépendances Node.js :

    • AccĂ©dez au rĂ©pertoire backend du projet :
      cd TaskManagerPro/backend
    • Installez les dĂ©pendances :
      npm install
  7. Configurer et lancer l’application :

    • CrĂ©ez un fichier .env Ă  partir de l’exemple fourni :
      cp .env.example .env
    • Modifiez les paramĂštres dans le fichier .env si nĂ©cessaire.
    • Lancez l’application :
      npm start
    • VĂ©rifiez que l’application fonctionne en accĂ©dant Ă  l’adresse IP du serveur dans un navigateur.

1.2. Notions de réseaux

Bases des protocoles :
  • TCP/IP : Protocole de communication pour Ă©tablir des connexions sur le rĂ©seau.
  • DNS : Traduit les noms de domaine (ex. www.google.com) en adresses IP.
  • SSH : Protocole pour accĂ©der Ă  distance Ă  un serveur.
Configurer une connexion SSH sécurisée :
  1. Générer une clé SSH sur votre machine locale :
    ssh-keygen -t rsa -b 4096
  2. Ajouter votre clé publique au serveur :
    • Copiez la clĂ© publique sur le serveur :
      ssh-copy-id user@adresse_ip
  3. Vérifier la connexion sans mot de passe :
    ssh user@adresse_ip

Exercice pratique 2 : Configurer un accĂšs SFTP

Scénario : Vous devez transférer les fichiers de configuration de votre application TaskManagerPro.

  1. Installer un serveur SFTP :

    • Assurez-vous que le service SSH est actif (OpenSSH gĂšre aussi SFTP).
      sudo systemctl status ssh
  2. Transférer des fichiers avec SFTP :

    • Connectez-vous en SFTP :
      sftp user@adresse_ip
    • TransfĂ©rez un fichier depuis votre machine locale :
      put chemin_du_fichier
    • Quittez la session SFTP :
      bye

📘 Quiz : Teste tes connaissances !

đŸ–„ïž Terminal Trainer : Pratique tes commandes !