** Devido a um bug no editor do WordPress quando digito – – junto, o que é o correto no prompt ele agrega para — portanto em todos os posts pode ser necessário essa correção em algum momento.
No prompt do sistema atualize a lista dos repositórios e instale o PostgreSQL, como a versão mínima suportada pelo Netbox é a 9.4 você não precisa se preocupar (pois o Debian utiliza por padrão a 9.6).
# apt update
# apt install -y postgresql libpq-dev
Após a instalação entre com o usuário postgres no sistema e pelo psql realize a criação da tabela e do usuário inicial. Lembre-se de alterar a senha do usuário por uma que seja do seu conhecimento.
# su postgres
# psql
psql (9.4.5)
Type “help” for help.
postgres=# CREATE DATABASE netbox;
CREATE DATABASE
postgres=# CREATE USER netbox WITH PASSWORD ‘J5brHrAXFLQSif0K‘;
CREATE ROLE
postgres=# GRANT ALL PRIVILEGES ON DATABASE netbox TO netbox;
GRANT
postgres=# \q
# exit
Para testar se foi criada a base use o comando abaixo, lembre-se que se a base for instalada em um computador remoto você deve trocar o localhost pelo endereço IP do seu servidor.
# psql -U netbox -W -h localhost netbox
Neste momento devemos instalar o python3 para executar o Netbox:
# apt install -y python3 python3-dev python3-setuptools build-essential libxml2-dev libxslt1-dev libffi-dev graphviz libpq-dev libssl-dev zlib1g-dev
Após a instalação do Python iremos instalar o pip.
# easy_install3 pip
Após a instalação do pip iremos baixar a versão mais atual do Netbox para instalação, de forma a sempre utilizarmos a versão mais atual estou utilizando o git para realizar o download dos pacotes, também escolhi o git pela agilidade e facilidade de atualização de versão.
# mkdir -p /opt/netbox/ && cd /opt/netbox/
# apt install -y git
# git clone -b master https://github.com/digitalocean/netbox.git .
Neste momento iremos instalar os pré-requisitos para execução:
# pip3 install -r requirements.txt
# pip3 install napalm
Após a instalação dos pré-requisitos é necessário configurar o arquivo de configurações ‘/opt/netbox/netbox/netbox/configuration.py’ o qual será criado a partir da cópia do arquivo de exemplo. Antes de editar o arquivo do configuration.py é necessário executar um script de geração de senha para incluir no arquivo de configuração, ao executar copie a senha gerada para colar no arquivo de configuração.
# cd /opt/netbox/netbox/netbox/
# cp configuration.example.py configuration.py
# /opt/netbox/netbox/generate_secret_key.py
# vi configuration.py
No arquivo de configuração será necessário alterar basicamente 3 parâmetros obrigatórios são eles:


Outro parâmetro que pode ser interessante ser alterado é o DEBUG, pois durante o teste de inicialização, fica mais fácil identificar algum problema. Depois do teste com sucesso, recomendo que se retorne ao padrão do DEBUG.
O campo ALLOWED_HOSTS é onde iremos colocar os endereços pelos quais o Netbox será acessado (endereço IP do servidor, url específica).
Já no campo DATABASE utilize os parâmetros que configurou anteriormente para o banco de dados.
E o campo SECRET_KEY é onde irá colar a senha gerada anteriormente.
Após a configuração obrigatória, serão executados alguns procedimentos que irão criar a nova base de dados do Netbox.
# cd ..
# python3 manage.py migrate
# python3 manage.py createsuperuser
# python3 manage.py collectstatic – -no-input
# python3 manage.py loaddata initial_data
Após popular a base de dados, chegou a hora de acessar o servidor por um dos endereços configurados no campo ALLOWED_HOSTS. Ao acessar sem problemas finalize esta execução através do CTRL+C.
# python3 manage.py runserver 0.0.0.0:8000 –insecure
Após o teste com sucesso chegou o momento de configurar o servidor web que será utilizado pelo Netbox. Utilizei no tutorial o nginx, mas poderia ter utilizado o apache2 sem perda nenhuma. Escolhi o nginx por ter menos passos de configuração.
# apt install -y nginx
Criação do arquivo ‘/etc/nginx/sites-available/netbox’ o qual terá as configurações do virtualhost do Netbox.
# vi /etc/nginx/sites-available/netbox

Após a criação do arquivo com os parâmetros preenchidos de forma correta, como no exemplo acima, apague o virtualhost padrão e reinicie o nginx.
# cd /etc/nginx/sites-enabled/
# rm default
# ln -s /etc/nginx/sites-available/netbox
# service nginx restart
Neste momento instalaremos o gunicorn e o configuraremos.
# pip3 install gunicorn
# vi /opt/netbox/gunicorn_config.py

O último passo é a instalação, configuração e reinicialização do supervisor que será responsável por executar o gunicorn em background.
# apt install -y supervisor
# vi /etc/supervisor/conf.d/netbox.conf

# service supervisor restart
Netbox instalado e executando agora no porto 80 ao invés do 8000 do teste.

Altere as permissões do diretório de imagens para que possa subir os arquivos:

OBS: Baseado no passo a passo do site do Netbox