netbox:installatie
Table of Contents
installatie
context
dit document beschrijft de installatie van Netbox
vereisten
- PostgreSQL database
- Redis
- NetBox components
- Gunicorn or uWSGI
- HTTP server
- LDAP authentication (optioneel)
algemene opbouw
PostgreSQL database
- installeer PostgreSQL
- meld aan als gebruiker
postgres:sudo -u postgres psql
- maak de database aan:
CREATE DATABASE netbox;
controleer:\l - maak de netbox gebruiker aan:
CREATE USER netbox WITH PASSWORD 'q2;kjp8bnz ng;iu';
controleer:\du - maak de gebruiker netbox eigenaar van de database:
ALTER DATABASE netbox OWNER TO netbox;
controleer:\l - verbind op db netbox als gebruiker netbox:
\connect netbox;
- ken rechten toe:
GRANT CREATE ON SCHEMA public TO netbox;
- controleer aanmlden als volgt:
psql --username netbox --password --host localhost netbox
Redis
zie: :Redis
NetBox components
- installeer systeempackages:
apt install -y git python3 python3-pip python3-venv python3-dev build-essential libxml2-dev libxslt1-dev libffi-dev libpq-dev libssl-dev zlib1g-dev
- controleer je Python (min: 3) versie:
python3 -V
- clone Netbox:
sudo mkdir -p /opt/netbox/ cd /opt/netbox/ git clone https://github.com/netbox-community/netbox.git .
- maak de metbox gebruiker aan en geef toegang:
adduser --system --group netbox chown --recursive netbox /opt/netbox/netbox/media/ (**deze bestaat niet in cloned repo!!!) chown --recursive netbox /opt/netbox/netbox/reports/ chown --recursive netbox /opt/netbox/netbox/scripts/
- naak een secret key (crypto, hashing) aan: </code>python3 /opt/netbox/netbox/generate_secret_key.py</code>
- maak de config file aan:
cd /opt/netbox/netbox/netbox/ cp configuration_example.py configuration.py
- open configuration.py en vul onderstaande waarden in:
- ALLOWED_HOSTS = ['fqdn.netbox']
vb: netbox.legoland.net
of:ALLOWED_HOSTS = ['*']en regel de toegang via Firewall. - postgresql info: user en wachtwoord
- redis info: default is ok
- SECRET_KEY =
- bewaar je wijzigingen en sluit af.
- voer het installatie (upgrade) script uit:
/opt/netbox/upgrade.sh
- dit doet volgende:
- maakt een Python virtual environment
- installeert alle nodige Python packages
- voert database schema migrations uit
- activeer de Python virtual environement:
source /opt/netbox/venv/bin/activate
- maak een superuser gebruiker aan:
cd /opt/netbox/netbox python3 manage.py createsuperuser
Gunicorn
= Webserver Gateway Interface: fucntie waarbij web servers requests forward naar achterliggende web applicaties of frameworks geschreven in Python.
cp /opt/netbox/contrib/gunicorn.py /opt/netbox/gunicorn.py
Systemd
cp -v /opt/netbox/contrib/*.service /etc/systemd/system/ systemctl daemon-reload
- start netbox en netbox-rq
systemctl enable --now netbox netbox-rq
- controleer de status:
systemctl status netbox.service
HTTP server
- maak een SSL certificaat aan:
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \ -keyout /etc/ssl/private/netbox.key \ -out /etc/ssl/certs/netbox.crt
- install Apache:
sudo apt install -y apache2
- kopieer de config:
cp /opt/netbox/contrib/apache.conf /etc/apache2/sites-available/netbox.conf
pas de severnaam aan, cfr ALLOWED_HOSTS - activeer de nodige Apache modules,de netbox site en herstart Apache:
a2enmod ssl proxy proxy_http headers rewrite a2ensite netbox systemctl restart apache2
- test door naar https:<fqdn>/netbox te gaan ===== LDAP authentication===== ===== meer info ===== * Netbox KB * Netbox on Debian12
netbox/installatie.txt · Last modified: by admin



