16/01/2025

Auteur : Mickael Dorigny

Mickael Dorigny
  • Co-founder
  • 552 articles

Co-fondateur d'IT-Connect.fr. Auditeur/Pentester chez Orange Cyberdéfense.

Commandes et Système

Vider l’espace d’échange (SWAP)

I. Présentation Certaines applications peuvent être très gourmandes en ressource mémoire, Linux se met alors à utiliser son espace d’échange (SWAP) mais il arrive que celle-ci ne se vide pas correctement et paraisse être toujours utilisée causant ainsi des problèmes de performances liées aux accès au disques dur. L’espace d’échange SWAP sous Linux peut être activé/ désactivé et c’est la plupart du temps comme cela que l’on peut vider l’espace SWAP sans avoir à redémarrer le système. Pour information, on peut vérifier facilement l’espace d’échange SWAP utilisé sur le système avec la commande suivante : swapon -s La colonne « Used » nous renseignera sur l’utilisation actuelle de la mémoire SWAP disponible. Si ce taux reste trop élevé trop longtemps, on peut observer des ralentissements sur l’accès au disque dur sur lequel la partition ou le fichier SWAP est présent. II. Vider la SWAP Pour redémarrer et remettre à zéro la SWAP, nous utilisons la commande suivante : swapoff -a && swapon

Lire cet article
Commandes et Système

Changer le comportement du Shell

1. Présentation Le shell est la coquille qui enveloppe le noyau Linux. Il permet de dialoguer avec ce dernier à travers des milliers de commandes internes et externes couplées à diverses options et paramètres. Le shell est critique pour les administrateurs systèmes, ajuster son comportement permet donc de se faciliter les taches. Un exemple de comportement classique dans les systèmes Linux est la saisie de la touche « flèche haut » pour revenir sur l’historique des commandes saisies, ce comportement ainsi que plein d’autres sont configurés dans le fichier « inputrc ». 2. Explications « Inputrc » est le fichier de configuration de la commande readline de Linux, readline étant la bibliothèque qui permet d’interagir avec la ligne de commandes. Elle permet par exemple de lire une ligne saisie par un utilisateur sur le terminal. Ce fichier existe dans deux endroits : /etc/inputrc : permet de configurer un comportement par défaut pour tous les utilisateurs du système. Ce fichier est

Lire cet article
Commandes et Système

Augmenter l’espace d’échange (SWAP) avec un fichier sous Linux

I. Présentation Sous Linux, certaines applications peuvent être très gourmandes en mémoire et le système a alors besoin de la SWAP pour gérer cet excès de besoin en mémoire. Pour rappel, la SWAP est un espace disque qui est utilisé comme mémoire virtuelle pour le système. Elle était trés utilisée dans le passé pour décharger la mémoire vive (RAM) alors coûteuse et présente en petite quantité sur les ordinateurs. Sous la plupart des systèmes Linux basés sur Debian, la SWAP est représentée sous forme de partition (Linux la crée par défaut et averti l’utilisateur quand il n’y a pas de partition SWAP à l’installation d’un système Debian). Plus clairement, lorsque la RAM est pleine ou à partir d’un certain seuil d’utilisation de celle-ci, le système utilise la SWAP (une partie du disque dur) comme RAM. Le problème étant que la rapidité de lecture/écriture d’un disque est souvent bien inférieur à celle de la RAM et cela peut à terme ralentir

Lire cet article
AutresCommandes et SystèmeServices

Installer un serveur LEMP (Linux EngineX MySQL PHP)

I. Présentation Un serveur LEMP (Linux EngineX MySQL PHP) est un serveur web comportant 4 composants qui sont :  Un système d’exploitation Linux (wheezy dans notre cas)   NginX pour gérer la communication entre le serveur et les clients.   MySQL pour toute la partie base de données.   PHP pour rendre le tout dynamique. Grâce à un serveur LEMP vous pouvez créer un site web dynamique grâce au PHP et à la base de données MySQL, étant donné qu’il contient tout les éléments nécessaires à la mise en place d’un site web dynamique. Un serveur LEMP regroupe plusieurs éléments qui en font un service complet et stable. Il faut savoir qu’un serveur LEMP est différent d’un serveur LAMP seulement car il utilise NginX en serveur web plutôt qu’Apache. NginX est un serveur web de plus en plus utilisé notamment pour ses performances par rapport à Apache 2. II. Mise à jours des paquets On va commencer par mettre à

Lire cet article
Apache

Sécuriser les authentifications Htaccess avec l’option Digest

I. Présentation Le fichier .htaccess est un moyen rapide et efficace pour restreindre et protéger l’accès à un dossier ou à des fichiers web sur un serveur. La plupart des tutoriels nous disent souvent d’utiliser l’option simple « AuthType Basic » pour la méthode d’authentification. Cependant, cette option fait passer les mots de passe quasiment en clair sur le réseau remettant ainsi sérieusement en cause leur crédibilité en terme de sécurité. Dans ce tutoriel, nous allons voir une démonstration du passage du mot de passe lors d’une authentification .htaccess utilisant un type d’authentification « Basic » puis nous verrons comment mieux sécuriser le passage de l’authentification sur le réseau par un .htaccess. II. Démonstration Nous partons ici du fait qu’un fichier « .htaccess » utilisant l' »AuthType Basic » est déjà en place. Pour ceux pour qui ce ne serait pas encore le cas, je vous oriente vers ce tutoriel sur la mise en place d’une protection simple avec « .htaccess ». Nous allons donc avoir un serveur web (dans

Lire cet article
BashCommandes et Système

Marquer un temps d’arrêt en bash avec SLEEP

I. Présentation Dans ce tutoriel, nous allons apprendre à marquer un temps d’arrêt dans un script bash. Ce peut être une pratique utile dans beaucoup de cas différents. On peut par exemple lancer une commande de lancement d’une machine virtuelle puis vouloir faire une vérification afin de voir si celle-ci est bien démarré. On voudra alors marquer une temps d’arrêt entre le lancement et la vérification pour attendre que la VM ai bien démarré. Ce cas est un exemple parmis beaucoup d’autres. II. La commande « sleep » Nous allons pour le tutoriel utiliser « sleep » de manière très simple comme suivant dans un script bash appelé « script.bash » : #!/bin/bash date echo « étape 1 : » ; sleep 10 date echo « étape 2 :  » ; Nous rendons ensuite exécutable notre script : chmod +x script.sh Puis nous l’exécutons : ./script.sh Voila la sortie que nous en aurons : On voit donc bien que le « 10 » correspond à une attente de 10 secondes. Essayons

Lire cet article
Commandes et SystèmeSSHSupervision

Envoi d’un mail lors d’une connexion SSH

I. Présentation Dans ce tutoriel, nous allons apprendre à paramétrer un envoi de mail lors d’une connexion SSH à un serveur Linux. Cela peut être une solution simple et rapide pour savoir quand quelqu’un se connecte à votre serveur et cela en temps quasi réel (le temps d’envoi d’un mail). Nous allons voir que cette méthode peut s’appliquer à tous les utilisateurs se connectant en SSH,le plus intéressant à faire étant pour root car cela permet de superviser les connexions en SSH pour root et ainsi de détecter si il y a des connexions anormales. II. Le fichier .bashrc Chaque utilisateur possède un fichier « .bashrc » dans son « home » qui peut contenir, entre autre, des commandes exécutées lors de l’initialisation de son shell (ce qui se passe lors d’une connexion SSH). C’est de ce fichier que nous allons nous servir pour effectuer notre envoi de mail. Il suffit donc juste d’y placer les bonnes commandes. Note: On par ici du principe

Lire cet article
Apache

Protéger l’accès à certains fichiers spécifiques avec .htaccess

I. Présentation Les fichiers « .htaccess » sont souvent utilisés dans Apache afin de protéger l’accès à un répertoire spécifique où les fichiers sont positionnés. Il est important de savoir également que l’on peut, avec un fichier « .htaccess », protéger un fichier ou un type de fichier et pas d’autres alors qu’ils sont dans le même répertoire. C’est ce que nous allons voir dans ce tutoriel. II. Préparation de l’environnement Nous allons supposer qu’Apache2 est déjà installé et opérationnel sur notre serveur et qu’il est joignable sur le port 80. Pour le test, nous allons supposer que la page « index.html » doit être joignable sans restriction mais pas la page « index2.html » que nous créons maintenant : cp /var/www/index.html /var/www/index2.html chown www-data /var/www -Rf Nous faisons un premier test d’accès aux deux pages. Elles sont normalement toutes deux accessibles sans restrictions (sinon vérifiez votre configuration Apache2). III. Construction du fichier .htaccess Nous allons maintenant créer le fichier « .htaccess » dans le répertoire « /var/www » afin de restreindre

Lire cet article
Commandes et SystèmeServices

Clustering et haute disponibilité sous Linux avec Heartbeat

I. Présentation HeartBeat ou LinuxHA (High Availability) est un système permettant, sous Linux, la mise en cluster (en groupe) de plusieurs serveurs. C’est plus clairement un outil de haut disponibilité qui va permettre à plusieurs serveurs d’effectuer entre eux un processus de fail-over. Le principe du « fail-over » (ou « tolérance de panne ») est le fait qu’un serveur appellé « passif » ou « esclave » soit en attente et puisse prendre le relais d’un serveur « actif » ou « maitre » si ce dernier serait amené à tomber en panne ou à ne plus fournir un service. Le principe d’Heartbeat est donc de mettre nos serveurs dans un cluster qui détiendra et sera représenté par une IP « virtuelle » par laquelle les clients vont passer plutôt que de passer par l’IP d’un serveur (actif ou passif). Le processus Heartbeat se chargera de passer les communications aux serveur actif si celui-ci est vivant et au serveur passif le cas échéant. Nous allons donc dans ce tutoriel mettre en place un

Lire cet article
Base de données

Réplication en temps réel Master/Slave MySQL

I. Présentation L’importance des serveurs de base de données et des bases de données elles même dans un système d’information est capital à son bon fonctionnement tant au niveau applicatif qu’au niveau des lectures par les serveurs web. C’est pourquoi il est important, dans une optique de sécurité et de disponibilité de l’information, d’avoir un processus à la fois de réplication des informations en temps réel mais aussi de tolérance de panne. Plus précisément, si un serveur dit « Master » tombe, un autre serveur « Slave » doit prendre le relais de manière immédiate et doit aussi avoir la dernière version des informations. Dans ce tutoriel, nous allons apprendre à mettre en place une réplication des bases de données en temps réel entre un serveur dit « Master » qui va recevoir les processus d’écriture et de lecture et un serveur « Slave » qui se chargera de se mettre à jour selon les modifications faites sur le « Master » afin qu’il dispose des dernières versions des informations

Lire cet article
NAS

Installation d’OpenMediavault depuis Debian

I. Présentation OpenMediaVault est une distribution orientée NAS (Network Attached Storage) créée par le développeur Volk qui est un ancien développeur de FreeNAS et de Debian. C’est une distribution nouvelle mais prometteuse basée sur Debian Squeeze, la plupart des fonctionnalités et des protocoles utiles pour un NAS y sont supportés. Dans ce tutoriel, nous allons voir comment installer OpenMediaVault depuis une machine Debian déjà installée. OpenMediavault peut en effet s’installer en tant que distribution toute faite basée sur Debian mais également en tant que paquet sur une Debian déjà installée. Nous passerons donc par la mise à jour des sources et paquets pour ensuite passer à l’installation en elle même puis la vérification de l’accès à la page d’accueil d’OMV. II. Mise à jour des paquets et des sources OMV étant une distribution naissante et grandissante, elle dispose de son propre dépôt (là où sont situés les paquets nécessaire à son fonctionnement). On commence donc par mettre à jour notre

Lire cet article
Commandes et Système

Calculer une empreinte SHA1 sous Linux

I. Présentation Dans ce tutoriel, nous allons apprendre à utiliser la commande sha1sum pour calculer l’empreinte d’une données. Le SHA1 est réputé pour être « plus fiable » que le md5, cela est surtout du au faite que les empreintes qu’il génère sont sur 40 caractères (20 octects) plutôt que 32 caractères pour le md5. Il existe également une multitude de rainbow table md5 qui sont des bases de données contenant le hash md5 et leur correspondance claires sur des sites en ligne. Pour information, une empreinte sert à calculer l’intégrité d’une donnée. Un même fichier avec un seul bit de différence donnera une empreinte totalement différente. II. Utilisation de la commande Si nous voulons par exemple calculer l’empreinte du fichier « file1 », nous utiliserons la commande comme suivant : sha1sum file1 Nous aurons alors en résultat l’empreinte de ce fichier : On peut aussi vouloir mettre cette empreinte dans un fichier pour que les utilisateurs puissent la comparer à nouveau  : sha1sum

Lire cet article
Services

Backupez vos données avec Back In Time

I. Présentation Back in Time est un petit outil disponible sur les distributions Debian Linux qui permet de backuper de façon automatique les données d’un poste et cela de façon trés simple. Il faut savoir que Back In Time fonctionne actuellement sur deux bureaux : Gnome et KDE. II. Installation Nous allons commencer par installer l’outil de 35Mo qui nous fournira une interface graphique afin de configurer nos backups. On ouvre pour cela un terminal avec les droits administrateur et on saisi la commande suivante : apt-get update && apt-get install backintime-gnome Note: Le tutoriel est ici fait sur un bureau GNOME mais pour KDE, la commande sera la suivante : apt-get update && apt-get install backinttime-kde4 On trouvera ensuite notre outil « Back in Time » dans la partie « Outils système » : Dans le cadre du tutoriel et pour éviter de se faire embêter, nous allons ici le lancer ne root mais la gestion particulière des droits peut certainement vous amener

Lire cet article
Windows Client

Paramétrer le lancement d’un script à l’arrêt ou au démarrage de Windows Pro

I. Présentation Dans ce tutoriel, nous allons voir comment paramétrer le lancement d’un script à l’arrêt ou au démarrage de Windows Pro. Cela peut être trés utile pour le montage/ démontage de lecteur par exemple mais peut s’appliquer à tout script ayant le format « .bat » ou même à des scripts PowerShell sous Windows Pro. II. L’outil « gpedit.msc » Nous devons commencer par aller dans le menu démarrer puis dans « Exécuter » et saisir « gpedit.msc » : Une nouvelle fenêtre va alors apparaitre, il s’agit des « Stratégie Ordinateur local » de notre poste : Dans cette fenêtre, il faut cliquer sur « Stratégie Ordinateur Local », « Configuration ordinateur », « Paramètre Windows » puis « Scripts ». On pourra alors cliquer sur « Démarrage » ou « Arrêt du système » selon si l’on chercher à exécuter un script au démarrage ou à l’arrêt. Nous aurons alors cette fenêtre : On ira donc chercher le script voulu en cliquant sur « Ajouter… ». Si il s’agit d’un script PowerShell, il faudra aller dans l’onglet « Powershell. On cliquera ensuite

Lire cet article