NetBox est une application web de gestion IPAM (IP Address Management) et DCIM (Data Center Infrastructure Management) puissante et utilisée par les administrateurs réseau pour planifier et gérer l’infrastructure réseau et les adresses IP efficacement. Ce guide détaillé explique comment installer et configurer NetBox sur Rocky Linux 9, en fournissant des instructions simples et claires pour les débutants, tout en offrant une profondeur technique suffisante pour les utilisateurs expérimentés.
Prérequis
- Un serveur avec Rocky Linux 9 installé.
- Accès root ou un utilisateur avec des privilèges sudo.
- Nginx, PostgreSQL, Redis, et Python installés sur votre serveur.
Étape 1 : Installation des dépendances
NetBox dépend de plusieurs services et packages pour fonctionner. Commencez par installer ces composants essentiels.
- Installez PostgreSQL :
sudo dnf install postgresql-server postgresql-contrib -y
sudo postgresql-setup --initdb
sudo systemctl enable --now postgresql
- Installez Redis :
sudo dnf install redis -y
sudo systemctl enable --now redis
- Installez Nginx et les outils Python nécessaires :
sudo dnf install nginx python3 python3-pip python3-devel gcc -y
sudo systemctl enable --now nginx
Étape 2 : Configuration de PostgreSQL
Configurez PostgreSQL pour créer une base de données et un utilisateur pour NetBox.
- Connectez-vous à PostgreSQL :
sudo su - postgres
psql
- Créez un utilisateur et une base de données pour NetBox :
CREATE DATABASE netbox;
CREATE USER netbox WITH PASSWORD 'netbox_password';
GRANT ALL PRIVILEGES ON DATABASE netbox TO netbox;
\q
exit
Remplacez netbox_password
par un mot de passe sécurisé.
Étape 3 : Installation de NetBox
- Téléchargez la dernière version de NetBox :
cd /opt
sudo wget https://github.com/netbox-community/netbox/archive/refs/tags/v3.0.1.tar.gz
sudo tar -xzf v3.0.1.tar.gz
sudo mv netbox-3.0.1 netbox
cd netbox
- Installez les dépendances Python de NetBox :
sudo pip3 install -r requirements.txt
Étape 4 : Configuration de NetBox
- Configurez le fichier de configuration de NetBox :
Copiez le fichier de configuration d’exemple et éditez-le pour correspondre à votre environnement.
sudo cp netbox/netbox/configuration.example.py netbox/netbox/configuration.py
sudo nano netbox/netbox/configuration.py
Modifiez les paramètres ALLOWED_HOSTS
, DATABASES
, et REDIS
pour correspondre à votre configuration.
- Lancez les migrations de la base de données :
cd /opt/netbox/netbox
python3 manage.py migrate
- Collectez les fichiers statiques :
python3 manage.py collectstatic --no-input
- Créez un super utilisateur :
python3 manage.py createsuperuser
Étape 5 : Configuration de Gunicorn et Nginx
- Configurez Gunicorn :
sudo pip3 install gunicorn
cd /opt/netbox
gunicorn --config gunicorn_config.py netbox.wsgi
- Configurez Nginx pour servir NetBox via Gunicorn :
sudo nano /etc/nginx/conf.d/netbox.conf
Ajoutez une configuration qui ressemble à cela :
server {
listen 80;
server_name netbox.example.com;
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 $server_name;
proxy_set_header X-Real-IP $remote_addr;
add_header P3P 'CP="ALL DSP COR PSAa PSDa OUR NOR ONL UNI COM NAV"';
add_header Access-Control-Allow-Origin *;
}
}
- Redémarrez Nginx pour appliquer les changements :
sudo systemctl restart nginx
Pour ceux qui cherchent une solution robuste pour déployer NetBox, Shape.host offre des services Cloud VPS optimisés pour les applications de gestion réseau. Nos VPS Linux SSD sur Rocky Linux 9 sont parfaits pour une installation rapide et efficace de NetBox, fournissant les ressources nécessaires pour gérer et sécuriser votre infrastructure réseau.