18/10/2024

Linux

BashCommandes et Système

Les variables spéciales shell sous Linux

I. Présentation Dans ce tutoriel, nous allons nous attarder sur les variables spéciales shell. Ces variables servent dans la plupart du temps dans les scripts bash car ils permettent de récupérer des informations sur les arguments passés ou sur l’exécution en cours. On utilisera ces variables spéciales dans nos scripts, la plupart du temps par un affichage avec « echo » ou pour le traitement des données et paramètres d’un script. Les variables spéciales se compose toujours de deux caractères, le premier est « $ » est le deuxième varie en fonction de la variable et du résultat voulu par exemple « $* » ou « $1 ». Pour tous le tutoriel, on considérera qu’on à un script « script.sh » contenant la trame suivante : #!/bin/bash echo « Arg = < variable spéciale > » ; Nous passerons ainsi divers paramètres pour tester leurs fonctionnements. On exécutera ce script via la commande suivante : bash script.sh Il nous faudra bien sur avant le passer en exécutable : chmod +x script.sh  

Lire cet article
Services

Wipe : Supprimer définitivement un dossier sous Ubuntu

I. Présentation Récemment, nous avons vu Shred qui permettait de supprimer définitivement un fichier sous Ubuntu, en le déchiquetant. Toutefois, ce dernier ne permettait pas la suppression de dossiers ou d’arborescences, c’est pourquoi dans ce tutoriel nous allons voir « Wipe » qui le permet. Il faut manipuler Wipe avec précaution parce que si vous supprimer définitivement une arborescence en faisant une erreur de manipulation, cela peut être catastrophique pour votre machine. II. Installation Contrairement à Shred, Wipe n’est pas intégré à la distribution Ubuntu, vous devez donc l’installer. Comme ceci : apt-get update apt-get install wipe   III. Utilisation Une fois l’installation terminée, nous allons pouvoir commencer à utiliser Wipe. Avant de commencer, créer une arborescence de test contenant des fichiers. Dans mon cas, j’ai créé un répertoire nommé « MesFactures » dans lequel sont stockées des factures « ma_facture_1.txt », « ma_facture_2.txt », etc… arbo wipe MesFactures/ Si vous utilisez la commande indiquée ci-dessus, Wipe vous retournera un

Lire cet article
Services

Shred : Supprimer définitivement un fichier sous Ubuntu

I. Présentation Lorsqu’on supprime un fichier sous Linux, et notamment Ubuntu, en utilisant la commande « rm » le fichier n’est pas totalement supprimé. Certes, suite à la suppression du fichier l’espace disque disponible a augmenté puisque qu’un fichier a été supprimé, mais, avec des logiciels appropriés il est possible de retrouver, de restaurer ces données. Dans le cas où les données contenues dans le fichier sont confidentielles, cela peut devenir embêtant, voir inquiétant si une personne réussie à récupérer le fichier que vous pensiez avoir supprimé définitivement. Heureusement, un utilitaire nommé « Shred » permet de déchiqueter un fichier dans le but de le supprimer puis de réécrire à son emplacement des données aléatoires, appelées « déchets ». Le seul inconvénient de Shred c’est qu’il permet uniquement le déchiquetage de fichiers mais pas pour un répertoire ou une arborescence. II. Utilisation Sur votre machine Ubuntu, vous n’aurez pas besoin d’installer de paquets supplémentaires puisque Shred est compris dans la

Lire cet article
Services

Installer un serveur VNC sous Ubuntu avec X11VNC

I. Présentation Nous allons voir à travers ce tutoriel comment installer et configurer un serveur VNC sous Linux, pour qu’à partir d’un client Windows l’on puisse se connecter à distance sur la machine Linux. Vous l’avez surement déjà fait de Windows à Windows, c’est tout simple, il suffit d’installer UltraVNC ou un autre logiciel de ce genre. Sous Linux, ce n’est pas beaucoup plus compliqué… Quelques lignes de commandes, deux trois petits ajustements dans la configuration de l’application pour que la connexion puisse être établie. Pour réaliser ce tutoriel, il vous faut : 1 PC sous Windows XP avec un client VNC d’installé. 1 PC sous Ubuntu (ou équivalent) ayant accès à internet. Chaque instance de x11VNC exécutée utilise un port différent (ce qui est logique), ainsi le premier X11VNC exécuté écoutera sur le port 5900, le second sur 5901, le troisième 5902, etc. II. Installation du paquet X11VNC Sur la machine Ubuntu, installez le paquet « x11vnc » sans

Lire cet article
Commandes et Système

Rendre ses couleurs à vim

I. Présentation Dans ce petit tutoriel, nous allons rendre ses couleurs à vim. Il arrive parfois lors de son installation que vim n’affiche pas les couleurs (commentaires, commandes, …) comme suivant : II. Procédure Les couleurs dans les fichiers de configuration ou les scripts (entre autre) nous permettent d’avoir une vue plus clair des fichiers et de nous repérer plus facilement. Pour activer l’affichage des couleurs dans vim, il faut se rendre dans son fichier de configuration : vim /etc/vim/vimrc Puis dé-commenter la ligne suivante après s’être assuré que le paramètre « syntax » est bien « on » : Nous aurons maintenant les couleurs dans nos scripts et nos fichiers de configuration :

Lire cet article
Bash

Vérifier la présence d’un répertoire ou d’un fichier

I. Présentation Dans ce tutoriel, nous allons voir comment vérifier la présence d’un dossier ou d’un fichier dans notre OS Linux. Nous allons voir comment mettre une condition en action selon le résultat de notre vérification. Lors de la construction d’un script, il peut être intéressant de ne créer une fichier ou un dossier uniquement si il n’est pas présent par exemple. C’est ce que ce tutoriel va nous apprendre à faire. II. Vérifier la présence d’un dossier Dans une condition construite dans un fichier bash, il est possible de vérifier par une option si un dossier existe : #!/bin/bash if [ -d « /home/neaj/dossier1 » ];then echo « Le dossier1 existe ! »; fi On créer donc notre condition « if « . Le « -d » est l’option qui indique que nous voulons voir si le dossier précisé juste derrière existe. Le « d » est pour « directory ». Si c’est le cas, on écrira « Le dosser1 existe ! ». Enfin on fermera notre condition avec « fi ». On peut imaginer

Lire cet article
BashCommandes et Système

L’enchaînement des commandes sous Linux

I. Présentation Sous Linux, quand nous travaillons en ligne de commande, il est souvent bien pratique d’avoir la possibilité d’exécuter plusieurs commandes en une seule ligne. Par exemple si l’on souhaite télécharger, décompresser et ouvrir une archive, on exécutera une seule ligne de commande comme suivant: wget http://archive.tar.gz/ ; tar zxvf -C /opt/ archive.tar.gz ; cd /opt/archive/ Au lieu d’exécuter plusieurs de ces commandes séparément et avec une commande par ligne. Il est néanmoins important dans l’exécution de ces commandes que chacune réussissent pour que la prochaine soit utilisable et utile. II. les caractères d’enchainement Il existe sous Linux trois caractères qui permettent l’enchainement des commandes, il s’agit de « ; », « || » et « &&. Chacun de ces trois caractères ont un type d’exécution différents au niveau de l’enchainement des commandes. III. Le point virgule Un enchainement de commande avec un point virgule comme c’est le cas dans l’exemple enchaînera les commandes sans se soucier de la réussite ou de l’échec de

Lire cet article
Commandes et SystèmeServices

Sécuriser DNS Bind9 – Serveur unique

I. Présentation Le serveur de votre architecture se doit d’être sécurisé afin de ne pas se retrouver avec un serveur en déni de service et de ne pas voir s’arrêter la majorité des services qui s’appuient sur le DNS. Se protéger, oui, mais contre quoi ? Contre les attaques de types « DNS Spoofing » et « DNS cache poisoning ». La sécurisation d’un serveur de noms autonome, unique, passe essentiellement par le paramétrage des restrictions des requêtes client, sur le transfert de zone, et de ne pas afficher la version de Bind installée sur votre serveur lorsqu’on lui demande de l’indiquer. Toutefois, un des meilleurs moyens d’augmenter la sécurité de Bind est de le maintenir à jour, c’est-à-dire d’installer la version la plus récente disponible afin d’éviter d’installer un système contenant des vulnérabilités connues. Dans ce tutoriel, je pars du principe où vous maitrisez Bind9 et ses différents fichiers de configuration. Je vous rappelle qu’un tutoriel sur la mise

Lire cet article
Commandes et SystèmePare-Feu

Configurer un routeur sous Linux

I. Présentation Nous allons dans ce tutoriel apprendre à mettre un en place un routeur sous Linux. Les distributions sous Linux sont très polyvalentes et cela permet entre autre de les transformer en véritables routeurs. Il faut bien sur pour cela que notre machine Linux dispose d’au moins deux interfaces réseaux car la première fonction d’un routeur et de faire la passerelle (gateway) entre un réseau et un autre qui ne pourraient communiquer sans. II. Configuration des deux interfaces Nous allons commencer par configurer nos deux interfaces avec des IP fixes. Un routeur est un élément central d’un réseau et toutes les machines de ce réseau s’y réfèrent pour leurs requêtes. Il est donc obligatoire que notre routeur ai une IP fixe sur chacune de ces interfaces. Nous travaillerons ici sur l’interface « eth0 » qui sera orientée vers le réseau simulant une réseau externe « WAN » en 192.168.1.0/24 et une seconde interface « eth1 » qui sera vers notre « LAN » en 192.168.10.0/24. Aprés vous

Lire cet article
Autres

Installation de Proxmox 2

I. Présentation Proxmox est un OS de virtualisation, plus exactement un hyperviseur de machines virtuelles. La principale fonctionnalité de Proxmox est en effet de gérer et de virtualiser d’autres machines tout comme des solutions tel que VmWare ou VirtualBox. Proxmox se rapproche plus de VmWare ESX dans le sens ou c’est un OS dédié à cette tâche alors que des solutions comme VmWare player ou VirtualBox seront seulement installés sur des clients qui sont eux même supporter par un autre OS. Proxmox est une solution libre, elle constitue donc une alternative aux solutions VmWare ESX parfois couteuses. Proxmox est passé en version 2.0 ou une amélioration très notable à été faite au niveau de l’interface de gestion. II. Télécharger l’image Comme tout OS, il faut commencer par se procurer l’image voulue. La dernière version en date de Proxmox est la version 2.2 disponible sur ce lien : http://www.proxmox.com/downloads/proxmox-ve/iso-images/132-proxmox-ve-2 Une fois l’image téléchargée, mettez la sur un CD ou une clé

Lire cet article
Commandes et Système

Activer l’autocomplétion bash sous Linux

I. Présentation L’auto-complétion sous Linux est ce qui existe nativement au niveau du parcours des fichiers. Par exemple si vous commencez à entrer « ls /home/ » puis que vous appuyez sur [TAB] vous verrez l’ensemble des fichiers et dossiers du répertoire. Également si vous entrez le début du nom d’un fichier et que vous appuyez sur [TAB], la fin du fichier s’écrit tout seul. Ce que nous cherchons à faire ici est d’avoir le même procédé pour les commandes Linux ou les paquets lors d’un apt-get. II. La procédure La procédure est assez simple, il  faut se rendre dans le fichier /etc/bash.bashrc en root et décommenter les lignes suivantes : if [ -f /etc/bash_completion ] && ! shopt -oq posix; then . /etc/bash_completion fi Il faut ensuite recharger votre terminal pour qu’il applique les nouveaux paramètres : source .bashrc Vous pourrez alors constater que si vous entrer « apt- » puis que vous appuyez sur [TAB] vous aurez la liste des possibilités de

Lire cet article
Services

Installation d’OpenVPN

I. Présentation Le VPN ou Virtual Private Network est un élément clé des réseaux d’aujourd’hui. Il est aussi un élément sensible d’un parc informatique car il présente une porte d’entrée pour les éléments extérieurs. Il existe deux mode de fonctionnement d’un service VPN, soit en Host-to-LAN soit en LAN-to-LAN. Dans ce tutoriel, nous allons apprendre à mettre en place un serveur OpenVPN Host-to-LAN sous une ditribution Linux. Un VPN Host-to-LAN signifie que nous voulons donner la possibilité à un client qui est sur un autre LAN de pouvoir travailler comme si il était dans le même LAN que le serveur et ainsi de pouvoir profiter des ressources de notre réseau local. Cela passe par la création d’un tunnel qui traverse d’autres LAN ou même Internet et dans lesquels passent des données cryptées. II. Les pré-requis Pour faire ce tutoriel, il nous faut un serveur sous distribution Linux comportant deux interfaces. Une qui se situe dans le LAN (ici eth1 pour

Lire cet article
Commandes et Système

La commande history sous linux

I. Présentation La commande history est une commande POSIX (commune à toutes les distributions type Unix) qui permet de remonter dans les commandes que nous avons passées. Il vous arrive probablement souvent de remonter vos commandes pour les réexecuter avec le « UP » (flèche du haut) de votre clavier, vous faites ainsi défiler l’ensemble des commande que vous avez exécutées. Cela est possible grâce à « history ». En effet, quand vous passez une commande, celle-ci est stockée dans un fichier du nom de « .history » du répertoire « home/$User ».Si l’utilisateur « paul » tape les commandes « ls »et « cd / », celles-ci seront stockées dans le fichier « /home/Paul/.history » et quand Paul voudra remonter dans ses commandes, c’est le processus et le fichier « .history » qui l’aideront. II. La commande Tapez la commande suivante pour voir vos dernières commandes passées: history Les commandes que vous verrez seront alors uniquement celles de l’utilisateur avec lequel vous êtes connecté. Pour voir les commandes d’un autre utilisateur, il faut aller ouvrir le fichier

Lire cet article
Services

DNS avec Bind 9

I. Présentation Un serveur DNS (Domain Name System) est un serveur de noms qui gère les correspondances entre les noms de domaine et les adresses IP. Ce qui est fort utile pour naviguer sur internet, imaginez-vous mémoriser l’adresse IP de chaque site sur lequel vous souhaitez aller ? On peut penser que sans serveur DNS il n’y a plus d’internet. De plus, dans le cas d’un réseau local si vous souhaitez faire de la résolution de noms c’est à dire que les hôtes du LAN puissent communiquer entre elles grâce à leur nom de domaine, le serveur DNS permet de donner un nom de domaine complet à une machine. Ainsi il y aura une correspondance entre l’adresse IP de l’hôte et le nom que vous lui donnez grâce au DNS. A. Quels sont les serveurs DNS utilisés pour naviguer sur internet ? Dans le monde il y a uniquement quelques serveurs DNS racine (appelé aussi serveurs Roots) – qui sont

Lire cet article
Commandes et Système

Monter un périphérique sous Ubuntu Server

I. Présentation Lorsqu’on est sous Ubuntu Desktop ou je dirais même de manière encore plus évidente sous Windows, il suffit de brancher le périphérique au PC pour qu’il soit automatiquement détecté et monté dans le système d’exploitation. Ce qui permet une utilisation immédiate du périphérique. Toutefois, lorsqu’on se retrouve sous Ubuntu Server c’est-à-dire sans interface graphique, il faut manipuler un peu pour pouvoir accéder au contenu du périphérique. On se doit donc de monter manuellement le périphérique. Dans cette exemple, je monte une clé USB dans le système mais peut importe le périphérique que vous souhaitez monter, la méthode reste la même. La manipulation consiste à créer un point de montage et d’y associer la clé USB pour pouvoir ensuite y accéder. Le point de montage crée une relation entre le périphérique et le système hôte. II. Où créer le point de montage ? On crée le point de montage dans le répertoire « /media » car on y trouve

Lire cet article