0% ont trouvé ce document utile (0 vote)
18 vues13 pages

Control 3 Linux

Le document fournit une vue d'ensemble sur plusieurs protocoles et services, notamment FTP, SSH, firewalls, et OpenLDAP. Il décrit le fonctionnement, l'installation, et la configuration de ces technologies sur CentOS 8, ainsi que leurs avantages et limitations. Des instructions pratiques et des bonnes pratiques de sécurité sont également incluses pour chaque service.

Transféré par

earthhunter1523
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
18 vues13 pages

Control 3 Linux

Le document fournit une vue d'ensemble sur plusieurs protocoles et services, notamment FTP, SSH, firewalls, et OpenLDAP. Il décrit le fonctionnement, l'installation, et la configuration de ces technologies sur CentOS 8, ainsi que leurs avantages et limitations. Des instructions pratiques et des bonnes pratiques de sécurité sont également incluses pour chaque service.

Transféré par

earthhunter1523
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

FTP

1. Qu'est-ce que le FTP ?

 FTP (File Transfer Protocol) : Protocole utilisé pour transférer des fichiers entre un
client et un serveur sur un réseau TCP/IP.

 Ports utilisés :

o Port 21 : Pour les commandes (canal de contrôle).

o Port 20 : Pour les données en mode actif (historiquement).

2. Modes de fonctionnement FTP

Mode Actif

 Fonctionnement :

o Le client ouvre un port aléatoire (supérieur à 1024) et informe le serveur.

o Le serveur se connecte au client sur ce port pour transférer les données.

o Le serveur utilise le port 20 pour les données.

 Problème :

o Si le client est derrière un pare-feu ou un NAT, la connexion peut être bloquée


car le pare-feu refuse les connexions entrantes.

Mode Passif (PASV)

 Fonctionnement :

o Le client envoie la commande PASV au serveur.

o Le serveur répond avec un port aléatoire (supérieur à 1024) sur lequel il


écoute.

o Le client se connecte à ce port pour transférer les données.

 Avantage :

o Le client initie toutes les connexions, ce qui évite les problèmes de pare-feu.

3. Différences entre mode actif et passif


Mode Qui initie la connexion de données ? Port utilisé pour les données

Actif Serveur → Client Port 20 (serveur) → Port aléatoire (client)

Passif Client → Serveur Port aléatoire (serveur)

4. Configuration d'un serveur FTP sur CentOS 8

Étapes clés :

1. Désactiver le pare-feu :

systemctl stop [Link]

2. Installer les paquets nécessaires :

rpm -ivh vsftpd-3.0.2-22.el7.x86_64.rpm

rpm -ivh ftp-0.17-67.el7.x86_64.rpm

3. Démarrer le service :

systemctl restart vsftpd

4. Configurer le fichier [Link] : /etc/vsftpd/[Link]

o Exemple de configurations :

 local_umask=022 : Définit les droits par défaut des fichiers.

 write_enable=YES : Autorise l'écriture.

 chroot_local_user=YES : Restreint les utilisateurs à leur répertoire.

 max_clients=2 : Limite le nombre de connexions simultanées.

 anonymous_enable=YES : Active le compte anonyme.

5. Se connecter au serveur FTP :

ftp [Link]

o Télécharger un fichier : get [Link]

o Uploader un fichier : put [Link]

6. Gestion des utilisateurs anonymes :

o Activer l'upload pour les anonymes :

anon_upload_enable=YES

o Autoriser la création de répertoires :


anon_mkdir_write_enable=YES

SSH

1. À quoi sert SSH ?

SSH permet :

 Accès distant sécurisé : Se connecter à un serveur ou une machine distante via un


terminal.

 Exécution de commandes : Exécuter des commandes sur une machine distante.

 Transfert de fichiers sécurisé : Utiliser des outils comme scp ou sftp pour transférer
des fichiers.

 Tunneling : Créer des tunnels sécurisés pour rediriger du trafic réseau.

 Gestion de serveurs : Administrer des serveurs distants de manière sécurisée.

SSH chiffre toutes les communications, ce qui le rend plus sûr que des protocoles non chiffrés
comme Telnet ou FTP.

2. Installation de SSH sur CentOS 8

Sur le serveur

1. Vérifier si SSH est déjà installé :


SSH est généralement préinstallé sur CentOS 8. Vous pouvez vérifier avec :

ssh -V

Si ce n'est pas installé, installez-le avec :

2. Installer le serveur SSH (sshd) :

sudo dnf install openssh-server

3. Démarrer et activer le service SSH :

sudo systemctl start sshd

sudo systemctl enable sshd

4. Vérifier que le service fonctionne :

sudo systemctl status sshd

3. Configuration du serveur SSH sur CentOS 8


Le fichier de configuration du serveur SSH se trouve dans :

/etc/ssh/sshd_config

Étapes pour configurer le serveur SSH :

1. Ouvrez le fichier de configuration avec un éditeur de texte :

sudo vim /etc/ssh/sshd_config

2. Modifiez les paramètres suivants selon vos besoins :

o Changer le port SSH (par défaut : 22) :

Port 2222

o Désactiver la connexion root :

PermitRootLogin no

o Autoriser/désactiver l'authentification par mot de passe :

PasswordAuthentication no # Pour n'autoriser que les clés SSH

o Limiter les utilisateurs autorisés :

AllowUsers user1 user2

o Activer/désactiver X11 Forwarding (pour les interfaces graphiques) :

X11Forwarding yes

3. Sauvegardez et quittez l'éditeur.

4. Redémarrez le service SSH pour appliquer les changements :

sudo systemctl restart sshd

4. Configuration du client SSH sur CentOS 8

Connexion basique avec mot de passe

Pour vous connecter à un serveur SSH depuis un client, utilisez la commande suivante :

ssh utilisateur@adresse_du_serveur

Exemple :

ssh user1@[Link]

Utilisation des clés SSH (méthode recommandée)


1. Générer une paire de clés SSH (sur le client) :

ssh-keygen -t rsa -b 4096

o Appuyez sur Entrée pour accepter l'emplacement par défaut (~/.ssh/id_rsa).

o Entrez une passphrase (optionnelle mais recommandée).

2. Copier la clé publique sur le serveur :

ssh-copy-id utilisateur@adresse_du_serveur

Exemple :

ssh-copy-id user1@[Link]

3. Se connecter sans mot de passe :

ssh user1@[Link]

5. Sécurité SSH sur CentOS 8

 Changer le port SSH : Évitez d'utiliser le port 22 par défaut.

 Désactiver l'authentification par mot de passe : Utilisez uniquement des clés SSH.

 Limiter les utilisateurs autorisés : Utilisez AllowUsers ou AllowGroups.

 Utiliser Fail2Ban : Pour bloquer les tentatives de connexion répétées.

6. Commandes utiles pour gérer SSH sur CentOS 8

 Vérifier le statut du service SSH :

sudo systemctl status sshd

 Redémarrer le service SSH :

sudo systemctl restart sshd

 Activer SSH au démarrage :

sudo systemctl enable sshd


firewall

1. À quoi sert un pare-feu (firewall) ?

Un pare-feu permet :

 Filtrer le trafic réseau : Autoriser ou bloquer les connexions entrantes et sortantes.

 Sécuriser le serveur : Protéger contre les attaques externes.

 Gérer les ports : Ouvrir ou fermer des ports spécifiques pour des services comme
SSH, HTTP, FTP, etc.

2. Vérifier l'état de firewalld

1. Vérifier si firewalld est installé :


Firewalld est généralement préinstallé sur CentOS 8. Vous pouvez vérifier avec :

sudo dnf list installed firewalld

2. Vérifier l'état du service firewalld :

sudo systemctl status firewalld

3. Démarrer et activer firewalld (si ce n'est pas déjà fait) :

sudo systemctl start firewalld

sudo systemctl enable firewalld

3. Commandes de base pour gérer firewalld

a. Vérifier les zones actives

Les zones définissent le niveau de confiance pour les connexions réseau. Pour voir les zones
actives :

sudo firewall-cmd --get-active-zones

b. Voir les règles d'une zone

Pour afficher les règles d'une zone spécifique (par défaut, la zone est public) :

sudo firewall-cmd --zone=public --list-all

c. Ajouter un service ou un port


 Ajouter un service (par exemple, SSH) :

sudo firewall-cmd --zone=public --add-service=ssh --permanent

Le paramètre --permanent rend la règle persistante après un redémarrage.

 Ajouter un port (par exemple, le port 8080) :

sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent

d. Supprimer un service ou un port

 Supprimer un service :

sudo firewall-cmd --zone=public --remove-service=ssh --permanent

 Supprimer un port :

sudo firewall-cmd --zone=public --remove-port=8080/tcp --permanent

e. Recharger les règles

Après avoir modifié les règles, rechargez le pare-feu pour appliquer les changements :

sudo firewall-cmd --reload

d. Bloquer une adresse IP

Pour bloquer une adresse IP spécifique :

sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source


address="[Link]" reject' --permanent

sudo firewall-cmd --reload

5. Gestion des zones

a. Changer la zone par défaut

Pour changer la zone par défaut (par exemple, pour dmz) :

sudo firewall-cmd --set-default-zone=dmz

b. Ajouter une interface à une zone

Pour associer une interface réseau (par exemple, eth0) à une zone spécifique :

sudo firewall-cmd --zone=dmz --add-interface=eth0 --permanent

sudo firewall-cmd --reload


6. Sauvegarder et restaurer les règles

a. Sauvegarder les règles

Pour sauvegarder les règles actuelles dans un fichier :

sudo firewall-cmd --runtime-to-permanent

sudo firewall-cmd --list-all > ~/[Link]

b. Restaurer les règles

Pour restaurer les règles à partir d'un fichier, vous devrez les appliquer manuellement ou
utiliser un script.

7. Désactiver firewalld (si nécessaire)

Si vous devez désactiver firewalld (par exemple, pour utiliser un autre pare-feu) :

sudo systemctl stop firewalld

sudo systemctl disable firewalld

8. Commandes utiles pour firewalld

 Voir tous les services disponibles :

sudo firewall-cmd --get-services

 Voir tous les ports ouverts :

sudo firewall-cmd --zone=public --list-ports

 Voir les règles riches (rich rules) :

sudo firewall-cmd --zone=public --list-rich-rules

9. Bonnes pratiques

 Ne jamais désactiver complètement le pare-feu : Toujours laisser au moins SSH


ouvert.

 Utiliser des zones appropriées : Par exemple, public pour les interfaces externes
et trusted pour les réseaux internes.
 Limiter l'accès SSH : N'autoriser que les adresses IP de confiance.

OpenLDAP

OpenLDAP est une implémentation open source du protocole LDAP (Lightweight Directory
Access Protocol), qui est utilisé pour accéder et gérer des services d'annuaire. Un annuaire
LDAP est une base de données hiérarchique optimisée pour les opérations de lecture et de
recherche, souvent utilisée pour stocker des informations sur les utilisateurs, les groupes, les
périphériques réseau, etc.

Voici une introduction théorique à OpenLDAP :

1. Qu'est-ce qu'OpenLDAP ?

 OpenLDAP est une implémentation open source du protocole LDAP.

 Il permet de créer, gérer et interroger des annuaires LDAP.

 Il est largement utilisé pour :

o Gestion centralisée des utilisateurs : Authentification unique (SSO), gestion


des comptes utilisateurs.

o Stockage des informations hiérarchiques : Organisations, groupes, ressources


réseau.

o Intégration avec d'autres services : Authentification pour les services comme


SSH, FTP, VPN, etc.

2. Concepts clés d'OpenLDAP

a. Entrée (Entry)

 Une entrée est un ensemble d'attributs qui représentent un objet dans l'annuaire
(par exemple, un utilisateur, un groupe, une imprimante).

 Chaque entrée a un DN (Distinguished Name), qui est un identifiant unique dans


l'annuaire.

b. DN (Distinguished Name)

 Le DN est le nom unique d'une entrée dans l'annuaire.


 Exemple :

cn=John Doe,ou=Users,dc=example,dc=com

o cn=John Doe : Nom commun de l'entrée.

o ou=Users : Unité organisationnelle (Organizational Unit).

o dc=example,dc=com : Domaine (Domain Component).

c. Attributs

 Les attributs sont des paires clé-valeur qui décrivent une entrée.

 Exemples d'attributs :

o cn : Nom commun (Common Name).

o sn : Nom de famille (Surname).

o uid : Identifiant utilisateur (User ID).

o mail : Adresse e-mail.

d. Schéma (Schema)

 Un schéma définit les types d'objets et d'attributs qui peuvent être stockés dans
l'annuaire.

 OpenLDAP inclut des schémas de base (comme inetOrgPerson pour les utilisateurs) et
permet d'ajouter des schémas personnalisés.

e. Base de données (Database)

 OpenLDAP stocke les données dans une base de données (généralement Berkeley
DB ou LMDB).

 La base de données contient toutes les entrées et leurs attributs.

3. Architecture d'OpenLDAP

a. Serveur LDAP (slapd)

 slapd est le démon (service) qui gère les requêtes LDAP.

 Il écoute sur le port 389 (LDAP) ou 636 (LDAPS pour LDAP sécurisé avec SSL/TLS).

b. Clients LDAP

 Les clients LDAP interagissent avec le serveur pour effectuer des opérations comme :

o Recherche : Rechercher des entrées dans l'annuaire.


o Ajout : Ajouter de nouvelles entrées.

o Modification : Modifier des entrées existantes.

o Suppression : Supprimer des entrées.

c. Réplication

 OpenLDAP supporte la réplication pour assurer la haute disponibilité et la


redondance.

 La réplication peut être configurée en mode maître-esclave ou multi-maître.

4. Fonctionnalités d'OpenLDAP

a. Authentification

 OpenLDAP peut être utilisé pour l'authentification centralisée des utilisateurs.

 Les services comme SSH, FTP, et les applications web peuvent utiliser LDAP pour
vérifier les identifiants des utilisateurs.

b. Gestion des utilisateurs et des groupes

 OpenLDAP permet de stocker et de gérer les informations des utilisateurs et des


groupes de manière centralisée.

c. Recherche et filtrage

 LDAP supporte des requêtes de recherche complexes avec des filtres pour trouver des
entrées spécifiques.

 Exemple de filtre :

(&(objectClass=inetOrgPerson)(uid=johndoe))

d. Sécurité

 OpenLDAP supporte :

o Chiffrement SSL/TLS : Pour sécuriser les communications.

o ACL (Access Control Lists) : Pour contrôler l'accès aux entrées et aux attributs.

5. Avantages d'OpenLDAP

 Centralisation : Gestion centralisée des utilisateurs et des ressources.

 Flexibilité : Schémas personnalisables pour s'adapter à différents besoins.


 Interopérabilité : Compatible avec d'autres services et applications via le protocole
LDAP.

 Performances : Optimisé pour les opérations de lecture et de recherche.

6. Cas d'utilisation courants

a. Authentification centralisée

 OpenLDAP est souvent utilisé pour l'authentification unique (SSO) dans les
environnements d'entreprise.

b. Gestion des utilisateurs

 Stocker les informations des utilisateurs (noms, adresses e-mail, mots de passe, etc.)
dans un annuaire central.

c. Intégration avec d'autres services

 OpenLDAP peut être intégré avec :

o SSH : Authentification des utilisateurs via LDAP.

o FTP : Gestion des accès FTP via LDAP.

o Applications web : Authentification des utilisateurs via LDAP.

7. Limitations d'OpenLDAP

 Complexité : La configuration et la gestion d'OpenLDAP peuvent être complexes pour


les débutants.

 Performances en écriture : LDAP est optimisé pour les lectures, mais les opérations
d'écriture peuvent être plus lentes.

 Sécurité : Une mauvaise configuration des ACL ou de SSL/TLS peut exposer des
données sensibles.

8. Alternatives à OpenLDAP

 Active Directory : Solution Microsoft pour la gestion des annuaires, souvent utilisée
dans les environnements Windows.

 389 Directory Server : Une autre implémentation open source de LDAP.

 FreeIPA : Une solution intégrée pour la gestion des identités et des politiques dans les
environnements Linux.
9. Conclusion

OpenLDAP est un outil puissant pour la gestion centralisée des annuaires et l'authentification
des utilisateurs. Bien qu'il puisse être complexe à configurer, il offre une grande flexibilité et
est largement utilisé dans les environnements d'entreprise pour la gestion des identités et
des ressources.

Vous aimerez peut-être aussi