<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Arquivos netbox - Remontti</title>
	<atom:link href="https://blog.remontti.com.br/tag/netbox/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.remontti.com.br/tag/netbox</link>
	<description>rudimar@remontti</description>
	<lastBuildDate>Fri, 05 Apr 2024 15:16:39 +0000</lastBuildDate>
	<language>pt-BR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://blog.remontti.com.br/wp-content/uploads/2024/09/icone-rr-80x80.png</url>
	<title>Arquivos netbox - Remontti</title>
	<link>https://blog.remontti.com.br/tag/netbox</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Instalação e Configuração do NetBox no Debian 12: Guia Completo</title>
		<link>https://blog.remontti.com.br/7851</link>
					<comments>https://blog.remontti.com.br/7851#comments</comments>
		
		<dc:creator><![CDATA[Rudimar Remontti]]></dc:creator>
		<pubDate>Fri, 05 Apr 2024 15:16:39 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[Administração de Sistemas]]></category>
		<category><![CDATA[Configuração do servidor]]></category>
		<category><![CDATA[Configuração NetBox]]></category>
		<category><![CDATA[Debian 12]]></category>
		<category><![CDATA[Debian 12 Bookworm]]></category>
		<category><![CDATA[Debian Bookworm]]></category>
		<category><![CDATA[documentação de rede]]></category>
		<category><![CDATA[gerenciamento de racks]]></category>
		<category><![CDATA[gerenciamento de rede]]></category>
		<category><![CDATA[gestão de rede]]></category>
		<category><![CDATA[Infraestrutura de Rede]]></category>
		<category><![CDATA[infraestrutura de TI]]></category>
		<category><![CDATA[instalação do NetBox]]></category>
		<category><![CDATA[Instalação NetBox]]></category>
		<category><![CDATA[IPAM]]></category>
		<category><![CDATA[IPAM (Gerenciamento de Endereço IP)]]></category>
		<category><![CDATA[netbox]]></category>
		<category><![CDATA[NetBox Debian]]></category>
		<category><![CDATA[NetBox Plugin]]></category>
		<category><![CDATA[NetBox Setup]]></category>
		<category><![CDATA[NetBox Topology Views]]></category>
		<category><![CDATA[Open Source Networking]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Redis]]></category>
		<category><![CDATA[Segurança de Rede]]></category>
		<category><![CDATA[tutorial de TI]]></category>
		<category><![CDATA[Tutorial NetBox]]></category>
		<category><![CDATA[virtualização]]></category>
		<guid isPermaLink="false">https://blog.remontti.com.br/?p=7851</guid>

					<description><![CDATA[<p>Netbox é um aplicativo web de código aberto desenvolvido para auxiliar na gestão e documentação de redes de computadores. Originalmente criado pela equipe de engenharia de rede da DigitalOcean, o NetBox foi desenhado para&#46;&#46;&#46;</p>
<p>O post <a href="https://blog.remontti.com.br/7851">Instalação e Configuração do NetBox no Debian 12: Guia Completo</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><img fetchpriority="high" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-remontti-com-br.png" alt="" width="1792" height="1024" class="alignnone size-full wp-image-7868" srcset="https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-remontti-com-br.png 1792w, https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-remontti-com-br-300x171.png 300w, https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-remontti-com-br-1024x585.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-remontti-com-br-768x439.png 768w, https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-remontti-com-br-1536x878.png 1536w" sizes="(max-width: 1792px) 100vw, 1792px" /><br />
<a href="https://docs.netbox.dev/en/stable/" rel="noopener" target="_blank">Netbox</a> é um aplicativo web de código aberto desenvolvido para auxiliar na gestão e documentação de redes de computadores. Originalmente criado pela equipe de engenharia de rede da DigitalOcean, o NetBox foi desenhado para satisfazer as necessidades de engenheiros de rede e infraestrutura, cobrindo aspectos como:</p>
<ul>
<li><strong>Gerenciamento de endereço IP (IPAM)</strong> &#8211; Redes e endereços IP, VRFs e VLANs</li>
<li><strong>Racks de equipamentos</strong> &#8211; Organizados por grupo e local</li>
<li><strong>Dispositivos</strong> &#8211; Tipos de dispositivos e suas instalações</li>
<li><strong>Conexões</strong> &#8211; Rede, console e conexões de energia entre dispositivos</li>
<li><strong>Virtualização</strong> &#8211; Máquinas virtuais e clusters</li>
<li><strong>Circuitos de dados</strong> &#8211; Circuitos e fornecedores de comunicações de longa distância</li>
<li><strong>Segredos</strong> &#8211; Armazenamento criptografado de credenciais sensíveis</li>
</ul>
<p><strong>Requisitos:</strong><br />
<a href="https://blog.remontti.com.br/2966" rel="noopener" target="_blank">Instalação do Debian 12 Bookworm</a></p>
<p>Para tornar-se root corretamente, utilize o comando abaixo com o sinal de hífen.</p>
<pre class="remontti-code">su -</pre>
<p>Instale os pacotes necessários que são pré-requisitos para a instalação do NetBox.</p>
<pre class="remontti-code"># apt install gcc vim net-tools wget redis-server supervisor\
  postgresql-contrib postgresql libpq-dev \
  python3 python3-pip python3-venv python3-dev\
  build-essential libxml2-dev libxslt1-dev\
  libffi-dev libssl-dev zlib1g-dev graphviz\
  nginx redis python3-setuptools python3-gunicorn</pre>
<p>Faça login como usuário postgres para criar o banco de dados necessário.</p>
<pre class="remontti-code"># su - postgres</pre>
<p>Acesse o terminal do postgres com o comando a seguir:</p>
<pre class="remontti-code">$ psql</pre>
<p>Altere a <strong>senha</strong> conforme necessário.</p>
<pre class="remontti-code">postgres=# CREATE DATABASE netboxdb;
postgres=# CREATE USER netboxuser WITH PASSWORD &#039;sua_senha&#039;;
postgres=# GRANT ALL PRIVILEGES ON DATABASE netboxdb TO netboxuser;
postgres=# ALTER USER netboxuser WITH SUPERUSER;
postgres=# \q</pre>
<p>Verifique se o serviço redis está funcionando corretamente.</p>
<pre class="remontti-code">$ redis-cli ping</pre>
<p>Deverá retornar: <strong>PONG</strong></p>
<p>Volte ao usuário root.</p>
<pre class="remontti-code">exit</pre>
<p>Prossiga com o download do projeto NetBox verificando se há uma nova versão disponível no <a href="https://github.com/netbox-community/netbox/releases" rel="noopener" target="_blank">GitHub</a>. Acesse o diretório temporário, faça o download do NetBox, extraia o arquivo, mova para o diretório correto e ajuste as permissões.</p>
<pre class="remontti-code"># cd /tmp
# wget https://github.com/netbox-community/netbox/archive/refs/tags/v3.7.4.tar.gz
# tar vxf v3.7.4.tar.gz
# mv netbox*/ /opt/netbox
# cd /opt/netbox/
# chown www-data: /opt/netbox/netbox/media/ -R</pre>
<p>Gere a SECRET KEY que será usada posteriormente.</p>
<pre class="remontti-code"># /opt/netbox/netbox/generate_secret_key.py </pre>
<p>Exemplo:</p>
<pre class="remontti-code-plain">T7TE07O$j^Jqf9(*20q8M5kG4%NBIci#gEEn0$wuw*qodT7Lfo</pre>
<p>Copie e ajuste o arquivo de configuração com suas informações.</p>
<pre class="remontti-code"># cp /opt/netbox/netbox/netbox/configuration_example.py /opt/netbox/netbox/netbox/configuration.py
# vim /opt/netbox/netbox/netbox/configuration.py</pre>
<p>Edite o arquivo de configuração como no exemplo a seguir:</p>
<pre class="remontti-code">ALLOWED_HOSTS = [&#039;localhost&#039;,&#039;netbox.remontti.com.br&#039;]

DATABASE = {
    &#039;NAME&#039;: &#039;netboxdb&#039;,
    &#039;USER&#039;: &#039;netboxuser&#039;,
    &#039;PASSWORD&#039;: &#039;sua_senha&#039;,
    &#039;HOST&#039;: &#039;localhost&#039;,
    &#039;PORT&#039;: &#039;&#039;,
    &#039;CONN_MAX_AGE&#039;: 300,
}

SECRET_KEY = &#039;T7TE07O$j^Jqf9(*20q8M5kG4%NBIci#gEEn0$wuw*qodT7Lfo&#039;

LOGIN_REQUIRED = True</pre>
<p>Proceda com a instalação executando:</p>
<pre class="remontti-code"># /opt/netbox/upgrade.sh</pre>
<p>Crie um usuário administrador para o NetBox com o seguinte comando:</p>
<pre class="remontti-code"># source /opt/netbox/venv/bin/activate
(venv) # python3 /opt/netbox/netbox/manage.py createsuperuser
Username: remontti
Email address: noc@remontti.com.br
Password: xxxx
Password (again): xxxxx
Superuser created successfully.
(venv) # deactivate</pre>
<p>Configure o servidor web (nginx) e inicie os serviços do NetBox.</p>
<pre class="remontti-code"># cp /opt/netbox/contrib/gunicorn.py /opt/netbox/gunicorn.py
# cp /opt/netbox/contrib/*.service /etc/systemd/system/
# sed -i &#039;s/User=netbox/User=root/&#039; /etc/systemd/system/netbox*.service
# sed -i &#039;s/Group=netbox/Group=root/&#039; /etc/systemd/system/netbox*.service
# systemctl daemon-reload
# systemctl enable netbox netbox-rq netbox-housekeeping
# systemctl start netbox netbox-rq netbox-housekeeping
# systemctl status netbox netbox-rq</pre>
<p>Configure o nginx removendo o arquivo default e criando um novo arquivo de configuração.</p>
<pre class="remontti-code"># rm /etc/nginx/sites-enabled/default
# vim /etc/nginx/sites-available/netbox.conf</pre>
<p>Insira a configuração necessária no arquivo `netbox.conf` do nginx.</p>
<pre class="remontti-code-plain">
server {
    listen 80;
    listen [::]:80;
 
    server_name netbox.remontti.com.br;

    client_max_body_size 25m;
 
    location /static/ {
        alias /opt/netbox/netbox/static/;
    }
 
    location / {
        proxy_pass http://localhost:8001;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}
</pre>
<p>Crie um link simbólico para ativar a configuração do nginx e reinicie o serviço.</p>
<pre class="remontti-code"># ln -s /etc/nginx/sites-available/netbox.conf /etc/nginx/sites-enabled/
# systemctl restart nginx</pre>
<p>Acesse seu NetBox pelo navegador em <em>&#8220;https://netbox.remontti.com.br/&#8221;</em> ou <em>&#8220;https://ip/&#8221;</em> e faça login com a senha criada.<br />
<img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12.png" alt="" width="1268" height="528" class="alignnone size-full wp-image-7865" srcset="https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12.png 1268w, https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-300x125.png 300w, https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-1024x426.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-768x320.png 768w" sizes="(max-width: 1268px) 100vw, 1268px" /></p>
<p><img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-ok.png" alt="" width="1268" height="897" class="alignnone size-full wp-image-7866" srcset="https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-ok.png 1268w, https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-ok-300x212.png 300w, https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-ok-1024x724.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-ok-768x543.png 768w" sizes="(max-width: 1268px) 100vw, 1268px" /></p>
<p>Instale o plugin <strong><a href="https://github.com/netbox-community/netbox-topology-views" rel="noopener" target="_blank">topology-views</a></strong>.</p>
<pre class="remontti-code"># source /opt/netbox/venv/bin/activate
(venv) # vim /opt/netbox/netbox/netbox/configuration.py</pre>
<p>Configure o plugin `netbox_topology_views` no arquivo de configuração.</p>
<pre class="remontti-code-plain">PLUGINS = [&quot;netbox_topology_views&quot;]

PLUGINS_CONFIG = {
    &#039;netbox_topology_views&#039;: {
        &#039;static_image_directory&#039;: &#039;netbox_topology_views/img&#039;,
        &#039;allow_coordinates_saving&#039;: True,
        &#039;always_save_coordinates&#039;: True
    }
}
</pre>
<p>Conclua a instalação do plugin e atualize as configurações.</p>
<pre class="remontti-code">(venv) # cd /opt/netbox/netbox
(venv) # pip3 install netbox-topology-views
(venv) # python3 manage.py migrate netbox_topology_views
(venv) # python3 manage.py collectstatic --no-input
# deactivate
# systemctl restart netbox netbox-rq netbox-housekeeping</pre>
<p><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-netbox_topology_views.png" alt="" width="1276" height="798" class="alignnone size-full wp-image-7860" srcset="https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-netbox_topology_views.png 1276w, https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-netbox_topology_views-300x188.png 300w, https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-netbox_topology_views-1024x640.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2024/04/netbox-debian12-netbox_topology_views-768x480.png 768w" sizes="auto, (max-width: 1276px) 100vw, 1276px" /></p>
<p>Agradecimentos e convite para doação:<br />
<strong>Se quiser fazer uma doação para o café, ficarei muito feliz pelo seu reconhecimento!</strong><br />
<a href="https://blog.remontti.com.br/doar"><img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2019/07/quero-doar-remontti.png" /></a></p>
<p>Participe do canal no <a href="https://t.me/blogremontti" rel="noopener noreferrer" target="_blank">telegram</a> para ficar sempre atualizado. Agradeço por qualquer feedback nos comentários ou <a href="https://blog.remontti.com.br/meucontato" rel="noopener noreferrer" target="_blank">contato direto</a>.</p>
<p>Fonte: <a href="https://docs.netbox.dev/" rel="noopener" target="_blank">Documentação Oficial do NetBox</a></p>
<p>O post <a href="https://blog.remontti.com.br/7851">Instalação e Configuração do NetBox no Debian 12: Guia Completo</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.remontti.com.br/7851/feed</wfw:commentRss>
			<slash:comments>18</slash:comments>
		
		
			</item>
		<item>
		<title>Como instalar Netbox, ferramenta grátis para documentar sua rede</title>
		<link>https://blog.remontti.com.br/5412</link>
					<comments>https://blog.remontti.com.br/5412#comments</comments>
		
		<dc:creator><![CDATA[Rudimar Remontti]]></dc:creator>
		<pubDate>Fri, 19 Mar 2021 20:06:22 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[buster]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[documentação]]></category>
		<category><![CDATA[netbox]]></category>
		<category><![CDATA[nginx]]></category>
		<guid isPermaLink="false">https://blog.remontti.com.br/?p=5412</guid>

					<description><![CDATA[<p>Netbox é um aplicativo web de código aberto projetado para ajudar a gerenciar e documentar redes de computadores. Concebido inicialmente pela equipe de engenharia de rede da DigitalOcean , o NetBox foi desenvolvido especificamente&#46;&#46;&#46;</p>
<p>O post <a href="https://blog.remontti.com.br/5412">Como instalar Netbox, ferramenta grátis para documentar sua rede</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2021/03/netbox.png" alt="" width="416" height="121" class="alignnone size-full wp-image-5421" srcset="https://blog.remontti.com.br/wp-content/uploads/2021/03/netbox.png 416w, https://blog.remontti.com.br/wp-content/uploads/2021/03/netbox-300x87.png 300w" sizes="auto, (max-width: 416px) 100vw, 416px" /><br />
<a href="https://netbox.readthedocs.io/en/stable/" rel="noopener" target="_blank">Netbox</a> é um aplicativo web de código aberto projetado para ajudar a gerenciar e documentar redes de computadores. Concebido inicialmente pela equipe de engenharia de rede da DigitalOcean , o NetBox foi desenvolvido especificamente para atender às necessidades dos engenheiros de rede e infraestrutura. Abrange os seguintes aspectos de gerenciamento de rede:</p>
<p>Gerenciamento de endereço IP (IPAM) &#8211; redes e endereços IP, VRFs e VLANs</p>
<ul>
<li><strong>Racks de equipamentos</strong> &#8211; organizados por grupo e local</li>
<li><strong>Dispositivos</strong> &#8211; Tipos de dispositivos e onde estão instalados</li>
<li><strong>Conexões</strong> &#8211; Rede, console e conexões de energia entre dispositivos</li>
<li><strong>Virtualização</strong> &#8211; máquinas virtuais e clusters</li>
<li><strong>Circuitos de dados</strong> &#8211; circuitos e provedores de comunicações de longa distância</li>
<li><strong>Segredos</strong> &#8211; armazenamento criptografado de credenciais confidenciais</li>
</ul>
<p><strong>Requisitos:</strong><br />
Como de costume vou realizar a <a href="https://blog.remontti.com.br/2966" rel="noopener" target="_blank">instalação no<strong> Debian 10</strong> limpo </a>(sem pacotes extras)<br />
Vire root da forma correta, colocando após os su o &#8220;-&#8220;. </p>
<pre class="remontti-code">su -</pre>
<p>Instale os pacotes que serão requisitos.</p>
<pre class="remontti-code"># apt install vim net-tools wget redis-server supervisor\
  postgresql-contrib postgresql libpq-dev gcc\
  python-minimal python3 python3-pip python3-venv\
  python3-dev build-essential libxml2-dev libxslt1-dev\
  libffi-dev libssl-dev zlib1g-dev graphviz\
  nginx redis python3-setuptools</pre>
<p>Vire o usuário postgres, para poder criar nosso banco de dados.</p>
<pre class="remontti-code"># su - postgres</pre>
<p>Entre no terminal de comandos do postgres</p>
<pre class="remontti-code">$ psql</pre>
<p>Não esqueça de alterar a <strong>senha</strong>.</p>
<pre class="remontti-code">postgres=# CREATE DATABASE netboxdb;
postgres=# CREATE USER netboxuser WITH PASSWORD &#039;senha&#039;;
postgres=# GRANT ALL PRIVILEGES ON DATABASE netboxdb TO netboxuser;
postgres=# exit</pre>
<p> Verifique ser o serviço redis esta respondendo.</p>
<pre class="remontti-code">$ redis-cli ping</pre>
<p>Deve retornar : <strong>PONG</strong><br />
Retorne ao usuario root</p>
<pre class="remontti-code">exit</pre>
<p>Atualize o pip</p>
<pre class="remontti-code"># pip3 install --upgrade pip</pre>
<p>Agora vamos baixar o projeto NetBox. Verifique em <a href="https://github.com/netbox-community/netbox/releases" rel="noopener" target="_blank">https://github.com/netbox-community/netbox/releases</a> não existe uma nova versão.<br />
Entre em tmp (diretório temporário do linux que após um reboot é apagado) em seguida fizemos o download, extraímos, movemos para o diretório correto bem como ajustamos permissões do diretório que faremos upload de arquivos.</p>
<pre class="remontti-code"># cd /tmp
# wget https://github.com/netbox-community/netbox/archive/refs/tags/v2.10.8.tar.gz
# tar vxf v2.10.8.tar.gz
# mv netbox*/ /opt/netbox
# cd /opt/netbox/
# chown www-data. /opt/netbox/netbox/media/ -R</pre>
<p>Execute o comando abaixo para gerar nossa SECRET KEY que iremos usar em seguida.</p>
<pre class="remontti-code"># /opt/netbox/netbox/generate_secret_key.py </pre>
<p>Ex.:</p>
<pre class="remontti-code-plain">T7TE07O$j^Jqf9(*20q8M5kG4%NBIci#gEEn0$wuw*qodT7Lfo</pre>
<p>Copie o arquivo de configuração exemplo para ajustar com suas infomações</p>
<pre class="remontti-code"># cp /opt/netbox/netbox/netbox/configuration.example.py /opt/netbox/netbox/netbox/configuration.py
# vim /opt/netbox/netbox/netbox/configuration.py</pre>
<p>Localize as linhas como exemplo abaixo e altere os valores.</p>
<pre class="remontti-code">ALLOWED_HOSTS = [&#039;localhost&#039;,&#039;netbox.remontti.com.br&#039;]

DATABASE = {
    &#039;NAME&#039;: &#039;netboxdb&#039;,       # Database name
    &#039;USER&#039;: &#039;netboxuser&#039;,     # PostgreSQL username
    &#039;PASSWORD&#039;: &#039;senha&#039;,      # PostgreSQL password
    &#039;HOST&#039;: &#039;localhost&#039;,      # Database server
    &#039;PORT&#039;: &#039;&#039;,               # Database port (leave blank for default)
    &#039;CONN_MAX_AGE&#039;: 300,      # Max database connection age
}
# Gerado com o comando /opt/netbox/netbox/generate_secret_key.py
SECRET_KEY = &#039;T7TE07O$j^Jqf9(*20q8M5kG4%NBIci#gEEn0$wuw*qodT7Lfo&#039;

LOGIN_REQUIRED = True</pre>
<p>Instalaremos os pacotes do py requeiridos.</p>
<pre class="remontti-code"># pip3 install -r /opt/netbox/requirements.txt</pre>
<p>Vamos a instalção do bichão!</p>
<pre class="remontti-code"># cd /opt/netbox/netbox/
# python3 manage.py migrate</pre>
<pre class="remontti-code-plain">Operations to perform:
  Apply all migrations: admin, auth, circuits, contenttypes, dcim, extras, ipam, secrets, sessions, taggit, tenancy, users, virtualization
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying admin.0003_logentry_add_action_flag_choices... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying auth.0007_alter_validators_add_error_messages... OK
  Applying auth.0008_alter_user_username_max_length... OK
  Applying auth.0009_alter_user_last_name_max_length... OK
  Applying auth.0010_alter_group_name_max_length... OK
  Applying auth.0011_update_proxy_permissions... OK
  Applying auth.0012_alter_user_first_name_max_length... OK
  Applying tenancy.0001_initial... OK
  Applying tenancy.0002_tenant_group_optional... OK
  Applying tenancy.0003_unicode_literals... OK
  Applying taggit.0001_initial... OK
  Applying taggit.0002_auto_20150616_2121... OK
  Applying tenancy.0004_tags... OK
  Applying tenancy.0005_change_logging... OK
  Applying dcim.0001_initial... OK
  Applying ipam.0001_initial... OK
  Applying dcim.0002_auto_20160622_1821... OK
  Applying extras.0001_initial... OK
  Applying extras.0002_custom_fields... OK
  Applying extras.0003_exporttemplate_add_description... OK
  Applying extras.0004_topologymap_change_comma_to_semicolon... OK
  Applying extras.0005_useraction_add_bulk_create... OK
  Applying extras.0006_add_imageattachments... OK
  Applying extras.0007_unicode_literals... OK
  Applying extras.0008_reports... OK
  Applying extras.0009_topologymap_type... OK
  Applying extras.0010_customfield_filter_logic... OK
  Applying extras.0011_django2... OK
  Applying extras.0012_webhooks... OK
  Applying extras.0013_objectchange... OK
  Applying ipam.0002_vrf_add_enforce_unique... OK
  Applying dcim.0003_auto_20160628_1721... OK
  Applying dcim.0004_auto_20160701_2049... OK
  Applying dcim.0005_auto_20160706_1722... OK
  Applying dcim.0006_add_device_primary_ip4_ip6... OK
  Applying dcim.0007_device_copy_primary_ip... OK
  Applying dcim.0008_device_remove_primary_ip... OK
  Applying dcim.0009_site_32bit_asn_support... OK
  Applying dcim.0010_devicebay_installed_device_set_null... OK
  Applying ipam.0003_ipam_add_vlangroups... OK
  Applying ipam.0004_ipam_vlangroup_uniqueness... OK
  Applying ipam.0005_auto_20160725_1842... OK
  Applying ipam.0006_vrf_vlan_add_tenant... OK
  Applying ipam.0007_prefix_ipaddress_add_tenant... OK
  Applying ipam.0008_prefix_change_order... OK
  Applying ipam.0009_ipaddress_add_status... OK
  Applying ipam.0010_ipaddress_help_texts... OK
  Applying ipam.0011_rir_add_is_private... OK
  Applying dcim.0011_devicetype_part_number... OK
  Applying dcim.0012_site_rack_device_add_tenant... OK
  Applying dcim.0013_add_interface_form_factors... OK
  Applying dcim.0014_rack_add_type_width... OK
  Applying dcim.0015_rack_add_u_height_validator... OK
  Applying dcim.0016_module_add_manufacturer... OK
  Applying dcim.0017_rack_add_role... OK
  Applying dcim.0018_device_add_asset_tag... OK
  Applying dcim.0019_new_iface_form_factors... OK
  Applying dcim.0020_rack_desc_units... OK
  Applying dcim.0021_add_ff_flexstack... OK
  Applying dcim.0022_color_names_to_rgb... OK
  Applying ipam.0012_services... OK
  Applying ipam.0013_prefix_add_is_pool... OK
  Applying ipam.0014_ipaddress_status_add_deprecated... OK
  Applying ipam.0015_global_vlans... OK
  Applying ipam.0016_unicode_literals... OK
  Applying ipam.0017_ipaddress_roles... OK
  Applying ipam.0018_remove_service_uniqueness_constraint... OK
  Applying dcim.0023_devicetype_comments... OK
  Applying dcim.0024_site_add_contact_fields... OK
  Applying dcim.0025_devicetype_add_interface_ordering... OK
  Applying dcim.0026_add_rack_reservations... OK
  Applying dcim.0027_device_add_site... OK
  Applying dcim.0028_device_copy_rack_to_site... OK
  Applying dcim.0029_allow_rackless_devices... OK
  Applying dcim.0030_interface_add_lag... OK
  Applying dcim.0031_regions... OK
  Applying dcim.0032_device_increase_name_length... OK
  Applying dcim.0033_rackreservation_rack_editable... OK
  Applying dcim.0034_rename_module_to_inventoryitem... OK
  Applying dcim.0035_device_expand_status_choices... OK
  Applying dcim.0036_add_ff_juniper_vcp... OK
  Applying dcim.0037_unicode_literals... OK
  Applying dcim.0038_wireless_interfaces... OK
  Applying dcim.0039_interface_add_enabled_mtu... OK
  Applying dcim.0040_inventoryitem_add_asset_tag_description... OK
  Applying dcim.0041_napalm_integration... OK
  Applying dcim.0042_interface_ff_10ge_cx4... OK
  Applying dcim.0043_device_component_name_lengths... OK
  Applying virtualization.0001_virtualization... OK
  Applying ipam.0019_virtualization... OK
  Applying ipam.0020_ipaddress_add_role_carp... OK
  Applying dcim.0044_virtualization... OK
  Applying dcim.0045_devicerole_vm_role... OK
  Applying dcim.0046_rack_lengthen_facility_id... OK
  Applying dcim.0047_more_100ge_form_factors... OK
  Applying dcim.0048_rack_serial... OK
  Applying dcim.0049_rackreservation_change_user... OK
  Applying dcim.0050_interface_vlan_tagging... OK
  Applying dcim.0051_rackreservation_tenant... OK
  Applying dcim.0052_virtual_chassis... OK
  Applying dcim.0053_platform_manufacturer... OK
  Applying dcim.0054_site_status_timezone_description... OK
  Applying dcim.0055_virtualchassis_ordering... OK
  Applying dcim.0056_django2... OK
  Applying dcim.0057_tags... OK
  Applying dcim.0058_relax_rack_naming_constraints... OK
  Applying dcim.0059_site_latitude_longitude... OK
  Applying dcim.0060_change_logging... OK
  Applying dcim.0061_platform_napalm_args... OK
  Applying extras.0014_configcontexts... OK
  Applying extras.0015_remove_useraction... OK
  Applying extras.0016_exporttemplate_add_cable... OK
  Applying extras.0017_exporttemplate_mime_type_length... OK
  Applying extras.0018_exporttemplate_add_jinja2... OK
  Applying extras.0019_tag_taggeditem... OK
  Applying dcim.0062_interface_mtu... OK
  Applying dcim.0063_device_local_context_data... OK
  Applying dcim.0064_remove_platform_rpc_client... OK
  Applying dcim.0065_front_rear_ports... OK
  Applying circuits.0001_initial... OK
  Applying circuits.0002_auto_20160622_1821... OK
  Applying circuits.0003_provider_32bit_asn_support... OK
  Applying circuits.0004_circuit_add_tenant... OK
  Applying circuits.0005_circuit_add_upstream_speed... OK
  Applying circuits.0006_terminations... OK
  Applying dcim.0066_cables...
    Adding console connections... 0 cables created
    Adding power connections... 0 cables created
    Adding interface connections... 0 cables created
 OK
  Applying circuits.0007_circuit_add_description... OK
  Applying circuits.0008_circuittermination_interface_protect_on_delete... OK
  Applying circuits.0009_unicode_literals... OK
  Applying circuits.0010_circuit_status... OK
  Applying circuits.0011_tags... OK
  Applying circuits.0012_change_logging... OK
  Applying circuits.0013_cables...
    Adding circuit terminations... 0 cables created
 OK
  Applying circuits.0014_circuittermination_description... OK
  Applying circuits.0015_custom_tag_models... OK
  Applying circuits.0016_3569_circuit_fields... OK
  Applying circuits.0017_circuittype_description... OK
  Applying circuits.0018_standardize_description... OK
  Applying circuits.0019_nullbooleanfield_to_booleanfield... OK
  Applying virtualization.0002_virtualmachine_add_status... OK
  Applying virtualization.0003_cluster_add_site... OK
  Applying virtualization.0004_virtualmachine_add_role... OK
  Applying virtualization.0005_django2... OK
  Applying virtualization.0006_tags... OK
  Applying virtualization.0007_change_logging... OK
  Applying virtualization.0008_virtualmachine_local_context_data... OK
  Applying virtualization.0009_custom_tag_models... OK
  Applying virtualization.0010_cluster_add_tenant... OK
  Applying virtualization.0011_3569_virtualmachine_fields... OK
  Applying tenancy.0006_custom_tag_models... OK
  Applying virtualization.0012_vm_name_nonunique... OK
  Applying virtualization.0013_deterministic_ordering... OK
  Applying virtualization.0014_standardize_description... OK
  Applying ipam.0021_vrf_ordering... OK
  Applying ipam.0022_tags... OK
  Applying ipam.0023_change_logging... OK
  Applying ipam.0024_vrf_allow_null_rd... OK
  Applying ipam.0025_custom_tag_models... OK
  Applying ipam.0026_prefix_ordering_vrf_nulls_first... OK
  Applying ipam.0027_ipaddress_add_dns_name... OK
  Applying ipam.0028_3569_prefix_fields... OK
  Applying ipam.0029_3569_ipaddress_fields... OK
  Applying ipam.0030_3569_vlan_fields... OK
  Applying ipam.0031_3569_service_fields... OK
  Applying ipam.0032_role_description... OK
  Applying ipam.0033_deterministic_ordering... OK
  Applying ipam.0034_fix_ipaddress_status_dhcp... OK
  Applying ipam.0035_drop_ip_family... OK
  Applying ipam.0036_standardize_description... OK
  Applying secrets.0001_initial... OK
  Applying secrets.0002_userkey_add_session_key... OK
  Applying secrets.0003_unicode_literals... OK
  Applying secrets.0004_tags... OK
  Applying secrets.0005_change_logging... OK
  Applying secrets.0006_custom_tag_models... OK
  Applying dcim.0067_device_type_remove_qualifiers... OK
  Applying dcim.0068_rack_new_fields... OK
  Applying dcim.0069_deprecate_nullablecharfield... OK
  Applying dcim.0070_custom_tag_models... OK
  Applying extras.0020_tag_data... OK
  Applying extras.0021_add_color_comments_changelog_to_tag... OK
  Applying extras.0022_custom_links... OK
  Applying extras.0023_fix_tag_sequences... OK
  Applying extras.0024_scripts... OK
  Applying extras.0025_objectchange_time_index... OK
  Applying extras.0026_webhook_ca_file_path... OK
  Applying extras.0027_webhook_additional_headers... OK
  Applying extras.0028_remove_topology_maps... OK
  Applying extras.0029_3569_customfield_fields... OK
  Applying extras.0030_3569_objectchange_fields... OK
  Applying extras.0031_3569_exporttemplate_fields... OK
  Applying extras.0032_3569_webhook_fields... OK
  Applying extras.0033_graph_type_template_language... OK
  Applying extras.0034_configcontext_tags... OK
  Applying extras.0035_deterministic_ordering... OK
  Applying extras.0036_contenttype_filters_to_q_objects... OK
  Applying extras.0037_configcontexts_clusters... OK
  Applying extras.0038_webhook_template_support... OK
  Applying extras.0039_update_features_content_types... OK
  Applying extras.0040_standardize_description... OK
  Applying extras.0041_tag_description... OK
  Applying extras.0042_customfield_manager... OK
  Applying virtualization.0015_vminterface... OK
  Applying ipam.0037_ipaddress_assignment... OK
  Applying dcim.0071_device_components_add_description... OK
  Applying dcim.0072_powerfeeds... OK
  Applying dcim.0073_interface_form_factor_to_type... OK
  Applying dcim.0074_increase_field_length_platform_name_slug... OK
  Applying dcim.0075_cable_devices...
Updating cable device terminations...
 OK
  Applying dcim.0076_console_port_types... OK
  Applying dcim.0077_power_types... OK
  Applying dcim.0078_3569_site_fields... OK
  Applying dcim.0079_3569_rack_fields... OK
  Applying dcim.0080_3569_devicetype_fields... OK
  Applying dcim.0081_3569_device_fields... OK
  Applying dcim.0082_3569_interface_fields... OK
  Applying virtualization.0016_replicate_interfaces...
    Replicating 0 VM interfaces...
    Replicating assigned objects...
 OK
  Applying dcim.0082_3569_port_fields... OK
  Applying dcim.0083_3569_cable_fields... OK
  Applying dcim.0084_3569_powerfeed_fields... OK
  Applying dcim.0085_3569_poweroutlet_fields... OK
  Applying dcim.0086_device_name_nonunique... OK
  Applying dcim.0087_role_descriptions... OK
  Applying dcim.0088_powerfeed_available_power... OK
  Applying dcim.0089_deterministic_ordering... OK
  Applying dcim.0090_cable_termination_models... OK
  Applying dcim.0091_interface_type_other... OK
  Applying dcim.0092_fix_rack_outer_unit... OK
  Applying dcim.0093_device_component_ordering... OK
  Applying dcim.0094_device_component_template_ordering... OK
  Applying dcim.0095_primary_model_ordering... OK
  Applying dcim.0096_interface_ordering... OK
  Applying dcim.0097_interfacetemplate_type_other... OK
  Applying dcim.0098_devicetype_images... OK
  Applying dcim.0099_powerfeed_negative_voltage... OK
  Applying dcim.0100_mptt_remove_indexes... OK
  Applying dcim.0101_nested_rackgroups... OK
  Applying dcim.0102_nested_rackgroups_rebuild... OK
  Applying dcim.0103_standardize_description... OK
  Applying dcim.0104_correct_infiniband_types... OK
  Applying dcim.0105_interface_name_collation... OK
  Applying dcim.0106_role_default_color... OK
  Applying dcim.0107_component_labels... OK
  Applying dcim.0108_add_tags... OK
  Applying dcim.0109_interface_remove_vm... OK
  Applying dcim.0110_virtualchassis_name... OK
  Applying dcim.0111_component_template_description... OK
  Applying dcim.0112_standardize_components... OK
  Applying dcim.0113_nullbooleanfield_to_booleanfield... OK
  Applying dcim.0114_update_jsonfield... OK
  Applying dcim.0115_rackreservation_order... OK
  Applying dcim.0116_rearport_max_positions... OK
  Applying extras.0043_report... OK
  Applying extras.0044_jobresult... OK
  Applying extras.0045_configcontext_changelog... OK
  Applying extras.0046_update_jsonfield... OK
  Applying extras.0047_tag_ordering... OK
  Applying users.0001_api_tokens... OK
  Applying users.0002_unicode_literals... OK
  Applying users.0003_token_permissions... OK
  Applying users.0004_standardize_description... OK
  Applying users.0005_userconfig... OK
  Applying users.0006_create_userconfigs... OK
  Applying users.0007_proxy_group_user... OK
  Applying users.0008_objectpermission... OK
  Applying users.0009_replicate_permissions... OK
  Applying secrets.0007_secretrole_description... OK
  Applying secrets.0008_standardize_description... OK
  Applying secrets.0009_secretrole_drop_users_groups... OK
  Applying sessions.0001_initial... OK
  Applying taggit.0003_taggeditem_add_unique_index... OK
  Applying tenancy.0007_nested_tenantgroups... OK
  Applying tenancy.0008_nested_tenantgroups_rebuild... OK
  Applying tenancy.0009_standardize_description... OK
  Applying users.0010_update_jsonfield... OK
  Applying virtualization.0017_update_jsonfield... OK</pre>
<p>Crie seu usuário para o acesso web:</p>
<pre class="remontti-code"># python3 manage.py createsuperuser </pre>
<pre class="remontti-code-plain">Username (leave blank to use &#039;root&#039;): remontti
Email address: noc@remontti.com.br
Password: sua_senha
Password (again): sua_senha
Superuser created successfully</pre>
<pre class="remontti-code"># python3 manage.py collectstatic</pre>
<pre class="remontti-code-plain">979 static files copied to &#039;/opt/netbox/netbox/static&#039;.</pre>
<p>Vamos preparar nosso serviço web</p>
<pre class="remontti-code"># pip3 install gunicorn

# cat &lt;&lt;EOF | tee /opt/netbox/gunicorn_config.py
command = &#039;/usr/local/bin/gunicorn&#039;
pythonpath = &#039;/opt/netbox/netbox&#039;
bind = &#039;127.0.0.1:8001&#039;
workers = 3
user = &#039;www-data&#039;
EOF

# cat &lt;&lt;EOF | tee /etc/supervisor/conf.d/netbox.conf
[program:netbox]
command = gunicorn -c /opt/netbox/gunicorn_config.py netbox.wsgi
directory = /opt/netbox/netbox/
user = www-data
EOF

# systemctl restart supervisor</pre>
<p>Caso você não queira ter certificado e nem vai usar um domínio pode pular esta parte...<br />
Vou instalar o letsencrypt para gerar nosso certificado (pode preencher como quiser as perguntas). Caso queira instalar com um certificado "privado/invalido" <a href="https://netbox.readthedocs.io/en/stable/installation/5-http-server/" rel="noopener" target="_blank">veja aqui</a>.</p>
<pre class="remontti-code"># apt install letsencrypt python-certbot-nginx
# systemctl stop nginx
# letsencrypt --authenticator standalone --installer nginx -d netbox.remontti.com.br</pre>
<p>Crie um script para renomar o certificado automaticamente</p>
<pre class="remontti-code"># vim  /etc/renovassl.sh</pre>
<p>Adicione:</p>
<pre class="remontti-code">#!/bin/bash
# Para o nginx 
/usr/bin/systemctl stop nginx
# Aguarda 10 seg (tempo do nginx parar) 
sleep 10
# Renova o certificado
/usr/bin/certbot -q renew
# Aguarda o certificado renovar
sleep 30
# Restarta o nginx 
/usr/bin/systemctl restart nginx</pre>
<p>Altere as permissões para executa-lo e adicione o scrip ao cron para ser rodado todo dia 1º do mês. </p>
<pre class="remontti-code"># chmod +x /etc/renovassl.sh
# echo &#039;00 00   1 * *   root    /etc/renovassl.sh&#039; &gt;&gt; /etc/crontab
# systemctl restart cron</pre>
<p>Removemos o arquivo defautl do nosso servidor web (nginx), e iremos criar um novo, estou usando um domínio, caso esteja utilizando com IP privado apenas coloque um underline ou sei próprio IP. </p>
<pre class="remontti-code"># rm /etc/nginx/sites-enabled/default
# vim /etc/nginx/sites-available/netbox.conf</pre>
<p>Ajuste o diretório do seu certificado.  </p>
<pre class="remontti-code">server {
    listen 443 ssl;
    # Quiser limitar o acesso apenas a seus IPs
    #allow  192.168.1.0/24;
    #allow  2001:0db8::/32;
    #deny   all;
    #error_page  403   http://www.remontti.com.br;

    server_name netbox.remontti.com.br;

    ssl_certificate /etc/letsencrypt/live/netbox.remontti.com.br/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/netbox.remontti.com.br/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

    client_max_body_size 25m;

    location /static/ {
        alias /opt/netbox/netbox/static/;
    }

    location / {
        proxy_pass http://localhost:8001;
        proxy_set_header X-Forwarded-Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

server {
    listen 80;
    server_name netbox.remontti.com.br;
    return 301 https://$host$request_uri;
}</pre>
<p>Ou a versão simplificada sem certificado, usando o seu endereço IP, se ainda assim deseja só usar o domínios basta colocar no lugar no IP.</p>
<pre class="remontti-code">server {
    listen 80;
    server_name 192.168.0.2;
    client_max_body_size 25m;

    location /static/ {
        alias /opt/netbox/netbox/static/;
    }

    location / {
        proxy_pass http://localhost:8001;
    }
}</pre>
<p>Remova assinatura do nginx (ninguém precisa saber a versão!)</p>
<pre class="remontti-code"># sed -i &#039;s/# server_tokens/server_tokens/&#039; /etc/nginx/nginx.conf</pre>
<p>Verifique se seu arquivo de configuração do nginx está correto:</p>
<pre class="remontti-code"># nginx -t</pre>
<pre class="remontti-code-plain">nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful</pre>
<p>Crie o atalho do arquivo de configuração dentro do diretório enabled para que o mesmo seja carregado ao restart o nginx.</p>
<pre class="remontti-code"># ln -s /etc/nginx/sites-available/netbox.conf /etc/nginx/sites-enabled/
# systemctl restart nginx</pre>
<p>Agora acesse seu domínios <em>"https://netbox.remontti.com.br/"</em> ou <em>"https://ip/"</em> e entre com sua senha criada anteriormente.<br />
<img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2021/03/netbox-2.png" alt="" width="1680" height="914" class="alignnone size-full wp-image-5418" srcset="https://blog.remontti.com.br/wp-content/uploads/2021/03/netbox-2.png 1680w, https://blog.remontti.com.br/wp-content/uploads/2021/03/netbox-2-300x163.png 300w, https://blog.remontti.com.br/wp-content/uploads/2021/03/netbox-2-1024x557.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2021/03/netbox-2-768x418.png 768w, https://blog.remontti.com.br/wp-content/uploads/2021/03/netbox-2-1536x836.png 1536w" sizes="auto, (max-width: 1680px) 100vw, 1680px" /><br />
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /><br />
<img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2021/03/netbox-3.png" alt="" width="1680" height="982" class="alignnone size-full wp-image-5419" srcset="https://blog.remontti.com.br/wp-content/uploads/2021/03/netbox-3.png 1680w, https://blog.remontti.com.br/wp-content/uploads/2021/03/netbox-3-300x175.png 300w, https://blog.remontti.com.br/wp-content/uploads/2021/03/netbox-3-1024x599.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2021/03/netbox-3-768x449.png 768w, https://blog.remontti.com.br/wp-content/uploads/2021/03/netbox-3-1536x898.png 1536w" sizes="auto, (max-width: 1680px) 100vw, 1680px" /></p>
<h3>PLUGINs</h3>
<p><strong>Netbox Topology Views</strong><br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2021/03/Netbox-Topology-Views.png" data-rel="lightbox-gallery-Yq4F0BbF" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2021/03/Netbox-Topology-Views-300x149.png" alt="" width="300" height="149" class="alignnone size-medium wp-image-5446" srcset="https://blog.remontti.com.br/wp-content/uploads/2021/03/Netbox-Topology-Views-300x149.png 300w, https://blog.remontti.com.br/wp-content/uploads/2021/03/Netbox-Topology-Views-1024x510.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2021/03/Netbox-Topology-Views-768x382.png 768w, https://blog.remontti.com.br/wp-content/uploads/2021/03/Netbox-Topology-Views-1536x764.png 1536w, https://blog.remontti.com.br/wp-content/uploads/2021/03/Netbox-Topology-Views.png 1903w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a><br />
<a href="https://github.com/mattieserver/netbox-topology-views" rel="noopener" target="_blank">https://github.com/mattieserver/netbox-topology-views</a></p>
<p><strong>Netbox QR Code</strong><br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2021/03/Netbox-QR-Code.png" data-rel="lightbox-gallery-Yq4F0BbF" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2021/03/Netbox-QR-Code-300x146.png" alt="" width="300" height="146" class="alignnone size-medium wp-image-5451" srcset="https://blog.remontti.com.br/wp-content/uploads/2021/03/Netbox-QR-Code-300x146.png 300w, https://blog.remontti.com.br/wp-content/uploads/2021/03/Netbox-QR-Code-1024x497.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2021/03/Netbox-QR-Code-768x373.png 768w, https://blog.remontti.com.br/wp-content/uploads/2021/03/Netbox-QR-Code-1536x745.png 1536w, https://blog.remontti.com.br/wp-content/uploads/2021/03/Netbox-QR-Code-2048x994.png 2048w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a><br />
<a href="https://github.com/k01ek/netbox-qrcode" rel="noopener" target="_blank">https://github.com/k01ek/netbox-qrcode</a></p>
<pre class="remontti-code"># pip install netbox-topology-views
# pip install netbox-qrcode
# echo netbox-topology-views &gt;&gt; /opt/netbox/local_requirements.txt
# echo netbox-qrcode &gt;&gt; /opt/netbox/local_requirements.txt
# vim /opt/netbox/netbox/netbox/configuration.py</pre>
<p>Adicione:</p>
<pre class="remontti-code">PLUGINS = [&#039;netbox_topology_views&#039;,&#039;netbox_qrcode&#039;]

PLUGINS_CONFIG = {
  &#039;netbox_topology_views&#039;: {
    &#039;device_img&#039;: &#039;router,switch,firewall&#039;,
    &#039;preselected_device_roles&#039;: &#039;Router, Firewall&#039;,
    &#039;allow_coordinates_saving&#039;: False,
    &#039;ignore_cable_type&#039;: &#039;&#039;,
  },
  &#039;netbox_qrcode&#039;: {
    &#039;with_text&#039;: True,
    &#039;text_fields&#039;: [&#039;name&#039;, &#039;serial&#039;],
    &#039;font&#039;: &#039;ArialMT&#039;,
    &#039;custom_text&#039;: &#039;Remontti\ntel.00-000-000-000&#039;,
    &#039;qr_version&#039;: 1,
    &#039;qr_error_correction&#039;: 0,
    &#039;qr_box_size&#039;: 4,
    &#039;qr_border&#039;: 4,
    &#039;cable&#039;: None,
    &#039;rack&#039;: {
      &#039;text_fields&#039;: [
        &#039;site&#039;,
        &#039;name&#039;,
        &#039;tenant&#039;
      ]
    },
    &#039;device&#039;: {
      &#039;text_fields&#039;: [
        &#039;name&#039;,
        &#039;serial&#039;,
        &#039;tenant&#039;,
        &#039;primary_ip&#039;
      ]
    }
  }
}
</pre>
<p>Copiamos os arquivos empacotados estáticos e reiniciamos o supervisor (netbox).</p>
<pre class="remontti-code"># python3 /opt/netbox/netbox/manage.py collectstatic --no-input
# systemctl restart supervisor</pre>
<h3>COMO ATUALIZAR PARA FUTURAS VERSÕES</h3>
<p>Procure pela ultima atualização: <a href="https://github.com/netbox-community/netbox/releases" rel="noopener" target="_blank">https://github.com/netbox-community/netbox/releases</a>, e copie a url da versão tar.gz, no exemplo estou atualizando para versão 2.10.8, então preste atenção no nome dos diretórios.<br />
Vou baixar e extrair:</p>
<pre class="remontti-code"># cd /tmp/
# wget https://github.com/netbox-community/netbox/archive/refs/tags/v2.10.8.tar.gz
# tar -xzf v2.10.8.tar.gz</pre>
<p>Copie os arquivos de configuração para a versão mais nova, preste atenção nos nomes de diretórios que contém a versãi no ex. "2.10.8" para a versão que esteja atualizando.</p>
<pre class="remontti-code"># cp /opt/netbox/netbox/netbox/configuration.py /tmp/netbox-2.10.8/netbox/netbox/
# cp /opt/netbox/local_requirements.txt /tmp/netbox-2.10.8/
# cp /opt/netbox/gunicorn_config.py /tmp/netbox-2.10.8/</pre>
<p>Copie os arquivos que você enviou, exemplo fotos etc.</p>
<pre class="remontti-code"># cp -pr /opt/netbox/netbox/media/ /tmp/netbox-2.10.8/netbox/</pre>
<p>Além disso, certifique-se de copiar ou vincular quaisquer scripts e relatórios personalizados que você fez.</p>
<pre class="remontti-code"># cp -r /opt/netbox/netbox/scripts /opt/netbox/netbox/
# cp -r /opt/netbox/netbox/reports /opt/netbox/netbox/</pre>
<p>Renomeia o antigo diretório (Não vamos remover, pois se der ruim basta volta-lo)</p>
<pre class="remontti-code"># mv /opt/netbox /opt/netbox_`date +%Y%m%d`</pre>
<p>Movemos nosso diretório atualizado para /opt/netbox.</p>
<pre class="remontti-code"># mv /tmp/netbox-2.10.8/ /opt/netbox</pre>
<p>Finalizamos copiando os arquivos empacotados estáticos e reiniciamos o supervisor (netbox).</p>
<pre class="remontti-code"># python3 /opt/netbox/netbox/manage.py collectstatic --no-input
# systemctl restart supervisor</pre>
<p>Espero que tenha gostado!</p>
<p><strong>Se quiser fazer uma doação para o café ficarei muito feliz pelo seu reconhecimento!</strong><br />
<a href="https://blog.remontti.com.br/doar"><img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2019/07/quero-doar-remontti.png" /></a></p>
<p>Participe do canal no <a href="https://t.me/blogremontti" rel="noopener noreferrer" target="_blank">telegram</a> para ficar atualizado sempre que publicar um novo tutorial. </p>
<p>Se não puder doar pode deixar seu agradecimento nos comentário também ficarei feliz em saber que ajudei. Se tiver qualquer pergunta deixe-a também. Se preferir entrar em Contato <a href="https://blog.remontti.com.br/meucontato" rel="noopener noreferrer" target="_blank">clique aqui.</a></p>
<p>Fonte:<br />
<a href="https://netbox.readthedocs.io/en/stable/installation" rel="noopener" target="_blank">https://netbox.readthedocs.io/en/stable/installation</a></p>
<p>O post <a href="https://blog.remontti.com.br/5412">Como instalar Netbox, ferramenta grátis para documentar sua rede</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.remontti.com.br/5412/feed</wfw:commentRss>
			<slash:comments>14</slash:comments>
		
		
			</item>
	</channel>
</rss>
