Sam travaille comme analyste de réseau pour une société de trading algorithmique. Il a obtenu son baccalauréat en technologie de l’information de l’UMKC.
Wireshark est un outil très utile pour dépanner et analyser le trafic réseau. Wireshark peut capturer des paquets et décoder les protocoles dans une belle représentation graphique.
PfSense dispose d’une fonction de capture de paquets intégrée, mais cette fonctionnalité nécessite que le fichier de capture soit téléchargé sur un autre ordinateur avant de pouvoir être visualisé avec un analyseur.
Une meilleure alternative consiste à exécuter Wireshark directement sur pfSense. En exécutant le programme sur un système pfSense en direct, vous pouvez capturer le trafic et le visualiser en temps réel. Le fait de pouvoir surveiller le trafic sur le réseau en temps réel facilite grandement le dépannage des problèmes.
En exécutant Wireshark sur une session SSH, vous pouvez analyser les paquets à partir d’un emplacement distant sans même avoir à être sur le même réseau que le routeur pfSense.
Précautions
Si vous prévoyez de faire cette installation sur un routeur ou un pare-feu de production, vous devez vous assurer de le faire pendant une fenêtre de maintenance. Lors d’une installation comme celle-ci, il est toujours possible que vous assistiez à une brève interruption du trafic réseau pendant le redémarrage des services et le rechargement des règles.
L’installation de Wireshark sur pfSense n’est pas officiellement prise en charge, mais l’un des avantages d’un système ouvert est la possibilité d’ajouter des fonctionnalités supplémentaires.
J’ai testé cette procédure sur pfSense 2.0.1.
Installation des packages requis
Pour commencer, deux packages doivent être installés, Xauth et Wireshark. Le package Xauth gère l’authentification des sessions X et est nécessaire pour le transfert X11. Vous aurez également besoin du package Wireshark lui-même.
Ces deux packages ne sont pas actuellement dans le système de gestion des packages pfSense, ils devront donc être installés à l’aide de la ligne de commande.
Je recommande d’exécuter les commandes d’installation à partir d’une session SSH, mais vous pouvez également utiliser la fonction d’invite de commande dans l’interface Web. Chacune des commandes ci-dessous peut être copiée et collée dans la session SSH.
Ces commandes utiliseront l’utilitaire pkg_add pour télécharger les packages directement depuis les dépôts FreeBSD.
Le paquet prendra quelques minutes à installer car il a plusieurs dépendances.
Installation de Xauth
pkg_add -rv ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.2-release/Latest/xauth.tbz
Faites défiler pour continuer
Installation Wireshark
pkg_add -rv ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.2-release/Latest/wireshark.tbz
Configuration du démon SSH
Par défaut, le service SSH sur pfSense n’est pas activé pour le transfert X11. Pour activer le transfert de session, le fichier /etc/sshd doit être modifié.
Le moyen le plus simple de modifier le fichier consiste à utiliser l’éditeur de fichiers intégré dans l’interface graphique Web. L’éditeur est accessible en cliquant sur « Modifier le fichier » dans le menu de diagnostic.
Vous pouvez également modifier le fichier à l’aide de vi via une session SSH, mais je pense qu’il est beaucoup plus facile d’utiliser la page Web.
Cliquez sur le bouton Parcourir, puis accédez au répertoire /etc et sélectionnez le fichier appelé sshd.
Localisez la ligne ci-dessous et remplacez le non par un oui. Cette ligne se trouve dans la section intitulée « Inclure la configuration par défaut pour pfSense ».
$sshconf .= « X11Forwarding non\n » ;
Après avoir apporté les modifications, cela devrait ressembler à la ligne ci-dessous. Cliquez sur le bouton Enregistrer une fois la ligne modifiée.
$sshconf .= « X11Forwarding oui\n » ;
Pour que les modifications prennent effet, vous devrez redémarrer le système pfSense.
Définition des variables d’environnement
Pour qu’une application s’exécute sur un serveur X distant, la variable d’affichage doit être définie. Cela peut être fait en utilisant la commande setenv ci-dessous.
setenv AFFICHAGE localhost:10
La variable devra être définie chaque fois qu’un utilisateur se connecte au système.
Au lieu de réinitialiser constamment la variable, vous pouvez ajouter une entrée au fichier .tcshrc situé dans le répertoire /root. Ensuite, chaque fois que vous vous connectez en tant que root, la variable d’affichage sera automatiquement configurée.
Le moyen le plus simple de modifier ce fichier consiste à utiliser l’éditeur de fichiers dans l’interface Web, comme indiqué ci-dessous.
Modification du fichier .tcshrc
Installer Xming
Pour exécuter des applications basées sur X sur un ordinateur Windows, vous devez installer un serveur X. Xming est un serveur X très populaire et facile à utiliser qui fonctionne sur les versions 32 ou 64 bits de Windows.
Xming version 6.9 est disponible gratuitement en tant que version publique. Pour télécharger les nouvelles versions, vous devez avoir un compte de donateur qui peut être obtenu en faisant un petit don au projet.
Pour configurer Xming, téléchargez et exécutez le package d’installation.
L’installation de Xming est très simple et directe. Si vous n’avez pas installé le client Putty SSH, Xming peut l’installer pour vous. Vous aurez besoin de Putty pour la prochaine étape de ce guide, vous pouvez donc aussi laisser Xming l’installer pour vous.
Toutes les autres options du programme d’installation peuvent être laissées sur les paramètres par défaut.
Démarrer Xming
Une fois Xming installé, lancez l’application. Lorsque le programme est en cours d’exécution, vous devriez voir l’icône Xming dans la barre d’état système.
Tant que l’icône est visible, le serveur Xming est en cours d’exécution et prêt à accepter les connexions.
Configuration du client SSH
La dernière étape consiste à configurer le client SSH pour le transfert X11. Je vais vous montrer comment configurer le client Putty. Putty est un client SSH très populaire et léger que je recommande fortement d’utiliser.
Putty peut être installé en option avec le programme d’installation de Xming, ou vous pouvez le télécharger à partir du site Web de l’auteur. Tout ce dont vous avez vraiment besoin est le fichier putty.exe, mais un programme d’installation est également disponible.
- Une fois que vous avez ouvert Putty, développez les paramètres de connexion, puis développez SSH.
- Cliquez sur X11 pour accéder aux paramètres de transfert de session.
- Cochez la case « Activer le transfert X11 »
- Dans la zone d’emplacement d’affichage, entrez ‘localhost:0’ comme indiqué ci-dessous.
Enregistrement des paramètres par défaut
Pour que le transfert X11 soit activé à chaque fois que vous ouvrez Putty, suivez les étapes ci-dessous. Sinon, vous devrez ressaisir les paramètres à chaque ouverture du programme.
- Cliquez sur ‘Session’ pour revenir à l’écran principal.
- Cliquez sur « Paramètres par défaut » pour mettre en surbrillance l’entrée.
- Cliquez sur enregistrer pour enregistrer les modifications.
La prochaine fois que vous ouvrirez le mastic, les paramètres X11 seront déjà en place.
Démarrage de la session SSH
Une fois Putty configuré, vous pouvez vous connecter à pfSense via SSH.
Si vous prévoyez de vous connecter à l’aide de l’adresse IP WAN, assurez-vous d’avoir une règle de pare-feu autorisant le trafic SSH (port TCP 22) vers l’interface WAN.
- Pour démarrer la session, saisissez l’adresse IP du routeur ou le nom d’hôte dans la case supérieure de Putty.
- Assurez-vous que le type de connexion est défini sur SSH.
- Cliquez sur le bouton Ouvrir pour démarrer la session.
- Connectez-vous avec le nom d’utilisateur root, le mot de passe sera le même mot de passe administrateur que vous utilisez pour vous connecter à l’interface graphique Web.
Une fois connecté, vous verrez le menu de bienvenue. Sélectionnez l’option numéro 8 pour démarrer le shell.
Lancement de Wireshark
Il existe plusieurs méthodes différentes pour lancer Wireshark à partir du shell. Taper simplement wireshark lancera l’application mais cette méthode gardera le shell occupé jusqu’à ce que vous fermiez l’application.
Vous pouvez également taper « wireshark & » qui détachera le renifleur du shell et vous permettra d’utiliser le terminal pour exécuter d’autres commandes.
La session SSH doit rester ouverte pendant l’exécution du programme, si la session est fermée, le programme se terminera.
Utilisation de Wireshark
Lorsque vous lancez l’analyseur pour la première fois, vous verrez un message indiquant que l’exécution en tant que root peut être dangereuse, cliquez sur OK pour continuer. Étant donné que l’analyseur s’exécute directement sur pfSense, vous pouvez désormais capturer des paquets en temps réel à partir de n’importe quelle interface du système.
Les fichiers de capture peuvent être enregistrés mais ils seront stockés sur pfSense, vous pouvez les copier sur un autre ordinateur à l’aide de SCP. Si vous n’êtes pas familier avec Wireshark, il existe plusieurs excellentes ressources sur le Web, telles que le guide du débutant sur Wireshark.
Dépannage
Vous recevez l’erreur « Gtk-WARNING ** : impossible d’ouvrir l’affichage : localhost : 10 »
Si vous obtenez cette erreur, assurez-vous que Xming est en cours d’exécution. Si le message indique « impossible d’ouvrir l’affichage » mais qu’il n’est pas suivi de « localhost:10 », assurez-vous que le transfert X11 est activé depuis le mastic.
Vérifiez si la variable d’affichage est définie
Un moyen rapide de s’assurer que la variable d’affichage a été définie consiste à exécuter la commande ‘echo $DISPLAY’. Si vous voyez un message indiquant que la variable n’a pas été définie, assurez-vous que les modifications ont été appliquées au fichier /root/.tcshrc.
Putty ne parvient pas à se connecter
Si vous ne parvenez pas à établir une connexion SSH, assurez-vous que le serveur shell sécurisé est activé. Le paramètre du serveur se trouve dans la page de configuration avancée qui se trouve dans le menu système. Le paramètre pour SSH se trouve sur le premier onglet appelé accès administrateur.
Après avoir modifié ce fichier, vous devez fermer votre session SSH et vous reconnecter car le fichier n’est exécuté que lorsqu’un utilisateur se connecte.
Cet article est exact et fidèle au meilleur de la connaissance de l’auteur. Le contenu est uniquement à des fins d’information ou de divertissement et ne remplace pas un conseil personnel ou un conseil professionnel en matière commerciale, financière, juridique ou technique.
© 2012 Sam Kear
Joe Poniatowski de Mid-Michigan le 13 mai 2020 :
C’est un excellent aperçu. Vous ne voyez tout simplement pas autant de détails et d’informations dans la plupart des articles techniques de nos jours.
Sam Kear (auteur) de Kansas City le 04 mai 2014 :
@Jacob – Quelle version de pfSense utilisez-vous ?
Jacob Egan le 04 mai 2014 :
Cela ne fonctionne pas – étapes manquantes pour les fichiers libkrb5.s0.10