19/12/2024

Linux

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
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
Services

Installation de Webmin

I. Présentation de Webmin Webmin est un outil opensource qui va vous permettre d’administrer un serveur Unix via une interface Web. Nous allons dans ce tutoriel décrire son installation. Je tiens tout de même à préciser que Webmin est un formidable outil d’administration SI vous maitrisez les services que vous administrez. En effet, Webmin permet d’administrer par défaut bon nombre de services mais, prudence tout de même, un clic sous webmin et vous pourriez vous retrouver dans une fâcheuse situation. Allez c’est parti ! II. Installation de Webmin Avant toute chose je tiens à préciser que je fonctionne sous Ubuntu 12.04 et la version de Webmin installé est la 1.600. Ce tutoriel s’applique au moins à partir d’Ubuntu 10.04, la compatibilité est à confirmer pour le reste. On va commencer par se positionner dans le répertoire « tmp » : cd /tmp On récupère la dernière version stable de Webmin : wget http://www.webmin.com/download/deb/webmin-current.deb On installe des dépendances nécessaire : apt-get install perl

Lire cet article
Commandes et Système

Trier les lignes d’un fichier selon un mot avec sed

I. Présentation Dans ce tutoriel, nous allons apprendre à sortir uniquement les lignes qui nous intéressent dans un fichier donné. Dans un gros fichier comme un fichier de logs, il peut être utile de n’afficher qu’un type de ligne, par exemple celles qui contiennent le mot « sshd » pour trier les processus de connexion sshd dans le fichier auth.log de votre système. Nous prendrons ce fichier (/var/log/auth.log) et ce processus (sshd) comme exemples pour ce tutoriel. Le fichier auth.log contient donc différents types d’informations concernant plusieurs processus. II. La commande Nous allons utiliser la commande sed pour n’afficher uniquement les lignes contenant le mot « sshd » pour les écrire ensuite dans un fichier à part. Nous allons donc utiliser cette commande que j’expliquerais par la suite : sed -n -e ‘/sshd/p’ auth.log > authssh.log sed : sed est une commande qui permet de manipuler des fichiers ou beaucoup d’autres types d’entrée -n : Indique qu’il faut afficher uniquement les lignes qui nous

Lire cet article
Commandes et Système

Enlever les commentaires d’un fichier

I. Présentation Dans certains fichiers de configuration la présence des commentaires (reconnaissables car ils commencent par ‘#’) peut rendre difficile la lecture, il peut être utile d’enlever ces lignes pour ne garder que les lignes de configurations utiles. Avec la commande sed, il est possible de traiter entièrement le fichier, d’en enlever tous les commentaires et de sauvegarder le résultat dans un autre fichier (sans changer le fichier initial). II. Exemple Admettons que nous ayons une fichier (config.txt) contenant ces lignes : Début du fichier # commentaire # commentaire # commentaire milieu # commentaire # commentaire Fin de ficher Si nous ne voulons garder que les lignes dé-commentées, il nous faut appliquer cette commande et sauvegarder dans un fichier config2.txt sed ‘/^#/d’ config.txt > config1.txt La sortie de cette commande sera Début de fichier milieu Fin de fichier sed est une commande qui permet de manipuler des fichiers ou beaucoup d’autres type d’entrée. /^#/ est la chaine de caractère que

Lire cet article
Commandes et Système

L’utilisation de la combinaison des commandes grep et cut

I. Présentation Dans le but de récupérer certaines parties d’un résultat suite à la commande grep, il peut paraitre utile d’utiliser la commande cut qui coupera notre résultat à partir d’un caractère par exemple. II. Exemple d’utilisation Nous souhaitons par exemple dans un script bash mettre notre adresse IP dans une variable. En toute logique la commande pour récupérer notre adresse IP est la suivante : Nous avons alors trop d’informations puisque nous souhaitons uniquement l’adresse IP de notre machine. Nous pouvons alors utiliser grep pour nous retrouver seulement avec une seule ligne, nous savons que la ligne contenant notre IP contient également le terme « Bcast », nous passons alors cette commande pour nous retrouver uniquement avec cette ligne : Voila qui est déjà mieux, cependant nous ne voulons toujours uniquement notre IP. Nous voyons que notre ligne est plusieurs fois séparée par des espaces. Cela tombe bien, la commande cut permet de découper une entrée en utilisant un

Lire cet article
Commandes et Système

Changer de channel avec sa carte wifi

I. Présentation Les liaisons wifi peuvent se faire sur un choix de 13 ou 14 canaux sur lesquels elles peuvent se positionner. Pour relier deux éléments wifi entre eux (par exemple un laptop et une box), ceux-ci ont besoin de « parler » sur le même channel (canal). Le plus souvent, ce sont les channels 11 et 6 qui sont utilisés en Europe. II. la marche à suivre Pour changer sa carte wifi de channel, il faut plusieurs lignes de commande. Dans cette illustration, nous nommerons notre interface wifi « wlan0 ». Il faut d’abord désactiver notre interface puis la passer en mode managed afin de pouvoir modifier sa configuration: ifconfig wlan0 down iwconfig wlan mode managed Nous la réactivons ensuite pour la changer de channel, par exemple nous la mettons ici sur le channel 5 : ifconfig wlan0 up iwconfig wlan0 channel 5 Il est aussi possible de la mettre en channel auto, l’interface cherchera alors le channel du correspondant indiqué et ce

Lire cet article
Commandes et Système

Résoudre le problème de resolv.conf qui se régénère automatiquement

I. Présentation Sous Ubuntu, lorsque l’on souhaite renseigner un serveur DNS ou le domaine sur lequel se trouve la machine, on édite le fichier resolv.conf se trouvant dans le répertoire « etc ». Sauf qu’il arrive parfois que le fichier resolv.conf ressemble à ceci : De ce fait, dès que vous allez redémarrer la machine le fichier va se vider et vos modifications seront donc effacés ce qui aura pour conséquence que vous ne pourrez plus faire de la résolution de noms donc plus de navigation internet, d’installation de paquets, … La solution consiste à installer le paquet « resolvconf » dans le but de surcharger la configuration. II. Installation du paquet resolvconf apt-get update apt-get install resolvconf Note : pour pouvoir installer le paquet il vous faut un accès à internet et donc un DNS de renseigné sur votre machine, renseignez donc le fichier « /etc/resolv.conf » pour pouvoir faire l’installation. III. Configuration des DNS Une fois l’application installée, nous allons indiquer les serveurs DNS

Lire cet article
Commandes et Système

Configurer une interface réseau sous Ubuntu Server

I. Présentation Les interfaces graphiques c’est bien pratique mais quand il n’y en a pas les choses peuvent vite devenir compliquée. C’est pourquoi je vais vous montrer à travers ce tutoriel comment configurer une interface réseau sous Ubuntu Server c’est à dire une version sans interface graphique. Vous pouvez aussi réaliser ce tutoriel sous Ubuntu Desktop en utilisant le Terminal. Remarque : vous devez être en mode Super-utilisateur pour pouvoir modifiez les fichiers. II. Procédure Sous Ubuntu Server et sous Ubuntu Desktop également, pour configurer manuellement une interface réseau à l’aide d’un fichier de configuration, il faut éditer le fichier suivant : /etc/network/interfaces Pour configurer une interface réseau de manière complète, le fichier « interfaces » doit contenir ceci : auto eth0 allow eth0 inet static # L’adresse IP address X.X.X.X # Le masque de sous-réseau netmask X.X.X.X # La passerelle gateway X.X.X.X # L’adresse réseau network X.X.X.X # L’adresse de diffusion broadcast X.X.X.X Note : eth0 sert à identifier l’interface, si

Lire cet article