Netdisco2

From ICO wiki
Jump to navigationJump to search

Sissejuhatus

Netdisco2 on uus versioon Netdisco vabavaralisele tarkvarale. Netdisco2 on veebipõhine ja avatud koodiga võrgu halduse lahendus. Peamisteks sihtgruppideks on suuremad firmad ja ülikoolid, kellel on kasutusel palju võrgujagureid. Netdisco kasutab info kogumiseks SNMP protokolli ning talletamiseks Postgresql andmebaasi.

Peamised kasutamisvaldkonnad:

  • Otsing - võimaldab leida arvuti või seadme konkreetse võrgupordi MAC, IP või nimeserveri nime järgi.
  • Portide kontroll - võimaldab kiirelt välja ja sisse lülitada võrgujaguri porte (juhul kui on antud SNMP kirjutamise õigus)
  • Ülevaade seadmetest
  • Raportid IP ja füüsiliste portide kasutuse kohta hetkel ja minevikus

Toetatud platvormid

Kuna Netdisco2 on kirjutatud Perl programmeerimiskeeles, siis Netdisco töötab teoreetiliselt mistahes operatsioonisüsteemil, kus Perl töötab.

Tarkvara arendajad soovitatavad operatsioonisüsteeme:

  • Ubuntu/Debian
  • Fedora/Red-Hat

Installeerimine

Intsallatsioon ja konfigureerimine eeldab kasutajalt head võrgu protokollide ning unix laadsete operatsioonisüsteemide tundmist. Antud juhend on kirjutatud Ubuntu 14.04.1 LTS operatsioonisüsteemi näitel.

Vajalikud eeldused

  • Läheme juurkasutajaks
sudo -i
  • Uuendame uuenduste registri
apt-get update
  • Installeerime viimased uuendused
apt-get upgrade
  • Installeerime Postgresql andmebaasimootori
apt-get install postgresql
  • Netdisco kasutab mitmeid Perl sõltuvusteeke, mis on soovitatav eelnevalt installeerida
apt-get install libdbd-pg-perl libsnmp-perl build-essential
  • Loome kasutaja "netdisco"
useradd -m -p x -s /bin/bash netdisco
  • Loome Posgresql kasutaja ja andmebaasi
su - postgres

createuser -DRSP netdisco
createdb -O netdisco netdisco

Installatsiooni protseduurid

Skript eeldab, et loodud on netdisco kasutaja koos kodukaustaga ning serveril on toimiv nimelahendus ja interneti ligipääs. Tarkvara installeeritakse netdisco kasutaja kodukausta ning skriptis luuakse ~/perl5 kaust.

  • Läheme netdisco kasutajaks
su - netdisco
  • Käivitame installi
curl -L http://cpanmin.us/ | perl - --notest --local-lib ~/perl5 App::Netdisco
  • Teeme värkselt installeeritud Perl tarkvaradele mugavamaks ligipääsuks lingi kodukataloogi ~/bin kaustale
mkdri ~/bin
ln -s ~/perl5/bin/{localenv,netdisco-*} ~/bin/
  • Testime Netdisco deemonit
~/bin/netdisco-daemon status

Kui kõik toimib saame deemoni staatuseks "Stopped"

Konfigureerimine

  • Loome kausta oma konfiguratsiooni faili asukohale ning kopeerime konfiguratsiooni faili näidise uude kausta
mkdir ~/environments
cp ~/perl5/lib/perl5/auto/share/dist/App-Netdisco/environments/deployment.yml ~/environments
chmod 600 ~/environments/deployment.yml
  • Avame konfiguratsiooni faili ning täiendame vastavalt
nano ~/environments/deployment.yml
  • Muuda ära "Essential Settings" sektsioonis andmebaasi asukoha parameetrid:

Näide:

# ------------------
# ESSENTIAL SETTINGS
# ------------------

database:
  name: 'netdisco'
  user: 'netdisco'
  pass: 'kasutaja_parool'
  host: 'localhost'
  • Seadistame FQDNS nime domeeni ja SNMP kommuuni stringid
# will be stripped from fqdn when displayed in the web UI
# also, do not forget the leading dot.
# ```````````````````````````````````````````````````````
domain_suffix: '.minudomeen.local'
# SNMP community string(s)
# ````````````````````````
snmp_auth:
  - tag: 'switchide_readonly'
    community: 'mingi_string'
    read: true
    write: false
  • Soovi korral võib seadistada ka automaatse seadmete tuvastuse schedule
  • Teostame konfiguratsiooni ning loome vastavad andmebaasi muudatused
~/bin/netdisco-deploy

Kui tegemist on uue installatsiooniga, siis vasta kõigile küsimustele jaatavalt (yes)

Käivitamine

  • Käivitame veebirakenduse
~/bin/netdisco-web start
  • Käivitame netdisco deemoni
~/bin/netdisco-daemon start
  • Käivita netdisco esmane seadmete otsing
~/bin/netdisco-do -D discover -d 192.0.2.1

Netdisco2 otsib etteantud seadme kaudu üles kõik võrguseadmed, mis selle konkreetse seadmega ühises topoloogias asuvad. Netdisco2 kasutab võrguseadmete Layer 2 topoloogia avastamiseks CDP ja LLDP protokolle. Juhul kui teil on seadmeid, mis ei ole konkreetse seadmega Layer 2 avastamisprotokollide kaudu kättesaadavad, siis need seadmeks tuleb eraldi avastada. Selline tegevus on ühekordne ning vajalik uue Layer 2 topoloogia tutvustamiseks. Edaspidi oskab Netdisco2 ise topoloogiat uuendada ja muuta.

Kokkuvõtteks

Netdisco2 on minu arvates ülimalt hea tööriist võrguadministraatoritele. Kõige olulisemaks pean ma tarkvara võimet tuvastada millistes portides konkreetsed seadmed asuvad ning nende ajalugu. Samuti annab tarkvara hea ülevaate portide kasutuse kohta ning võrgujagurite tarkvaraversioonide kohta. Kuna netdisco kasutab NetBIOS protokolli, siis oskab ta võrgujagurist saadud MAC aadressi IP aadressiks ja nimeks lahendada ning selliselt on võimalik väga kiiresti tuvastada seadme või arvuti füüsilise asukoha suures võrgus. Kadunud on aega nõudev võrgujagurite MAC aadressi tabelites tuhnimine.