Netbox Ipam :
Ipam (IP Address Management) est une suite d’outils intégrés permettant d’activer la planification, le déploiement, la gestion et la surveillance de bout en bout d’une infrastructure d’adresses IP, avec une expérience utilisateur enrichie.
NetBox est une solution open-source populaire pour la gestion des infrastructures réseau, notamment pour la gestion des adresses IP (IPAM). Il est conçu pour gérer des informations détaillées sur le réseau, y compris les équipements, les câblages, les sous-réseaux et les adresses IP.
Actions possibles avec NetBox :
- Gérer les adresses IP et les sous-réseaux
- Organiser les équipements, les racks, les sites et les vlans
- Suivre les connexions câblées et gérer l’infrastructure physique
- Automatiser la gestion via une API (application qui connecte les logiciels)
- Personnaliser et gérer l’accès avec des rôles et des permissions
Mise en place de NetBox sur Ubuntu :
1. Installation et configuration de netbox sur une machine Ubuntu
a. Installation des dépendances requises pour le bon fonctionnement du serveur : Python, PostrgreSQL, Redis, etc.
sudo apt install python3 python3-pip python3-venv python3-dev build-essential libxml2-dev libxslt1-dev libffi-dev libpq-dev libssl-dev zlib1g-dev git postgresql postgresql-contrib redis-server
b. Création d’une base de données PostgreSQL à lier à NetBox avec un utilisateur et un mot de passe.
sudo -u postgres psql
CREATE DATABASE netbox;
CREATE USER netbox WITH PASSWORD 'netbox_user_password';
GRANT ALL PRIVILEGES ON DATABASE netbox TO netbox;
ALTER DATABASE netbox OWNER TO netbox;
\q
c. Cloner le référentiel NetBox depuis la source de distribution pour avoir toutes les ressources à disposition.
sudo mkdir -p /opt/netbox/
cd /opt/netbox/
sudo git clone -b master --depth 1 https://github.com/netbox-community/netbox.git .
d. Création d’un environnement virtuel pour isoler les dépendances du reste de la machine.
source /opt/netbox/venv/bin/activate
e. Configurer NetBox en précisant les hôtes autorisés à accéder à NetBox et en précisant la base de données associée.
cd /opt/netbox/netbox/netbox/
sudo cp configuration_example.py configuration.py
sudo nano /opt/netbox/netbox/netbox/configuration.py
Faire les changements nécessaires
f. Créer un compte administrateur sur NetBox.
cd /opt/netbox/netbox
python3 manage.py createsuperuser
g. Configurer Gunicorn pour permettre à NetBox de fonctionner en arrière-plan en utilisant Gunicorn comme serveur d’application.
sudo nano /etc/systemd/system/netbox.service
[Unit]
Description=NetBox WSGI Service
After=network.target
[Service]
Type=simple
User=netbox
Group=netbox
Environment="PATH=/opt/netbox/venv/bin"
ExecStart=/opt/netbox/venv/bin/gunicorn -c /opt/netbox/gunicorn_config.py netbox.wsgi
[Install]
WantedBy=multi-user.target
h. Configuration Nginx pour avoir accès à NetBox sur l’interface web.
sudo cp /opt/netbox/contrib/nginx.conf /etc/nginx/sites-available/netbox
sudo nano /etc/nginx/sites-available/netbox
server {
listen 80;
server_name 192.0.2.10;
client_max_body_size 25m;
location /static/ {
alias /opt/netbox/netbox/static/;
}
location / {
proxy_pass http://127.0.0.1:8001;
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
i. Démarrer NetBox et Gunicorn
sudo systemctl daemon-reload
sudo systemctl enable netbox
sudo systemctl start netbox
- Gunicorn = serveur d’application utilisé pour exécuter des applications web. Il gère les requêtes HTTP en les transmettant à l’application Python et permet de gérer plusieurs connexions en même temps.
2. Accès et utilisation de netbox ipam
Pour accéder à l’interface web de NetBox, il faut lancer le serveur depuis le terminal, puis aller sur un moteur de recherche.
- Commandes pour lancer le serveur :
Source /opt/netbox/venv/bin/activate
Cd /opt/netbox/netbox/
Python3 manage.py runserver 0.0.0.0 :8000
Cela permet d’activer l’environnement virtuel python, sans interférer avec d’autres projets python sur la machine et démarre le serveur qui sera accessible par d’autres machines via le port 8000.

- Lors de l’accès web avec le lien « http://192.168.1.102:8000 », cela affiche une erreur de fichier « setmode.js ».
- Pour accéder à NetBox, il suffit de ne pas préciser le port : « http://192.168.1.102 »
- A partir de là, on a accès à l’interface web de netbox via nginx.
- NetBox ne fait malheureusement pas de découverte automatique du réseau donc reconstruction de l’infrastructure technature manuellement à l’aide des fichiers d’infra de 2024.

On a finalement réussi à installer NetBox Ipam sur une machine Ubuntu fonctionnelle. C’est une solution intéressante et complète pour les entreprises.
Comments are closed