Instalação NetBox · 8 min read · Sep 12, 2025
Como Instalar o NetBox IRM (Ferramenta de Modelagem de Recursos de Infraestrutura) no Servidor Ubuntu 24.04

NetBox é uma Ferramenta de Modelagem de Recursos de Infraestrutura (IRM) projetada para automação de rede e engenharia de infraestrutura. Inicialmente, foi criada pela equipe da DigitalOcean e agora se tornou um projeto de código aberto lançado sob a Licença Apache 2.
NetBox foi criado no framework web Python Django com PostgreSQL como o banco de dados padrão, e a instalação do NetBox é bastante semelhante a outras aplicações web em Python Django.
Este tutorial mostrará como instalar o Netbox IRM no servidor Ubuntu 24.04 com PostgreSQL como banco de dados e Apache como um proxy reverso. Você também irá proteger o Netbox com HTTPS através do Certbot e Letsencrypt.
Pré-requisitos
Antes de prosseguir, certifique-se de ter o seguinte:
- Um servidor Ubuntu 24.04
- Um usuário não-root com privilégios de administrador
- Um nome de domínio apontado para o endereço IP do servidor
Instalando Dependências
Para instalar o Netbox, você deve garantir que as dependências estejam instaladas em seu servidor Ubuntu. Isso inclui Python3, servidor PostgreSQL, servidor web Apache, Redis e bibliotecas do sistema. Nesta seção, você instalará esses pacotes com o gerenciador de pacotes APT.
Primeiro, execute o seguinte comando para atualizar o índice de pacotes do Ubuntu.
sudo apt updateUma vez atualizado, instale as dependências para o Netbox com o seguinte comando. Neste exemplo, você instalará PostgreSQL, Apache, Python, Redis, Certbot, dependências de construção e algumas bibliotecas.
sudo apt install apache2 postgresql postgresql-common libpq-dev redis-server git certbot python3 python3-pip python3-venv python3-dev build-essential libxml2-dev libxslt1-dev libffi-dev libssl-dev zlib1g-devDigite ‘ Y ‘ para confirmar a instalação.

Após a instalação ser concluída, execute o comando ‘systemctl’ abaixo para verificar o status do servidor web Apache.
sudo systemctl is-enabled apache2
sudo systemctl status apache2Na saída a seguir, você pode ver que o Apache está em execução e habilitado.

Por fim, verifique o status do servidor PostgreSQL com o seguinte:
sudo systemctl is-enabled postgresql
sudo systemctl status postgresqlNa saída abaixo, você pode ver que o PostgreSQL está habilitado e em execução com o status de encerrado (o systemd não consegue encontrar o serviço para monitorar).

Configurando o PostgreSQL
Após as dependências serem instaladas, você precisa configurar o servidor PostgreSQL criando um novo usuário e banco de dados que o Netbox usará.
Faça login no servidor PostgreSQL usando o comando abaixo.
sudo -u postgres psqlAgora execute as seguintes consultas para criar um novo usuário ‘ netbox ‘ com a senha ‘ netboxpassword ‘ e o novo banco de dados ‘ netboxdb ‘.
CREATE USER netbox LOGIN CREATEDB PASSWORD 'netboxpassword';
CREATE DATABASE netboxdb OWNER netbox;Uma vez que o banco de dados e o usuário sejam criados, verifique a lista de bancos de dados e usuários no PostgreSQL com o seguinte.
\l
\duVocê pode ver abaixo que o banco de dados ‘ netboxdb ‘ e o usuário ‘ netbox ‘ foram criados.
Digite ‘ quit ‘ para sair do servidor PostgreSQL.


Baixando e Configurando o Netbox
Agora que o banco de dados PostgreSQL está pronto, você irá baixar e instalar o Netbox em sua máquina Ubuntu. Você irá configurar o nome de domínio, chave secreta e banco de dados para o Netbox.
Primeiro, execute o comando abaixo para criar um novo usuário ‘netbox’ em sua máquina Ubuntu.
sudo useradd -r -d /opt/netbox -s /usr/sbin/nologin netboxAgora execute o comando abaixo para baixar o código-fonte do Netbox com o comando ‘ git ‘, e mudar a propriedade para o usuário ‘ netbox ‘.
sudo git clone -b master --depth 1 https://github.com/netbox-community/netbox.git /opt/netbox
sudo chown -R netbox:netbox /opt/netboxMova para o diretório ‘ /opt/netbox/netbox/netbox ‘ e execute o arquivo ‘ generate_secret_key.py ‘. Copie a chave secreta para suas anotações.
cd /opt/netbox/netbox/netbox
sudo -u netbox python3 ../generate_secret_key.pyEm seguida, copie o arquivo ‘ configuration.py ‘ e modifique-o usando o editor ‘ nano ‘.
sudo -u netbox cp configuration_example.py configuration.py
sudo -u netbox nano configuration.pyAdicione seu endereço IP local e nome de domínio à seção ‘ ALLOWED_HOSTS ‘.
ALLOWED_HOSTS = ['netbox.howtoforge.local', '192.168.10.60']Digite o nome do seu banco de dados PostgreSQL, usuário e senha na seção ‘ DATABASE ‘.
# configuração do banco de dados
DATABASE = {
'NAME': 'netboxdb', # Nome do banco de dados
'USER': 'netbox', # Nome de usuário do PostgreSQL
'PASSWORD': 'netboxpassword', # Senha do PostgreSQL
'HOST': 'localhost', # Servidor do banco de dados
'PORT': '', # Porta do banco de dados (deixe em branco para padrão)
'CONN_MAX_AGE': 300, # Idade máxima da conexão com o banco de dados (segundos)
}Cole sua chave secreta na seção ‘ SECRET_KEY ‘.
SECRET_KEY = '98%D9uh8S%)T0QhQ@Z3zYf%Hik^CqWJ)Uwz%0J7TZUztmNiitG'Salve o arquivo e saia do editor quando terminar.
Migrando o Netbox e configurando o administrador
Agora que você configurou o Netbox com o servidor PostgreSQL, está pronto para migrar o banco de dados e criar um usuário administrador para a instalação do Netbox.
Execute o script ‘ upgrade.sh ‘ usando o comando abaixo. Isso criará um ambiente Python, instalará dependências para o Netbox, migrará o banco de dados do Netbox, conectará ao Redis e, em seguida, gerará arquivos estáticos.
sudo -u netbox /opt/netbox/upgrade.sh
Abaixo você pode ver a migração do banco de dados para o Netbox.

E abaixo quando ‘ manage.py ‘ gera arquivos estáticos.
Após o processo ser concluído, você precisa criar um novo usuário administrador para o Netbox através do script ‘ manage.py ‘.

Execute o seguinte comando para ativar o ambiente virtual do Netbox. Uma vez ativado, seu shell se tornará como ‘ (venv) user@hostname ‘.
source /opt/netbox/venv/bin/activateVá para o diretório ‘ /opt/netbox/netbox ‘ e execute o script ‘ manage.py ‘ como o seguinte:
cd /opt/netbox/netbox
python3 manage.py createsuperuserDigite seu nome de usuário, endereço de e-mail e senha para o administrador do Netbox.

Uma vez completo, execute o comando ‘ deactivate ‘ para sair do ambiente virtual do Netbox.
Executando o Netbox como um serviço
Nesta seção, você irá copiar as configurações do Netbox que serão usadas para executar o Netbox como um serviço systemd. Você precisa garantir que o Netbox esteja sendo executado sob o Gunicorn e, em seguida, copiar os arquivos de serviço do Netbox para o diretório ‘ /etc/systemd/system ‘.
Primeiro, copie o script ‘ gunicorn.py ‘ para o diretório ‘ /opt/netbox ‘. Este script contém a configuração para o Netbox ser executado sob o servidor WSGI do Python.
sudo -u netbox cp /opt/netbox/contrib/gunicorn.py /opt/netbox/gunicorn.pyAgora execute o comando abaixo para copiar os arquivos de serviço para o Netbox para o diretório ‘ /etc/systemd/system ‘ e recarregar o gerenciador systemd.
sudo cp -v /opt/netbox/contrib/*.service /etc/systemd/system/
sudo systemctl daemon-reloadUma vez que o systemd seja recarregado, execute o comando ‘ systemctl ‘ abaixo para iniciar e habilitar os serviços do Netbox.
sudo systemctl enable --now netbox netbox-rq netbox-housekeepingPor fim, verifique os serviços do Netbox para garantir que estão em execução com o seguinte comando.
sudo systemctl status netbox netbox-rq netbox-housekeepingNa saída a seguir, você pode ver que o serviço ‘ netbox ‘ está em execução e habilitado.

Para o serviço ‘ netbox-rq ‘, você deve obter uma saída como esta:

Por fim, o ‘ netbox-housekeeping ‘ com o status ‘ dead ‘ porque será executado como um timer.

Configurando o Apache como um proxy reverso
Neste ponto, o Netbox está em execução em segundo plano como um serviço sob o servidor WSGI do Python. Para torná-lo acessível externamente, você precisa configurar o Apache como um proxy reverso. Antes disso, você também precisa gerar certificados SSL para proteger a instalação do Netbox.
Primeiro, execute o comando abaixo para parar o serviço ‘ apache2 ‘.
sudo systemctl stop apache2Agora gere certificados SSL do Letsencrypt com o comando ‘ certbot ‘ abaixo. Certifique-se de alterar o nome do domínio e o endereço de e-mail com suas informações.
sudo certbot certonly --standalone --preferred-challenges http -d netbox.howtoforge.localApós o processo ser concluído, seus certificados SSL estarão disponíveis no diretório ‘ /etc/letsencrypt/live/domain.com ‘.
Em seguida, copie a configuração do Apache para o Netbox para o arquivo ‘ /etc/apache2/sites-available/netbox.conf ‘ e modifique-o usando o editor ‘ nano ‘.
sudo cp /opt/netbox/contrib/apache.conf /etc/apache2/sites-available/netbox.conf
sudo nano /etc/apache2/sites-available/netbox.confSubstitua o nome do domínio na opção ‘ ServerName ‘ e altere o caminho dos seus certificados SSL.
# MUDE ISSO PARA O NOME DO SEU SERVIDOR
ServerName netbox.howtoforge.local
...
ProxyPreserveHost On
# MUDE ISSO PARA O NOME DO SEU SERVIDOR
ServerName netbox.howtoforge.local
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/netbox.howtoforge.local/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/netbox.howtoforge.local/privkey.pem
...
Salve o arquivo e saia do editor quando terminar.
Agora execute o comando abaixo para ativar os módulos do Apache e o arquivo de host virtual ‘ netbox.conf ‘.
sudo a2enmod ssl proxy proxy_http headers rewrite
sudo a2ensite netbox.confApós o host virtual ser ativado, execute o seguinte comando para reiniciar o Apache e aplicar suas alterações. Com isso, sua instalação do Netbox deve estar em execução sob o proxy reverso do Apache com HTTPS habilitado.
sudo systemctl restart apache2Por fim, visite https://netbox.howtoforge.local/ com seu navegador web e você será redirecionado para a página de login do Netbox. Digite seu nome de usuário e senha de administrador e clique em Entrar.

Você verá o seguinte painel do Netbox se tiver as credenciais de administrador corretas.

Clique no menu Admin > Sistema para ver informações sobre sua instalação do Netbox. Na saída a seguir, você pode ver que o Netbox v4.1.7 está instalado com o banco de dados PostgreSQL.

Conclusão
Parabéns! Você concluiu a instalação do Netbox IRM no servidor Ubuntu 24.04. Você tem o Netbox em funcionamento com o PostgreSQL como servidor de banco de dados e o Apache como proxy reverso. Você também protegeu o Netbox com HTTPS através do Certbot.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.