Contenu du cours
Systèmes d’exploitation (Linux, Windows)
Objectif : Introduction aux systèmes d'exploitation Linux et Windows et gestion basique des systèmes.
0/6
Gestion de versions avec Git
Objectif : Utiliser Git pour gérer des versions de code et collaborer sur des projets.
0/6
Anglais technique
Objectif : S’initier à la lecture et la compréhension de documentation technique en anglais.
0/3
Prérequis – Administrateur d’Infrastructure et Intelligence Artificielle (IA)
À propos de la leçon

Présentation de SSH (Secure Shell)

1. Qu'est-ce que SSH ?

SSH, ou Secure Shell, est un protocole de communication sécurisé utilisé pour accéder et gérer des systèmes informatiques à distance. Il permet aux utilisateurs d'exécuter des commandes, de transférer des fichiers et d'accéder à des interfaces graphiques sur des machines distantes de manière sécurisée.

2. Importance de SSH

  • Sécurité des Connexions : SSH chiffre les données échangées entre le client et le serveur, protégeant ainsi les informations sensibles contre les interceptions.
  • Authentification : Il utilise divers mécanismes d'authentification, notamment les mots de passe et les clés cryptographiques, pour vérifier l'identité des utilisateurs.
  • Accès à Distance : SSH permet aux administrateurs et aux utilisateurs de gérer des serveurs et des systèmes sans avoir besoin d'un accès physique.

3. Fonctionnalités de SSH

  • Chiffrement : Toutes les communications sont chiffrées pour éviter l'espionnage et le vol de données.
  • Transfert de Fichiers Sécurisé : Utilisation de SCP (Secure Copy Protocol) et SFTP (SSH File Transfer Protocol) pour le transfert sécurisé de fichiers.
  • Tunnelisation : SSH permet de créer des tunnels sécurisés pour chiffrer le trafic d'autres applications.
  • Exécution à Distance : Permet l'exécution de commandes sur des serveurs distants comme si l'utilisateur était sur place.

4. Architecture de SSH

SSH fonctionne selon une architecture client-serveur. Voici les principaux composants :

  • Client SSH : Logiciel qui initie la connexion SSH vers un serveur distant. Des exemples incluent PuTTY (pour Windows), OpenSSH (pour Linux et macOS) et d'autres clients tiers.
  • Serveur SSH : Service qui écoute les connexions entrantes sur un port (généralement le port 22) et gère les authentifications et les connexions.

5. Utilisation de SSH

Voici quelques commandes SSH courantes :

  • Se connecter à un serveur :
ssh username@hostname
  • Transférer un fichier avec SCP :
scp localfile.txt username@hostname:/remote/directory/
  • Utiliser SFTP pour un transfert de fichiers interactif :
sftp username@hostname
  • Exécuter une commande à distance :
ssh username@hostname 'ls -la'

6. Meilleures Pratiques de Sécurité pour SSH

  • Utiliser des Clés SSH : Préférer l'authentification par clé publique à l'authentification par mot de passe pour une sécurité accrue.
  • Changer le Port par Défaut : Modifier le port SSH par défaut (22) pour réduire les tentatives de connexion non autorisées.
  • Désactiver l'Accès Root : Interdire la connexion directe du compte root pour éviter les abus.
  • Utiliser des Firewall : Limiter les adresses IP autorisées à se connecter via SSH.

Conclusion

SSH est un outil fondamental pour la gestion sécurisée des systèmes informatiques à distance. En fournissant un accès sécurisé et des fonctionnalités robustes, SSH est indispensable pour les administrateurs systèmes, les développeurs et toute personne ayant besoin d'accéder à des ressources distantes en toute sécurité.

Retour en haut