Installation de Nessus dans un conteneur Docker
Introduction
Qu'est ce que Nessus?
Nessus est un scanner de vulnérabilité propriétaire maintenu par Tenable. Il permet de mettre en lumière les failles de sécurité présentes sur une machine/service cible.
Nessus comporte également toute une partie de gestionnaire de rapport entre autre.
Pourquoi Nessus dans un conteneur Docker?
Installer des outils lourds peuvent nuire a la stabilité du système. Le 'cloisonnement' entre l'application et le système est l'un des avantages à exécuter Nessus depuis un conteneur Docker.
L'utilisation de Nessus pouvant se faire via une interface web, cela ne pose aucun soucis qu'il soit dans un conteneur, directement sur l'OS hôte ou sur un serveur distant.
L'utilisation des conteneur facilite également le déploiement/migration des services hébergés.
Procédure
- Téléchargez le binaire de Nessus sur le site officiel Tenable.
Pour l'exemple je prendrais le dernier en date: Nessus-8.1.2-debian6_amd64.deb
- Créez un dossier 'du conteneur':
Code:mkdir nessus cd nessus touch Dockerfile
- Déplacez le binaire nessus dans le dossier précédemment créé
Code:mv ../Download/Nessus-8.1.2-debian6_amd64.deb .
- Renseignez le fichier Dockerfile avec la conf:
Code:nano Dockerfile
Code:FROM debian:9 ADD Nessus-8.1.2-debian6_amd64.deb /tmp/Nessus-8.1.2-debian6_amd64.deb RUN apt-get update -y \ && apt-get install -y apt-utils tzdata \ && dpkg -i /tmp/Nessus-8.1.2-debian6_amd64.deb \ && rm -r /tmp/Nessus-8.1.2-debian6_amd64.deb EXPOSE 8834 CMD service nessusd start && tail -f /dev/null
- Buildez l'image Docker
Code:docker build -t fizzymatt/nessus-8 .
- Vérifiez que l'image Nessus a bien été créée
Code:docker images
- Lancez le conteneur
Code:docker run -d --name nessus-8 -p 8834:8834 fizzymatt/nessus-8
- RDV sur l'interface web: https://127.0.0.1:8834/ et acceptez le certificat auto-signe
- Définissez le login/password (vous pouvez mettre ce que vous voulez). Par exemple: Username=admin, Password= azerty
Cliquez sur 'Continue'
- Renseignez votre code d'activation, préalablement récupéré sur la page Tenable prévue (gratuit, ne nécessite que 'Nom', 'Prénom' et 'Mail').
Cliquez sur 'Continue'
- Attendez que Nessus s'initialise (cela peux prendre un bon moment (20-30 minutes chez moi).
- C'est terminé,Nessus est installé!
Utilisation
Démarrer le conteneur Nessus:
Code:
docker start nessus-8
Code:
docker stop nessus-8
https://127.0.0.1:8834/
---------------------------------------------------------
Source: Tutoriel adapté de Hackerbox.io