Créer RAID 1
Créer RAID1 en utilisant /dev/sda3 et /dev/sdb1:
# mdadm -- create /dev/md0 -- level = 1 -- raid-devices = 2 /dev/sda3 /dev/sdb1
Pour voir les progrès de la construction de RAID :
# cat /proc/mdstat
Autrement, créer un volume RAID à partir des informations de configuration du fichier
/etc/[Link] (à créer). La commande mdadm prend comme argument le nom du volume:
# mdadm --create /dev/md0
Pour activer le volume RAID on exécute la commande :
# mdadm -As /dev/md0
Pour arrêter le volume RAID on exécute la commande :
# mdadm -S /dev/md0
Comment puis-je obtenir des informations détaillées sur RAID 1?Tapez la commande suivante:
# mdadm -query -detail /dev/md0
On peut utiliser la commande mdadm --details --scan pour écrire la configuration courante du
volume RAID dans un fichier de configuration :
# echo DEVICE /dev/sda3 /dev/sdb1 > /etc/[Link]
# mdadm --detail --scan >> /etc/[Link]
Dans le cas où vous souhaitez supprimer un disque du RAID, vous pouvez utiliser les
commandes suivantes:
Arrêtez le périphérique RAID:
# mdadm --manage /dev/md0 --fail /dev/sdb1
Retirez le périphérique de RAID:
# mdadm --manage /dev/md0 --remove /dev/sdb1
Options pour mke2fs
Il s'agit d'une option spéciale disponible lors du formatage RAID 4 ou 5 avec mke2fs. Le -R stride
= nn option permettra à mke2fs de structurer les données spécifiques d’une manière intelligente
sur le périphérique RAID.
# mke2fs -b 4096 -R stride=8 /dev/md0 RAID {4,5}, la performance est fortement influencée
par cette option
ISCSI:
NFS:
showmount : permet d’afficher les informations d’unserveur NFS distant.
sudo mount [Link]:/mnt/nfs_share /mnt/nfs_clientshare : Montage d’un répertoire
distant
sudo mkdir -p /mnt/nfs_share : création d‘un rép· a partager
/mnt/nfs_share [Link](rw,sync,no_subtree_check) : partage rép· avec une
machine cliente
sudo exportfs -a : exporter les rép·
A. Côté Serveur (Exporter un répertoire)
1. Installer le serveur NFS : Sur le serveur qui va partager ses fichiers, il faut installer
les services NFS.
sudo apt update
sudo apt install nfs-kernel-server
2. Créer un répertoire à partager : Vous devez créer un répertoire qui sera partagé avec
d'autres machines.
sudo mkdir -p /mnt/nfs_share
sudo chown nobody: /mnt/nfs_share
3. Configurer le fichier /etc/exports : Dans ce fichier, vous spécifiez quels répertoires
seront partagés et avec quels clients (machines distantes). Ouvrez le fichier /etc/exports :
sudo nano /etc/exports
Ajoutez la ligne suivante pour partager le répertoire avec une machine client spécifique (par
exemple, [Link]) :
/mnt/nfs_share [Link](rw,sync,no_subtree_check)
Les options :
rw : Permet la lecture et l'écriture.
sync : Synchronise les modifications des fichiers instantanément.
no_subtree_check : Désactive la vérification des sous-arborescences pour
améliorer les performances.
4. Exporter les répertoires : Après avoir modifié le fichier /etc/exports, vous devez
appliquer les modifications avec la commande suivante :
sudo exportfs -a
5. Redémarrer le service NFS : Pour que les modifications prennent effet, redémarrez
le service NFS.
sudo systemctl restart nfs-kernel-server
sudo showmount -e localhost
B. Côté Client (Monter un partage NFS)
1. Installer le client NFS : Sur la machine qui veut accéder aux fichiers partagés,
installez-le package NFS.
sudo apt update
sudo apt install nfs-common
2. Créer un point de montage : Créez un répertoire où le partage NFS sera monté.
sudo mkdir -p /mnt/nfs_clientshare
3. Monter le répertoire partagé : Utilisez la commande suivante pour monter le
répertoire partagé par le serveur :
sudo mount [Link]:/mnt/nfs_share /mnt/nfs_clientshare
Ici, [Link] est l'adresse IP du serveur NFS, et /mnt/nfs_share est le chemin du
répertoire partagé.
4. Vérifier le montage : Utilisez la commande df -h pour vérifier que le partage NFS est
monté.
df -h
sudo showmount -e [Link]
5. Montage automatique au démarrage : Pour monter automatiquement le partage NFS
au démarrage, ajoutez la ligne suivante dans le fichier /etc/fstab du client :
[Link]:/mnt/nfs_share /mnt/nfs_clientshare nfs defaults 0 0
Sur le serveur (IP : [Link]) :
1. Créer le répertoire et changer les permissions :
sudo mkdir -p /mnt/nfs_share
sudo chown nobody:nogroup /mnt/nfs_share
2. Ajouter dans /etc/exports :
/mnt/nfs_share [Link](rw,sync,no_subtree_check)
3. Appliquer et redémarrer le serveur NFS :
sudo exportfs -a
sudo systemctl restart nfs-kernel-server
Sur le client (IP : [Link]) :
1. Créer un point de montage et monter le partage :
sudo mkdir -p /mnt/nfs_clientshare
sudo mount [Link]:/mnt/nfs_share /mnt/nfs_clientshare
2. Ajouter dans /etc/fstab pour le montage automatique :
[Link]:/mnt/nfs_share /mnt/nfs_clientshare nfs defaults 0 0
SAMBA:
smbpasswd -a nom_compte : la création d’un mot depasse MD4
smbpasswd -d nom_compte: Désactiver un compte samba
smbpasswd -e nom_compte : Réactiver un compte samba
smbpasswd -x nom_compte : Supprimer un compte samba
smbclient -L adresse_serveur -N : Récupérer des informations sur un serveur smb
smbclient //adresse_serveur/partage -U nom_utilisateur : Réaliser des opérations sur les
partages
mount -t cifs //@serveur/partage /pt_montage -o username=nom_utilisateur : Pour
monter sur un répertoire Locale:
1. Installation de Samba
Sur un serveur Linux, installez le paquet Samba :
sudo apt update
sudo apt install samba
2. Configuration du Serveur Samba
La configuration principale de Samba se trouve dans le fichier /etc/samba/[Link]
1. Créez un répertoire à partager, par exemple :
sudo mkdir -p /srv/samba/share
2. Modifiez les permissions pour rendre le répertoire accessible aux utilisateurs
Samba :
sudo chown nobody:nogroup /srv/samba/share
sudo chmod 0775 /srv/samba/share
3. Ouvrez le fichier de configuration Samba :
sudo nano /etc/samba/[Link]
4. Ajoutez cette section à la fin du fichier pour définir un partage :
[Public]
path = /srv/samba/share
browsable = yes
writable = yes
guest ok = yes
read only = no
path : Chemin vers le répertoire à partager.
browsable = yes : Permet aux utilisateurs de voir le partage lorsqu'ils naviguent.
writable = yes : Permet d'écrire dans le partage.
guest ok = yes : Autorise les connexions sans authentification.
read only = no : Le partage est en lecture/écriture.
5. Redémarrez le service Samba pour appliquer les changements :
sudo systemctl restart smbd
3. Création d'un utilisateur Samba (optionnel)
Si vous souhaitez restreindre l'accès avec un mot de passe, vous pouvez créer un utilisateur
Samba :
sudo smbpasswd -a nom_utilisateur
Cela permet de définir un utilisateur Samba distinct de l'utilisateur système.
4. Configuration du pare-feu
Si un pare-feu est activé sur le serveur, vous devrez autoriser le trafic Samba. Voici les
commandes pour permettre les ports utilisés par Samba :
sudo ufw allow samba
5. Accès au partage Samba depuis un client Windows
Sur un ordinateur Windows, vous pouvez accéder au partage Samba de deux manières :
1. Utilisation de l'Explorateur de fichiers : Ouvrez l'Explorateur de fichiers et entrez
l'adresse du serveur Samba dans la barre d'adresse, par exemple :
\\[Link]\Public
(Remplacez [Link] par l'adresse IP de votre serveur Samba.)
2. Montage du partage en tant que lecteur réseau : Dans l'Explorateur de fichiers,
cliquez sur "Ce PC" -> "Connecter un lecteur réseau" et entrez l'adresse du partage Samba.
6. Accès au partage Samba depuis un client Linux
sudo smbclient -L Adress_IP_Serveur -N (lister les partages)
sudo smnclient //Adresse_IP_Serveur/Nom_Partage -O Nom_Utilisateur
Pour monter sur un répertoire Locale:
$ mount -t cifs //@serveur/partage /pt_montage -o username=nom_utilisateur
1. Installation de vsftpd
Sur une distribution basée sur Debian/Ubuntu, installez le serveur FTP vsftpd avec la
commande suivante :
sudo apt update
sudo apt install vsftpd
2. Configuration de vsftpd
Le fichier de configuration principal de vsftpd se trouve dans /etc/[Link].
a. Ouvrez le fichier de configuration :
sudo nano /etc/[Link]
b. Modifiez les paramètres pour autoriser l'accès des utilisateurs locaux et activer le
FTP anonyme si nécessaire. Voici une configuration de base :
oAutoriser les utilisateurs locaux à se connecter : local_enable=YES
oActiver l'upload de fichiers pour les utilisateurs locaux : write_enable=YES
oDésactiver le mode anonyme (pour plus de sécurité) : anonymous_enable=NO
oLimiter l'accès des utilisateurs locaux à leur propre répertoire :
chroot_local_user=YES
oActiver le mode passif pour le transfert de fichiers (utile pour les pare-feu) :
pasv_enable=YES
pasv_min_port=10000
pasv_max_port=10100
[Link] et fermez le fichier.
3. Création d'un utilisateur FTP
Si vous souhaitez autoriser des utilisateurs locaux à accéder au serveur FTP, créez un
utilisateur spécifique à cet usage :
sudo adduser utilisateurftp
Définissez un mot de passe pour cet utilisateur et assignez-lui un répertoire personnel où il
pourra déposer ses fichiers.
4. Démarrage et activation du service FTP
Démarrez le service vsftpd et activez-le pour qu’il démarre automatiquement au démarrage
du système :
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
5. Configuration du pare-feu
Si un pare-feu est activé, autorisez le trafic FTP sur le serveur (port 21 par défaut) :
sudo ufw allow 21/tcp
ou dans le redhat
sudo firewall-cmd --permanent --add-port=21/tcp
Si vous avez activé le mode passif (comme montré plus haut), autorisez également la plage
de ports définie pour ce mode :
sudo ufw allow 10000:10100/tcp
ou dans le cas de redhat
sudo firewall-cmd --permanent --add-port=10000-10100/tcp
6. Connexion via un client FTP
Pour vous connecter au serveur FTP depuis une autre machine, vous pouvez utiliser des
clients FTP en ligne de commande ou graphiques. Voici un exemple avec la ligne de
commande FTP sur un autre système Linux :
ftp [Link]
Remplacez [Link] par l'adresse IP de votre serveur FTP.
Exemple : Bloquer l'accès à la commande su pour un utilisateur spécifique
1. Ajouter un nouvel utilisateur de test
Créez un nouvel utilisateur que vous utiliserez pour tester la configuration PAM.
sudo useradd testuser
sudo passwd testuser
2. Configurer PAM pour restreindre l'accès à su
Le fichier PAM associé à la commande su se trouve dans /etc/pam.d/su. Vous pouvez y
ajouter une règle pour restreindre l'accès à cet utilisateur.
Ouvrez le fichier /etc/pam.d/su avec un éditeur de texte, par exemple vi :
sudo vi /etc/pam.d/su
Ajoutez la ligne suivante au début des lignes de la catégorie Auth pour bloquer l'accès à su
pour un utilisateur spécifique, ici testuser :
auth required pam_succeed_if.so user != testuser
Cette règle signifie que le module pam_succeed_if.so va vérifier si l'utilisateur est différent
de testuser. Si ce n'est pas le cas, l'authentification échoue.
3. Tester la configuration PAM
Maintenant que vous avez configuré PAM pour restreindre l'accès à su, vous pouvez tester
ce changement.
Essayez de passer à l'utilisateur root en utilisant su avec un autre utilisateur (qui n'est pas
testuser) :
su - root
Cela devrait fonctionner [Link], essayez avec testuser :
su - root
Vous devriez voir un message d'erreur disant que l'accès est refusé pour cet utilisateur.
4. Restaurer la configuration (optionnel)
Après avoir testé, vous pouvez supprimer ou commenter la ligne ajoutée dans /etc/pam.d/su
pour restaurer le comportement par défaut.
Ouvrez de nouveau le fichier /etc/pam.d/su :
sudo vi /etc/pam.d/su
Supprimez ou commentez la ligne ajoutée en la précédant d'un # :
# auth required pam_succeed_if.so user != testuser
Explication de la configuration
pam_succeed_if.so : Ce module permet de conditionner l'accès en fonction de diverses
propriétés de l'utilisateur (comme son UID, son groupe, ou son nom).
user != testuser : Cette condition signifie que seul testuser est bloqué, tandis que tous les
autres utilisateurs sont autorisés à utiliser su.
Configuration du serveur OpenLDAP sur Red Hat Enterprise Linux 8
Etape 1 : Installer OpenLDAP et ses outils
Installez les packages nécessaires pour configurer OpenLDAP :
sudo dnf install -y openldap openldap-servers openldap-clients
Étape 2 : Configurer le service OpenLDAP
Après l'installation, initialisez la base de données LDAP :
sudo systemctl enable --now slapd
Cela démarre le service slapd, le démon LDAP. Ensuite, configurez l'outil ldapmodify pour
gérer les modifications via l'interface LDAP.
Étape 3 : Configurer le mot de passe administrateur LDAP
Générez un mot de passe LDAP chiffré pour l'utilisateur admin avec la commande suivante
:
slappasswd
Le mot de passe généré ressemblera à quelque chose comme
"{SSHA}ENCRYPTEDPASSWORD". Notez-le, car nous allons l'utiliser dans la configuration.
Étape 4 : Configurer le fichier de base de données LDAP
Créez le fichier de configuration olcRootDN et olcRootPW avec le DN de l'administrateur et
le mot de passe :
sudo vi /etc/openldap/slapd.d/cn=config/olcDatabase={2}[Link]
Ajoutez ou modifiez les lignes suivantes pour définir l'administrateur LDAP (root DN) et son
mot de passe :
olcRootDN: cn=admin,dc=example,dc=com
olcRootPW: {SSHA}ENCRYPTEDPASSWORD
Ensuite, rechargez la configuration LDAP :
sudo systemctl restart slapd
Étape 5 : Ajouter des entrées de base à l'annuaire LDAP
Créez un fichier [Link] avec la structure de base de l'annuaire. Par exemple, pour
[Link] :
ldif
Copier le code
dn: dc=example,dc=com
objectClass: top
objectClass: dcObject
objectClass: organization
o: Example Organization
dc: example
dn: cn=admin,dc=example,dc=com
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator
userPassword: {SSHA}ENCRYPTEDPASSWORD
Importez ces données dans la base LDAP :
ldapadd -x -D "cn=admin,dc=example,dc=com" -W -f [Link]
Cela crée l'entrée racine de votre annuaire LDAP avec dc=example,dc=com.
Étape 6 : Vérifier que le serveur fonctionne
Vous pouvez maintenant vérifier que le serveur LDAP fonctionne en utilisant la commande
ldapsearch :ldapsearch -x -b "dc=example,dc=com"
Cela doit retourner la structure de base que vous venez de créer.
Configuration du client OpenLDAP
Étape 1 : Installer les clients LDAP
Sur le côté client, installez les packages sssd et openldap-clients pour permettre
l'authentification via LDAP :
sudo dnf install -y openldap-clients sssd
Étape 2 : Configurer l'accès au serveur LDAP
Créez ou modifiez le fichier /etc/openldap/[Link] pour inclure les paramètres du serveur
LDAP :
sudo vi /etc/openldap/[Link]
Ajoutez les lignes suivantes pour configurer l'URL du serveur LDAP et le domaine de base
de recherche (base DN) :
URI ldap://[Link]
BASE dc=example,dc=com
Étape 3 : Configurer SSSD pour l'authentification LDAP
Éditez le fichier /etc/sssd/[Link] pour indiquer que SSSD doit utiliser LDAP comme
fournisseur d'identité :
sudo vi /etc/sssd/[Link]
Ajoutez la configuration suivante :
[sssd]
services = nss, pam
config_file_version = 2
domains = LDAP
[domain/LDAP]
id_provider = ldap
auth_provider = ldap
ldap_uri = ldap://[Link]
ldap_search_base = dc=example,dc=com
ldap_default_bind_dn = cn=admin,dc=example,dc=com
ldap_default_authtok = motdepasseadmin
ldap_user_search_base = ou=users,dc=example,dc=com
ldap_group_search_base = ou=groups,dc=example,dc=com
cache_credentials = True
Assurez-vous que le fichier a les bonnes permissions pour des raisons de sécurité :
sudo chmod 600 /etc/sssd/[Link]
Étape 4 : Activer et démarrer SSSD
Activez et démarrez le service SSSD :
sudo systemctl start sssd
sudo systemctl enable sssd
3. Interroger la base LDAP depuis le client
Une fois le serveur LDAP configuré et le client installé, vous pouvez interroger la base LDAP
en utilisant la commande ldapsearch.
Exemple de recherche
Pour interroger la base LDAP et afficher toutes les entrées, utilisez la commande suivante :
ldapsearch -x -b "dc=example,dc=com"
Cela va retourner toutes les entrées présentes dans la base LDAP. Vous pouvez affiner la
recherche en spécifiant un utilisateur ou un attribut particulier.
Résumé
Serveur LDAP : Configurez OpenLDAP sur RHEL 8, créez une base de données
LDAP avec des utilisateurs et groupes.
Client LDAP : Installez les outils de client LDAP et configurez SSSD pour
l'authentification via le serveur LDAP.
Interrogation LDAP : Utilisez la commande ldapsearch pour interroger la base de
données LDAP depuis le client.
Ce processus permet de centraliser l'authentification et la gestion des utilisateurs dans un
réseau Linux à l'aide d'OpenLDAP.
Configuration Basique de FirewallD sur un Système Red Hat
Pour configurer FirewallD, voici les étapes de base :
Installation et Activation :Par défaut, FirewallD est installé sur les
systèmes Red Hat récents. Pour vérifier son statut :
○ sudo systemctl status firewalld
Si nécessaire, démarrez et activez FirewallD pour qu’il se lance au démarrage :
sudo systemctl start firewalld
sudo systemctl enable firewalld
Vérifier et Configurer la Zone Active :
Vérifiez la zone actuelle des interfaces réseau :
sudo firewall-cmd --get-active-zones
Pour associer une interface à une zone spécifique, utilisez :
sudo firewall-cmd --zone=public --change-interface=eth0
--permanent
Ajouter ou Supprimer des Services :Pour autoriser un service (ex : HTTP)
dans la zone active, utilisez :
sudo firewall-cmd --zone=public --add-service=http
Pour rendre cette modification permanente :
sudo firewall-cmd --zone=public --add-service=http --permanent
Vous pouvez retirer un service autorisé avec --remove-service :
sudo firewall-cmd --zone=public --remove-service=http --permanent
Ouverture et Fermeture de Ports :Pour autoriser un port spécifique, utilisez
l’option --add-port :
sudo firewall-cmd --zone=public --add-port=8080/tcp
Pour rendre cette modification permanente :
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
Vous pouvez également fermer un port spécifique avec --remove-port.
Recharger les Règles :
Les modifications permanentes sont appliquées en rechargeant FirewallD :
sudo firewall-cmd --reload
Vérification de la Configuration :
Pour vérifier l’état actuel de la configuration de FirewallD :
sudo firewall-cmd --list-all
Cas Pratique : Configuration d'un Serveur Web avec FirewallD
Dans ce cas pratique, nous configurons FirewallD pour sécuriser un serveur web,
en permettant uniquement l’accès HTTP (port 80) et HTTPS (port 443) à partir
de la zone publique.
1) Associer l'Interface Réseau à la Zone Publique : Vérifiez l’interface
réseau active (par exemple, eth0) et associez-la à la zone publique :
sudo firewall-cmd --zone=public --change-interface=eth0
--permanent
sudo firewall-cmd --reload
2) Autoriser les Services HTTP et HTTPS : Ajoutez les services HTTP et
HTTPS à la zone publique pour autoriser le trafic web :
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload
3) Vérifier la Configuration :
Assurez-vous que seuls les services HTTP et HTTPS sont ouverts dans la
zone publique :
sudo firewall-cmd --zone=public --list-all
Vous devriez voir services: http https, confirmant que le serveur web est
accessible via HTTP et HTTPS.
4) Test de la Configuration :
Pour vérifier que la configuration est correcte, essayez d'accéder au
serveur depuis un navigateur via [Link] et
[Link] Vous ne devriez pas pouvoir accéder à d'autres ports
non ouverts.
5) Ajout de Règles Riches pour Restreindre les Adresses IP :
Pour limiter l'accès au serveur web à une adresse IP spécifique (par
exemple, [Link]), utilisez une règle riche :
sudo firewall-cmd --zone=public --add-rich-rule='rule
family="ipv4" source address="[Link]" service name="http"
accept' --permanent
sudo firewall-cmd --zone=public --add-rich-rule='rule
family="ipv4" source address="[Link]" service name="https"
accept' --permanent
sudo firewall-cmd --reload
En suivant ces étapes, vous avez configuré FirewallD pour sécuriser un serveur
web, en restreignant l’accès aux services HTTP et HTTPS pour la zone publique.
Ce cas pratique montre comment FirewallD permet de gérer les connexions
réseau de manière flexible et sécurisée, en adaptant la configuration à vos
besoins spécifiques