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èmeServices

Envoyer des mails depuis plusieurs comptes en ligne de commande

I. Présentation Dans ce tutoriel, nous allons apprendre à utiliser l’outil MSMTP. Ce petit outil qui s’installe sur les distributions Linux permet la gestion du multi-comptes mails en ligne de commande (une sorte de Outlook ou Thunderbird CLI). Il est important de souligner qu’il ne sert qu’à envoyer des mails depuis plusieurs comptes différents (par exemple, un Gmail et un Yahoo) et non à en recevoir. II. Installation de l’outil Nous commençons donc par installer l’outil sur notre machine Linux : apt-get update && apt-get install msmtp III. La configuration Il se peut qu’il n’y ait pas de création de fichier de configuration par défaut, nous allons donc le créer manuellement. Il faut néanmoins savoir où le créer. Par défaut, le fichier principal de configuration sera « /etc/msmtprc ». Cependant, si un fichier « .msmtprc » se trouve dans le « home » d’un utilisateur, celui-ci remplacera le fichier de configuration principal. Cela nous permet d’avoir des configurations différentes selon les utilisateurs. Nous créons ici le

Lire cet article
Commandes et Système

LSOF : spécifier un utilisateur ou un processus

I. Présentation LSOF pour « List Open file » est une commande sous Linux présente ou installable sur la plupart des distributions basées sur Debian qui permet de lister les fichiers ouverts sur le système. Beaucoup d’options et d’utilisations peuvent être faites de cette commande qui peut être très utile pour les administrateurs systèmes (entre autre). Dans ce tutoriel, nous allons voir comment spécifier un utilisateur ou un processus (par son numéro d’identificaiton) à la commande LSOF. Cela en ayant pour but de restreindre les informations affichées. La commande LSOF retourne souvent de très nombreuses informations qui nous sont superflues. Dans une période de débugage par exemple, nous pourrons souhaiter n’avoir que les fichiers utilisés par un processus (programme) ou utilisateur spécifique. Nous allons dans un premier temps vérifier que la commande est bien installée sur le système : lsof -v Si la commande est bien installée, nous aurons plusieurs informations dont le numéro de version de la commande comme suivant :

Lire cet article
Commandes et Système

LSOF lister tous les processus utilisant un fichier

I. Présentation LSOF pour « List Open file » est une commande sous Linux présente ou installable sur la plupart des distributions basées sur Debian qui permet de lister les fichiers ouverts sur le système. Beaucoup d’options et d’utilisations peuvent être faites de cette commande qui peut être très utile pour les administrateurs systèmes (entre autre). Dans ce tutoriel, nous allons voir comment lister tous les processus qui ouvrent un fichier spécifique sur le système. Il est important de savoir que LSOF peut être utilisé de beaucoup de façons différentes et que seule une petite partie en est exposée ici. Nous allons dans un premier temps vérifier que la commande est bien installée sur le système. lsof -v Si la commande est bien installée, nous aurons plusieurs informations dont le numéro de version de la commande comme suivant : Si vous obtenez un « command not found », c’est qu’il faut installer la commande : apt-get update && apt-get install lsof Nous considérons dans

Lire cet article
Base de données

Changer l’emplacement des bases de données MySQL

I. Présentation Par défaut, les bases de données (en tant que fichier) sont stockées dans « /var/lib/mysql/ » sous Linux. Pour des questions d’organisation, de sécurité ou de place, il est peut être intéressant de changer l’emplacement de ces bases de données vers un autre dossier/ chemin. Nous allons voir dans ce tutoriel que cela est possible directement dans la configuration de MySQL. II. Repérer où sont les bases de données Dans un premier temps, nous allons voir où sont situées nos bases de données selon la configuration de notre serveur MySQL. On se rend pour cela dans le fichier « /etc/mysql/my.cnf » : On trouvera alors le champ « datadir » qui pointe par défaut vers « /var/lib/mysql ». Afin de vérifier cette information, nous allons aller dans ce dossier pour voir les bases de données présentes et surtout leurs permissions : ls -al /var/lib/mysql Nous aurons alors un résultat de ce type : Ici, une base de données est représentées par un dossier (comme « mysql » ou

Lire cet article
Nginx

Gérer le log level sous Nginx

I. Présentation Dans ce tutoriel, nous allons apprendre à gérer le log-level du serveur web Nginx. Pour rappel, le log-level est le niveau de verbosité (de « détail ») des logs. Il peut être plus ou moins précis selon nos besoins. Un log-level en mode « debug » sera très détaillé et permettra d’avoir un maximum d’informations techniques sur les échanges Nginx. Voici le détail des logs qu’il est généralement possible d’avoir sous un système : 0 Emergency 1 Alert 2 Critical 3 Error 4 Warning 5 Notice 6 Informational 7 Debug Il faut savoir que chaque niveau comprend les niveaux d’en dessous. Ainsi si nous configurons notre Nginx en mode « debug », nous aurons les logs info, warn, crit, etc … II. Changer le log level des erreurs Nginx Dans la configuration Nginx, il est possible de changer le logs level très facilement. On doit pour cela aller dans le fichier de configuration d’Nginx qui est par défaut dans « /etc/nginx/nginx.conf ». Il faudra ensuite trouver

Lire cet article
Commandes et Système

Calculer l’empreinte MD5 d’un dossier sous Linux

I. Présentation Dans un précédent tutoriel, nous avions vu comment calculer l’empreinte MD5 d’un simple fichier sous Linux. Seulement quand nous voulons calculer l’empreinte d’un dossier entier, nous obtenons un message d’erreur nous indiquant que la cible est un dossier et que md5 ne peut donc pas calculer son empreinte : Il est néanmoins possible de calculer la somme md5 d’un dossier, ou plus précisément de tous les fichiers d’un même dossier. On va pour cela calculer la somme MD5 de tous les fichiers de ce dossier puis calculer la somme MD5 de ces sommes MD5. Le but ici est de déterminer si un des fichiers positionnés dans le dossier cible a subit une modification. On utilisera pour cela la commande suivante (par exemple pour le dossier « /etc ») : find /etc/ -type f -exec md5sum {} \; > /tmp.md5 && md5sum /tmp/md5 && rm /tmp/md5 Nous allons détailler un peu plus cette commande qui se découpe en trois parties séparées

Lire cet article
Commandes et Système

Réduire la taille du fichier mlocate.db

I. Présentation Sous Linux, la commande « locate » est très pratique pour repérer instantanément la localisation d’un ou plusieurs fichiers selon leurs noms sur le système. Cette commande permet en effet d’afficher les chemins absolus (partant de la racine système) des fichiers que l’on cherche (selon leurs noms). Cependant, lorsque nous exécutons cette commande (Ex: « locate *.png »), la commande va en faite lire un fichier de base de données qui contient l’intégralité des noms et positions de fichiers présents sur le système. La plupart du temps, c’est la commande « updatedb » qui permet de mettre à jour ce fichier qui se nomme « /var/lib/mlocate/mlocate.db ». Sur des systèmes comportant un très grand nombre de fichier, ce fichier base de données peut très rapidement attendre plusieurs centaines de Megaoctects voir plusieurs Gigaoctects. Dans ce tutoriel, nous allons voir comment réduire la taille de ce fichier en ordonnant à la commande « updatedb » d’omettre certains noms de fichiers, dossiers ou certains chemins. II. Afficher la taille du

Lire cet article
Commandes et Système

Avoir un shell en couleur sous Root

I. Présentation Par défaut sous Debian, les shells des utilisateurs ont une syntaxe colorée. L’utilisateur « root » n’ayant pas pour vocation d’être beaucoup utilisé, il n’est lui pas coloré et offre donc un shell en noir et blanc. Dans ce tutoriel, nous allons voir comment avoir un shell coloré en étant en root. II. Procédure La définition de la coloration du shell sous Linux se fait à l’initialisation du shell de l’utilisateur. Nous allons donc modifier le fichier « /root/.bashrc » pour que celui-ci permette un affichage coloré au démarrage du shell de l’utilisateur « root » : vim /root/.bashrc Puis on dé-commentera les lignes suivantes qui sont normalement déjà présentes, ajoutez les si ce n’est pas le cas : On pourra alors recharger notre shell avec la commande suivante : . ~/.bashrc Nous verrons alors que notre shell renvoi des couleurs quand nous faisons un « ls » par exemple :

Lire cet article
Virtualbox

Augmenter la taille d’un disque dur VDI sous VirtualBox

I. Présentation Dans ce tutoriel, nous allons apprendre à augmenter la taille d’un disque dur au format .vdi pour les machines virtuelles VirtualBox. Cette augmentation de la taille du disque dur nous permettera d’avoir un même système sans perte de données mais avec un espace disque plus grand. Je souligne que la procédure à suivre est la même pour Windows et pour Linux. II. Voir l’emplacement des disques durs Dans un premier temps, il va nous falloir repérer où VirtualBox stock les disques durs des machines pour bien comprendre et analyser ce que nous faisons. On va pour cela faire un clic droit sur notre machine virtuelle puis aller sur « Configuration » : Nous irons ensuite dans « Stockage » pour voir quels sont les disques utilisés (ils sont au format « .vdi ») et surtout leur emplacement : On voit ici que le disque se nomme « Linux2.vdi » et qu’il se trouve dans « D:\Machines Virtuelles\Linux2\Linux2.vdi ». On voit également sa taille définie à l’installation (taille virtuelle

Lire cet article
Commandes et Système

Gérer les permissions sur un montage CIFS

I. Présentation Dans ce tutoriel, nous allons apprendre à gérer les permissions sur un montage CIFS. La plupart du temps, les montages de dossiers partagés se font en tant que root avec l’option « auto ». On peut cependant gérer les permissions, le propriétaire et le groupe propriétaire de manière précise en montant un partage CIFS sous Linux. II. Gestion du propriétaire et du groupe Nous pouvons déjà affecter un montage à un utilisateur précis plutôt qu’au super-utilisateur « root ». Il nous faut pour cela récupérer l’uid « User Identifier » et le gid « Group Identifier » de l’utilisateur dans le fichier « /etc/passwd ». Par exemple pour l’utilisateur « neoflow » : L’UID (chiffre rose de gauche) et le GID (chiffre rose de droite) sont tous les deux « 1001 ». Nous allons donc utiliser ces chiffres pour former notre ligne de montage dans le fichier « /etc/fstab ». Si nous souhaitons par exemple monter notre partage distant « \\192.168.1.32\partage » dans le dossier local « /media/remote_partage » : mkdir /media/remote_partage Puis on modifie le fichier « /etc/fstab »

Lire cet article
Batch

Changer le titre de la fenêtre DOS en cours

I. Présentation Le titre par défaut d’une fenêtre DOS n’est pas très original pour ne pas dire banal. En effet, elle est nommée « C:\Windows\system32\cmd.exe ». Nous allons qu’il est possible très simplement de changer le titre de la fenêtre DOS en cours, de quoi donner un nom plus sympa à votre fenêtre de scripts. II. Procédure Après avoir ouvert une Invite de commandes, saisissez la commande suivante : title Neoflow.fr Vous n’avez qu’à ajouter votre titre après la commande « title » et le tour est joué ! Regardez :

Lire cet article
Commandes et SystèmeServices

Créer un partage simple avec Samba

I. Présentation Dans ce tutoriel, nous allons voir comment créer un partage de fichiers rapidement avec Samba, le but est donc ici de partager un ensemble de fichiers présents sur un poste sur tout un réseau. Nouveau tutoriel Samba disponible : Serveur de fichiers Debian : installer et configurer Samba 4 On va supposer que le dossier que nous voulons partager est « /media/partage » mkdir /media/partage chmod 0777 /media/partage On peut également créer un dossier « test » dans ce dossier partagé pour vérifier que nous voyons bien son contenu plus tard : mkdir /media/partage/test1 II. Installation de Samba On commence donc par installer samba qui va nous permettre de rendre ce dossier accessible sur le réseau : apt-get install samba La configuration de samba se trouve dans « /etc/samba ». On fait directement une copie du fichier de configuration initial pour s’assurer d’avoir quelque chose à récupérer en cas d’erreur : mv /etc/samba/smb.conf /etc/samba/smb.conf.bak Nous allons ensuite recréer un fichier de configuration vierge qui

Lire cet article
Commandes et Système

Voir les entrées/ sorties disque avec iotop sous Linux

I. Présentation Dans ce tutoriel, nous allons voir comment analyser les entrées et sorties disque sur un système Linux. La commande « iotop » (Input/ Output) non native à Linux nous permet en effet de vérifier les écritures (entrées) et lectures (sorties) sur notre disque. II. Installation de la commande Il nous faut déjà commencer par installer la commande qui n’est pas présente par défaut dans la plupart des cas : apt-get update apt-get install iotop III. Utilisation Ensuite nous pourrons simplement l’utiliser en saisissant « iotop » et voir ce que cela nous affiche : On voit donc la liste de nos processus avec plusieurs informations sur leur utilisation du disque. On voit également un total de l’utilisation tout en haut du tableau. Actuellement, aucun processus n’utilise le disque en lecture ou en écriture. On pourrais simuler une lecture du disque en exécutant la commande « tree » depuis la racine « / » qui va donc lister tous les répertoires du disques. On commence pour cela

Lire cet article
Commandes et Système

Afficher la version d’un paquet présent dans les dépôts

I. Présentation Dans ce tutoriel, nous allons voir comment il est possible d’afficher la version d’un paquet présent dans les dépôts (les dépôts sont les endroits depuis lesquels nous téléchargeons les paquets pour les installer avec la commande « apt-get » sous Debian par exemple). II. Procédure On utilise pour cela la commande « apt-cache » native aux distributions Debian. Par exemple pour le paquet « apache2 » : apt-cache policy apache2 Nous aurons alors cette sortie : On voit ici que le paquet « apache2 » présent dans les dépôts est la version 2.2.16 du paquet. On voit également quelles sont les lignes prioritaires dans le fichier « sources.list » qui contient la liste des dépôts à utiliser. On remarque également un ligne « Installé : (aucun) » qui indique que le paquet n’est pas présent sur le système. Si le paquet été installé, nous aurions alors sa version également comme suivant :  

Lire cet article
Commandes et Système

Gérer le seuil d’utilisation de la SWAP

I. Présentation Par défaut, les systèmes Linux commencent à décharger l’utilisation de la RAM sur la SWAP à partir de moins de 60% de la RAM restante. Autrement dit, quand la RAM est utilisée au dessus de 40%, le système peut commencer à utiliser la SWAP. Cela peut poser des problèmes car la SWAP utilise des ressources sur le disque dur ce qui peut alors, d’une part ralentir l’accès aux autres données, mais aussi ralentir le traitement des informations par la SWAP si le disque dur n’est pas performant. Dans ce tutoriel, nous allons apprendre à gérer le seuil d’utilisation de la SWAP. II. Changement temporaire Nous allons dans un premier temps voir comment faire un changement pour temporaire, cela signifie que la valeur sera réinitialisée à « 60 » au redémarrage de la machine. Par défaut, ce seuil est inscrit dans le fichier « /proc/sys/vm/swappiness ». Voyons son contenu : cat /proc/sys/vm/swappiness On voit donc que le fichier contient « 60 », cela signifie que

Lire cet article