18/10/2024

Linux

Services

Supervisez votre site web avec Crawltrack

I. Qu’est ce que crawltrack ? Crawltrack est un service fonctionnant sous Linux qui permet de superviser votre site web. Il génère à la visite de votre page web des informations sur les visiteurs, le nombre de visiteurs durant une période , le nombre de hits (pages visitées ..). Il renseigne sur la façon dont les utilisateurs on joints votre site, par moteur de recherche ( google, yahoo), par entrée directe ou par lien sur un autre site. Crawltrack permet aussi de montrer les erreurs qui se sont produites sur vos pages/ sites et les téléchargements qui ont été effectués. Le second rôle de crawltrack est la sécurité de votre site web, il met à disposition des tests et des analyses rapportant les tentatives d’attaques sur vos sites. II. Pré-requis Un serveur apache pour accéder à l’interface web de crawltrack et à vos sites : apt-get install apache2 Un service php pour permettre aux scripts php de crawltrack de travailler

Lire cet article
Commandes et Système

Compresser et décompresser en tar.gz sous Linux

I. Présentation Dans ce tutoriel, nous allons apprendre à compresser et décompresser des données au forma « .tar.gz » sous Linux. II. Compresser Pour compresser un fichier ou un répertoire au format « .tar.gz » il faut utiliser la commande POSIX « tar » comme suivant : tar czvf < nom_archive >.tar.gz < nom_rep > Note : « <nom_rep> » est ici le nom et le chemin de la donnée à compresser (répertoire ou simple fichier). « c » : créer une nouvelle archive « z » : permet d’activer la compression « gzip » pour un taux de compression plus important « v » : mode verbeux, permet d’afficher dans le détail les fichiers compressés « f » : indication de la donnée à compresser III. Décompresser Pour décompresser une archive qui est au format « .tar.gz » il faut à nouveau utiliser la commande POSIX « tar » comme suivant : tar xzvf < nom_archive >.tar.gz Ici l’archive se décompressera dans le répertoire où l’on se situe. « x » : extraire une archive « z » : permet de décompresser le « gzip » « v »

Lire cet article
Commandes et Système

Créer un lien symbolique sous Linux

I. Présentation Dans ce tutoriel, nous allons apprendre à faire des liens symboliques entre des répertoires et des fichiers. Un lien symbolique se rapproche d’une copie directe ou d’un raccourci. Un répertoire ou un fichier est l’exacte copie (en temps réelle) d’un autre. Souvent les liens symboliques sont utilisés pour simplifier les arborescences (nom de répertoire ou de fichier trop complexe ou mal placés). II. Lien symbolique entre répertoire D’une manière générale, voici comment utiliser la commande « ln » pour créer un lien symbolique : ln -s dossier_cible nom_du_lien Dans le contexte de mon exemple, je souhaite qu’en allant sur le répertoire /opt/jdk, j’atterrisse en réalité sur /opt/jdk1_7.2. Cela permet de facilement gérer le changement de version de JAVA. Mais ce n’est qu’un exemple 🙂 Nous allons commencer par créer lien symbolique entre deux répertoires. Nous utiliserons pour cela la commande « ln » (links) : ln –s /root/jdk1_7.2 /root/jdk Le lien symbolique « /root/jdk » sera alors créé. Note : Il faut

Lire cet article
BashCommandes et Système

Trier des fichiers selon une date avec FIND

I. Présentation Dans ce tutoriel, nous allons apprendre à tirer et à agir sur des fichiers et des dossiers selon une date. Cela pourra être leur date de création, de modification ou de dernier accès. Nous pourrons effectuer plusieurs actions sur ces données une fois que nous saurons les trier. II. Les options FIND Pour ce faire, nous allons nous aider de la commande « find » qui sert à lister et trier des fichiers selon certaines options. Nous pouvons en effet avec FIND définir le nom ou une partie du nom de ce que nous cherchons ( option « -name < > »), définir sur combien de niveau (arborescence) on souhaite chercher ( option « -maxdepth < > »), depuis où, etc … Par exemple si nous souhaitons chercher toutes les archives faites dans le dossier « /var/log » qui sont plus âgées que 5 jours : find /var/log/ -maxdepth 3 -name « *gz* » -ctime +5 Explication : « /var/log » : indique le répertoire ou nous allons chercher. Nous

Lire cet article
Commandes et Système

Monter un partage CIFS sous Linux

I. Présentation Dans ce tutoriel, nous allons apprendre à monter un partage CIFS sous Linux. On commence par installer un paquet nommé « cifs-utils » qui nous permettra de monter des partage CIFS : apt-get install cifs-utils   II. Monter un partage à la main Il nous faut ensuite créer un répertoire dans lequel nous allons monter notre répertoire distant. Nous allons ici le nommer « partage » et nous allons le placer dans « /media/ » : mkdir /media/partage Nous allons maintenant utiliser la commande « mount » pour monter notre partage distant dans le dossier précédemment créé : mount -t cifs \\\chemin /media/partage Nous pouvons également spécifier des identifiants (login/ mot de passe) : mount –t cifs –o username=,password= \\\chemin /media/partage On pourra alors effectuer la commande « mount » pour voir les montages actifs. Pour démonter notre partage, nous utilisera la commande « umount » et nous spécifierons ensuite l’endroit où l’on a monté notre dossier distant : umount /media/partage   III. Automatisation du montage au démarrage Sous Linux,

Lire cet article
Autres

Sécuriser le port 8005 de Tomcat

I. Présentation Dans ce tutoriel, nous allons étudier le fonction et la sécurisation du port 8005 de Tomcat. Par défaut sur Tomcat, trois ports sont paramétrés : le port 8080 pour les connexions clients depuis le navigateur, le port 8009 qui sert au protocole AJP pour la liaison entre Tomcat et Apache ainsi que le port 8005 qui sert à l’extinction du serveur. II. Extinction par le port 8005 Les scripts d’extinction du serveur utilisent cet élément qui est configuré dans le fichier « conf/server.xml » : Il faut se connecter en telnet en local depuis une connexion SSH pour pouvoir l’utiliser. En effet, le port 8005 n’est accessible uniquement en local. Quiconque aura une connexion en local sur le serveur (type SSH) pourra avoir accès au port 8005 : Si nous saisissons ici n’importe quelle commande, la connexion se fermera : Nous aurons alors le message suivant dans le fichier « logs/catalina.out » qui contient les logs du serveur Tomcat : La commande

Lire cet article
Autres

Configurer Tomcat avec SSL

I. Présentation Dans ce tutoriel, nous allons sécuriser Tomcat en configurant la possibilité ou l’obligation de passer par du HTTPS plutôt que par du HTTP. Les échanges HTTPS sont chiffrés de sorte qu’ils ne soient plus lisibles si on ne dispose pas des bon certificats de déchiffrement. Pour effectuer ce tutoriel, il faut que vous disposiez d’un Tomcat opérationnel. Je fait ce tutoriel avec la version 7 de Tomcat mais la procédure est la même depuis Tomcat 5. Son répertoire d’installation est dans mon cas « /opt/tomcat ». II. Génération du Keystore Un Keystore est un fichier qui va comprendre la clé privée du serveur ainsi que le certificat auto-signé. Pour plus de clarté, il est plus simple de le stocké non loin du répertoire d’installation de Tomcat7. Pour le généré, on utilise la commande suivante : keytool -genkey -alias tomcat -keyalg RSA -keystore /opt/tomcat/keystore Vous aurez alors à répondre à plusieurs questions afin de remplir votre Keystore : III. Création du

Lire cet article
Autres

Changer le port d’écoute de Tomcat

I. Présentation Par défaut, le serveur web Tomcat écoute sur le port 8080. Il peut arriver de vouloir pour des raisons diverses le faire écouter sur une autre port, c’est ce que nous allons voir dans ce tutoriel. Nous présumons ici que vous avez déjà un Tomcat installé et opérationnel sur le port 8080. II. Modification de la configuration La manœuvre est assez simple. Nous allons commencer par fermer notre serveur pour changer ses paramètres, en étant positionné à la racine de notre serveur Tomcat : bin/shutdown.sh On pourra ensuite s’assurer que notre serveur est bien éteint avec la commande suivante: ps -edf | grep tomcat Nous pourrons ensuite nous rendre dans le fichier de configuration principal de tomcat « conf/server.xml ». Il nous faudra y trouver les lignes suivantes : Nous modifierons ensuite la valeur de « port= » pour y mettre le numéro de port sur lequel nous souhaitons que notre Tomcat écoute. On devra ensuite redémarrer notre serveur Tomcat : bin/startup.sh

Lire cet article
Commandes et SystèmeNetfilterServices

Appliquer des règles Iptables au démarrage

I. Présentation Les règles Iptables sont les règles qui régissent la sécurité et la façon de fonctionner du pare-feu Netfilter , présent nativement sur les distributions Linux. Lors du redémarrage d’une machine, les règles Iptables mises en place sont remises à zéro, elles ne sont pas nativement sauvegardées dans le système. Il peut alors être intéressant de savoir les récupérer et les ré-appliquer dès le démarrage de la machine ou bien d’une interface. Nous allons donc voir dans ce tutoriel comment charger et récupérer nos règles Iptables au démarrage de notre machine. II. Sauvegarde des règles de filtrage Iptables contient une commande permettant de sauvegarder la table de filtrage dans un fichier. Cette commande peut nous être utile pour sauvegarder nos règles et donc les récupérer plus tard. Par exemple, pour sauvegarde la configuration de notre table de filtrage Iptables dans un fichier « /etc/iptables.rules » , il faut saisir la commande suivante: iptables-save > /etc/iptables.rules Ensuite, si vous consultez le contenu

Lire cet article
Commandes et Système

Changer le mot de passe d’un utilisateur avec Passwd

I. Présentation Il peut arriver d’avoir besoin de changer le mot de passe d’un utilisateur sur une machine Linux, c’est une opération trés simple qui s’effectue avec la commande POSIX « passwd ». Dans ce tutoriel, nous allons donc apprendre à changer le mot de passe d’un utilisateur simple mais aussi celui de root avec cette commande. Ce qu’il faut savoir, c’est que seul un utilisateur peut changer son propre mot de passe (s’il y est autorisé) et que root peut changer tous les mots de passe. Les mots de passe sont stockés dans le fichier « /etc/shadow » où ils sont chiffrés. II. Le fichier /etc/shadow Le fichier « /etc/shadow » contient les mots de passe cryptés des utilisateurs. Sa création a été faite afin de sécuriser un peu le système d’authentification car les développeurs ont jugés dangereux de mettre le mot de passe et les autres informations utilisateurs dans un même fichier. En effet, le fichier « /etc/passwd » est lisible par

Lire cet article
Commandes et SystèmeSSH

Fermer une session TTY à distance

I. Présentation Il peut parfois arriver que l’on oublie de fermer une session TTY (en connexion « physique ») à une machine ou un serveur. Auquel cas il peut être pratique de savoir fermer cette connexion à distance (via SSH par exemple). C’est ce que nous allons voir dans ce tutoriel. II. Fonctionnement Pour mieux comprendre comment nous allons faire, il faut savoir que chaque action sur une machine est présente sous la forme d’un processus désigné par un numéro d’identification: le PID. La commande POSIX « ps » nous permet d’afficher les processus en ligne de commande sous une machine UNIX : ps -ef Options : « -e » permet d’afficher tous les processus actifs « -f » permet d’avoir un affichage plus détaillé. Nous verrons alors beaucoup de processus actifs, si on affiche un exemple de ces processus : Nous pouvons ici voir plusieurs informations intéressantes. Ce qu’il faut savoir est que la première colonne désigne l’utilisateur qui a lancé la commande. La deuxième est le

Lire cet article
Commandes et SystèmeSSH

Gestion du temps d’inactivité d’un shell

I. Présentation Il peut parfois arriver lorsqu’une connexion shell est établie sur un poste (SSH ou direct) d’oublier par négligence de fermer cet accès créant ainsi une ouverture à d’éventuelles attaques physiques. On peut imaginer qu’en allant sur une urgence ou en simple pause, une autre personne vienne sur le poste pour prendre le contrôle de l’accès SSH ou TTY de votre machine. Nous allons donc configurer notre shell pour qu’il se ferme automatiquement au bout de quelques minutes d’inactivité. Nous allons faire en sorte qu’au bout de 5 minutes d’inactivité, le bash se ferme automatiquement. Cela évitera que si, par négligence, on laisse ouvert un terminal sur notre serveur et quelqu’un puisse venir derrière le prendre pour l’utiliser en ayant alors un accès total à la machine. Dans le « man » de bash, nous apprenons que la valeur « TMOUT » pour « Timeout » (délai d’expiration) est le délai d’inactivité en seconde après lequel une session sera

Lire cet article
Commandes et Système

Sécuriser l’édition du GRUB

I. Présentation Le GRUB est le système qui va s’occuper du menu de démarrage de notre système quand nous installons un OS Linux. Le GRUB est un outil qui permet de détecter les différents systèmes d’exploitation présents sur la machine et de les lister au démarrage de celle-ci pour nous orienter vers quel OS démarrer. C’est un outil que l’on peut optimiser afin de mettre en place une meilleure protection de notre machine. II. Détecter la version du GRUB La méthode de sécurisation d’une application dépend de sa version. C’est notamment vrai pour le GRUB. Nous devons donc dans un premier temps détecter la version du GRUB que nous avons sur notre machine. La version du GRUB s’affiche au démarrage de la machine comme suivant : Pour connaitre la manière de faire sur une machine déjà démarrée, nous allons utiliser le paquet « dpkg » qui sert à donner des informations sur les paquets installés. On utilisera donc la commande

Lire cet article
Commandes et Système

Récupérer des informations sur son système Linux avec UNAME

I. Présentation Dans ce tutoriel, nous allons apprendre à récupérer des informations sur notre système avec la commande uname. Ces informations peuvent être le nom d’hôte, le processeur de notre machine, la version du noyau.. II. Utilisation uname est une commande POSIX (présente sur tous les systèmes UNIX) qui permet de récupérer ce genres d’informations. On utilise rarement la commande uname seule mais plutôt avec l’option « -a » ou « -all » qui affiche l’ensemble des informations systèmes importantes : L’option « -a » permet de regrouper l’ensemble des autres options disponibles sur la commande « uname ». Dans l’ordre, ces commandes sont les suivantes : « -s » ou « –kernel-name » : C’est le nom du noyau, Ici « Linux ». « -n » ou « –nodename » : C’est le nom d’hôte de votre machine, ici « srvlinux1 ». « -r » ou « –kernel-release » : C’est la version actuelle du noyau , ici « 2.6.32-5-686 » soit squeeze en 32 bits. « -v » ou « –kernel-version » : C’est la date à laquelle a été compilé le noyau (date de mise à jours

Lire cet article
SSH

Utilisation de Cluster SSH

I. Présentation Cluster SSH est une application disponible sous Linux permettant d’administrer via SSH plusieurs hôtes en même temps, c’est à dire que lorsque vous saisissez une commande celle-ci s’exécute sur l’ensemble des hôtes du cluster, mais en sélectionnant une fenêtre précise parmi celle ouverte vous pouvez exécuter une commande dans un seul shell. II. Installation du paquet clusterssh apt-get install clusterssh III. Syntaxe de la commande cssh user1@nom_serveur1 user2@nom_serveur2 IV. Exécution de Cluster SSH sur plusieurs serveurs Dans cette exemple 2 serveurs avec un client SSH sont utilisés : – serveur1 avec l’IP 192.168.1.200 et l’utilisateur Root. – serveur2 avec l’IP 192.168.1.201 et l’utilisateur Root. La connexion s’effectue… Une fois que c’est fait, il ne reste plus qu’à s’authentifier avant d’accéder au shell de chacun des serveurs. V. Saisir une commande sur tous les serveurs du cluster en même temps Il suffit de se positionner sur le champ de saisie de CSSH qui apparaît sous les fenêtres des serveurs.

Lire cet article