Distribuzione di NetBox e NetBox-Scanner

Suppongo che molti di voi oggi abbiano documentato le proprie infrastrutture in modo corretto e ordinato, bene, per il resto, è questo post. Dove vedremo NetBox, che per chi non lo conoscesse è una soluzione open source utilizzata per la gestione dell'infrastruttura di rete e dei data center. Oltre ad automatizzare la parte IPAM con NetBox Scanner.

Cosa ho detto, In questo post vedremo come effettuare il deploy in modo rapido, On-premise o self-hosted, come ti piace dire, 😉 la soluzione di NetBox. Una soluzione MOLTO completa che ti permetterà di documentare da un cavo, A cosa serve, Dove va… alle funzioni che le vostre macchine possono avere; Un inventario completo della parte fisica della tua infrastruttura…

Distribuzione di NetBox

Partiamo e poi ci addentriamo un po' nel fango, per un rapido dispiegamento, come al solito, ci affideremo ai container Docker che distribuiremo in un batter d'occhio, avremo quindi bisogno di avere Docker e Docker Compose precedentemente installati. Scarichiamo dal repository della Community NetBox:

Git Clone -B Release https://github.com/netbox-community/netbox-docker.git CD Netbox-Docker

Creiamo il file 'docker-compose.override.yml’

Servizi:
  Scatola di rete:
    Porte:
      - 8080:8080
    container_name: Riavvio della netbox: reti a meno che non siano state arrestate:
      netbox_default:
  netbox-worker:
    container_name: riavvio netbox-worker: reti a meno che non siano state arrestate:
      netbox_default:
  netbox-pulizie:
    container_name: netbox-housekeeping riavvio: reti a meno che non siano state arrestate:
      netbox_default:
  Postgres:
    container_name: netbox-postgres riavvio: reti a meno che non siano state arrestate:
      netbox_default:
  Redis:
    container_name: riavvio netbox-redis: reti a meno che non siano state arrestate:
      netbox_default:
  redis-cache:
    container_name: riavvio netbox-redis-cache: reti a meno che non siano state arrestate:
      netbox_default:
Reti:
  netbox_default:
    autista: Ponte

E distribuiamo i container, verrà scaricato e avviato automaticamente, Eseguiamo quindi:

sudo docker compose up -d

Creeremo un nuovo utente per gestire NetBox, Ci chiederai di registrare un nome utente e una password, così come il tuo indirizzo e-mail, Correre:

Sudo Docker Compose Exec Netbox /opt/netbox/netbox/manage.py createsuperuser

Accediamo con un browser, via HTTP e alla porta che indichiamo, che per impostazione predefinita è 8080tcp. Effettuiamo l'accesso con l'utente appena creato.

Ed ecco il mostro NetBox, , vedi che è MOLTO MOLTO completo, Potrai dargli da mangiare in base alle tue esigenze, Non devi definire tutto, ma ti dà la possibilità di definire i tuoi rack o armadi rack, Dispositivi (Server, Interruttori, Router, modelli, Produttori…), Gestione dei cavi, Connessioni… Documentazione di rete, Rete VLAN, VRF, Gestione degli indirizzi IP con IPAM, VPN, Circuiti.. E un sacco di altre cose!

Una cosa che mi raccomando, è quello di dare un'occhiata a questo video di Eduardo Taboada e Eduardo Collado, Sono crepe (e molto bello) in Tecnocratico, Si tratta di un video in cui esaminano lo strumento in modo molto dettagliato, spiegandone le funzionalità. Dal momento che sarà necessario configurarlo minimamente, come avere un'organizzazione e, così puoi iniziare a lavorare con la parte che ti interessa di più.

Distribuzione di NetBox-Scanner

Se vogliamo automatizzare la parte IPAM, cioè, che l'inventario dei nostri indirizzi IP possa essere aggiornato automaticamente, i nuovi IP rilevati vengono registrati… e quindi evitando di dover registrare manualmente ogni indirizzo IP della nostra organizzazione… Bene, per questo possiamo usare NetBox-Scanner!

Operazioni preliminari, in NetBox dobbiamo creare un tag (o Etichetta) Denominato 'NMAP', per questo, Stiamo per “Personalizzazione” > “Tag” e creane uno nuovo.

Il secondo, dobbiamo creare un token API per consentire a NetBox-Scanner di accedere a NetBox, per questo, Stiamo per “Admin” > “Tokens de API” e fai clic per creare un nuovo token API, Selezioniamo l'utente, copiare il Token e possiamo indicare nella descrizione che è il token di accesso per NetBox Scanner.

Non male, ora è il momento di implementare NetBox-Scanner, Con un altro contenitore Docker!

git clone https://github.com/casperklein/docker-netbox-scanner.git CD docker-netbox-scanner/

Modifichiamo il file 'netbox-scanner.conf' indicando l'indirizzo NetBox e il token:

[NETBOX]
indirizzo = http://DIRECCION_IP_NETBOX:8080
Gettone = xxxxxxxxxxxxxxxx

Creiamo il file 'networks.txt’ con il contenuto degli intervalli di indirizzi IP da analizzare, Vogliamo che faccia il ping:

192.168.1.0/24
192.168.2.0/24
...

E saremo in grado di avviare il contenitore come al solito, con:

sudo docker compose up -d

Una volta che il contenitore si avvia, se vogliamo, Saremo in grado di eseguire la scansione immediatamente, per questo, dovremo solo eseguire uno script che porti, indicando come argomento il server DNS contro il quale vogliamo risolvere gli indirizzi IP, esempio:

sudo ./scan.sh --DNS 192.168.5.100
  Avvio di Netbox-Scanner..
Unable to find image 'casperklein/netbox-scanner:latest' locally
latest: Estrazione da casperklein/netbox-scanner 1aca2419c7eb: Tirare completo 4f4fb700ef54: Pull completo Digest: sha256:8b4cbd577af9d96b7cd5057d871000e1619b8cc51058e2ea7e42a991292856fc Stato: Immagine più recente scaricata per casperklein/netbox-scanner:ultima rete di scansione 192.168.5.0/24
Avvio di Nmap 7.93 ( https://nmap.org ) A 2024-11-25 22:59 Rapporto di scansione UTC Nmap per FORTIGATE.lab.local (192.168.5.1)
L'host è attivo (0.00034s latenza).
Rapporto di scansione di Nmap per 192.168.5.6
L'host è attivo (0.00054s latenza).
Rapporto di scansione Nmap per OS-LAB-01.Laboratorio locale (192.168.5.41)
L'host è attivo (0.00036s latenza).
Rapporto di scansione Nmap per remarkable2.lab.local (192.168.5.47)
L'host è attivo (0.15s latenza).
Rapporto di scansione Nmap per sonoff04.lab.local (192.168.5.74)
L'host è attivo (0.17s latenza).
Rapporto di scansione Nmap per telefono-rojo.lab.local (192.168.5.91)
L'host è attivo (0.00079s latenza).
Rapporto di scansione Nmap per OS-ESXi-002.Laboratorio locale (192.168.5.92)
L'host è attivo (0.0075s latenza).
Rapporto di scansione Nmap per OS-ESXi-004.Laboratorio locale (192.168.5.94)
L'host è attivo (0.00018s latenza).
...

E se andiamo su NetBox nella zona IPAM > “Indirizzi IP” vedremo di aver aggiunto gli indirizzi IP degli intervalli appena scansionati, nonché con la sua corretta risoluzione DNS.

Per pianificare gli aggiornamenti degli indirizzi in Gestione indirizzi IP, Possiamo programmare in cron per eseguire automaticamente lo script ogni mezz'ora, 1 Hora, 1 Tempo al giorno…

# m h dom mon dow command
0 * * * * /Home/Laboratorio/Docker-Netbox-Scanner/scan.sh --DNS 192.168.5.100

Così…. Pim Pam prende laccasitos! Bene, questo è tutto per oggi, Questo è tutto 🥸, Spero che tu l'abbia trovato interessante e che tu possa applicarlo nelle tue organizzazioni per migliorare la gestione quotidiana, Soprattutto con questi problemi, avere questi processi minimamente documentati e automatizzati. Continueremo con alcune cose più interessanti in altri post di questa magnifica soluzione. Come al solito, Vi prendete cura di voi stessi e vi comportate bene, riposo, Lascia che sia il destino, Ti mando un abbraccio!

Post consigliati

Autore

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, Non esitate a contattarmi, Cercherò di aiutarti ogni volta che potrò, Condividere è vivere ;) . Goditi i documenti!!!

Regole e avvisi con ElastAlert 2

25 de marzo de 2025