Difference between revisions of "Netdisco"
(Created page with "Netdisco hämtar MAC-tabeller, ARP-tabeller, VLAN-databaser, LLDP/CDP-grannskap, firmwareversioner, m.m från routrar och switchar med hjälp av SNMP. Man schemalägger när d...") |
Helikopter (talk | contribs) m (→Konfiguration) |
||
(20 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | Netdisco hämtar MAC-tabeller, ARP-tabeller, VLAN-databaser, LLDP/CDP-grannskap, firmwareversioner, m.m från routrar och switchar med hjälp av SNMP. Man schemalägger när data ska samlas in. | + | [[Category:Guider]] |
+ | Netdisco hämtar MAC-tabeller, ARP-tabeller, VLAN-databaser, LLDP/CDP-grannskap, firmwareversioner, m.m från routrar och switchar med hjälp av SNMP. Man schemalägger när data ska samlas in, dvs det är inte realtidsövervakning. | ||
+ | Denna guide är minimalistiskt utformad, för kommandoförklaringar se referensguide alternativt google. Referens: | ||
+ | https://metacpan.org/pod/App::Netdisco | ||
− | + | ==Installation== | |
− | ==Installation ''Ubuntu 14.04.1 LTS Server x64'' | + | ''Ubuntu 14.04.1 LTS Server x64''<br/> |
− | |||
− | |||
− | |||
Denna guide är till stor del hämtad från: http://blog.asiantuntijakaveri.fi/2014/08/netdisco2-on-ubuntu-1404.html | Denna guide är till stor del hämtad från: http://blog.asiantuntijakaveri.fi/2014/08/netdisco2-on-ubuntu-1404.html | ||
− | |||
sudo su - | sudo su - | ||
− | apt-get update && apt-get -y dist-upgrade && apt-get -y install open-vm-tools build-essential wget lftp mtr-tiny zip ntp | + | apt-get update && apt-get -y dist-upgrade && apt-get -y install open-vm-tools build-essential wget lftp mtr-tiny zip ntp fail2ban curl |
− | + | echo "net.ipv6.conf.all.disable_ipv6=1" >>/etc/sysctl.conf | |
− | |||
+ | ===Databas=== | ||
apt-get -y install libdbd-pg-perl libsnmp-perl postgresql pgtune | apt-get -y install libdbd-pg-perl libsnmp-perl postgresql pgtune | ||
mv /etc/postgresql/9.3/main/postgresql.conf /etc/postgresql/9.3/main/postgresql.conf.old | mv /etc/postgresql/9.3/main/postgresql.conf /etc/postgresql/9.3/main/postgresql.conf.old | ||
Line 21: | Line 20: | ||
su - postgres | su - postgres | ||
createuser -DRSP netdisco | createuser -DRSP netdisco | ||
− | Enter some password here | + | (Enter some DB password here) |
− | createdb - | + | createdb --owner netdisco netdisco |
Switch back to root | Switch back to root | ||
exit | exit | ||
+ | ===Netdisco=== | ||
adduser netdisco --shell /bin/bash --disabled-password --gecos netdisco && su - netdisco | adduser netdisco --shell /bin/bash --disabled-password --gecos netdisco && su - netdisco | ||
curl -L http://cpanmin.us/ | perl - --notest --local-lib ~/perl5 App::Netdisco | curl -L http://cpanmin.us/ | perl - --notest --local-lib ~/perl5 App::Netdisco | ||
− | mkdir ~/bin | + | ==Konfiguration== |
− | + | mkdir ~/bin && mkdir ~/environments && ln -s ~/perl5/bin/{localenv,netdisco-*} ~/bin/ | |
− | |||
~/bin/netdisco-daemon status | ~/bin/netdisco-daemon status | ||
− | Här är grunden för deploymenten, lägg till de SNMP-communitys som ska användas. Schemaläggningen är i cron-format. | + | Här är grunden för deploymenten, lägg till de SNMP-communitys som ska användas. Schemaläggningen är i cron-format. I exemplet görs discoverall 10 över varje timme. <br/> |
+ | OBS Om detta görs i en virtuell maskin tas förslagsvis en snapshot här. | ||
cat <<'__EOF__'>~/environments/deployment.yml | cat <<'__EOF__'>~/environments/deployment.yml | ||
database: | database: | ||
name: 'netdisco' | name: 'netdisco' | ||
user: 'netdisco' | user: 'netdisco' | ||
− | pass: ' | + | pass: '(PW som sattes tidigare)' |
safe_password_store: true | safe_password_store: true | ||
snmp_auth: | snmp_auth: | ||
Line 51: | Line 51: | ||
read: true | read: true | ||
write: false | write: false | ||
+ | - tag: 'v3example' | ||
+ | user: netdisco | ||
+ | auth: | ||
+ | pass: netdiscokey | ||
+ | proto: SHA | ||
+ | priv: | ||
+ | pass: netdiscokey2 | ||
+ | proto: AES | ||
schedule: | schedule: | ||
discoverall: | discoverall: | ||
Line 69: | Line 77: | ||
~/bin/netdisco-deploy | ~/bin/netdisco-deploy | ||
+ | Svara ja på allt och sätt credentials för web gui:t. | ||
− | + | Skapa script för att starta Netdisco med listener port 5000 | |
− | cat <<'__EOF__' >~/run-netdisco.sh | + | cat <<'__EOF__'>~/run-netdisco.sh |
#!/bin/bash | #!/bin/bash | ||
− | ~/bin/netdisco-web start | + | ~/bin/netdisco-web start --port=5000 |
sleep 5 | sleep 5 | ||
~/bin/netdisco-daemon start | ~/bin/netdisco-daemon start | ||
Line 82: | Line 91: | ||
Switch back to root | Switch back to root | ||
− | exit | + | exit |
echo "( sudo su - netdisco -c '/home/netdisco/run-netdisco.sh' ) &" >/etc/rc.local | echo "( sudo su - netdisco -c '/home/netdisco/run-netdisco.sh' ) &" >/etc/rc.local | ||
reboot | reboot | ||
+ | |||
+ | === WEBGUI === | ||
+ | Logga in på http://[IP]:5000 | ||
+ | |||
+ | Börja med att mata in IP-adress på en switch eller router som ska övervakas på förstasidan. Vänta och se hur mycket som upptäcks. Är allt rätt konfigurerat kommer väldigt mycket att upptäckas. | ||
+ | |||
+ | ===Enheter som ska övervakas=== | ||
+ | Logga in på diverse enhet som ska övervakas och lägg till community samt IP för Netdiscomaskinen. | ||
+ | |||
+ | ===Underhåll=== | ||
+ | upgrade Netdisco | ||
+ | ~/bin/localenv cpanm --notest App::Netdisco | ||
+ | |||
+ | apply database schema updates | ||
+ | ~/bin/netdisco-deploy | ||
+ | |||
+ | restart web service | ||
+ | ~/bin/netdisco-web restart | ||
+ | |||
+ | restart job daemon | ||
+ | ~/bin/netdisco-daemon restart |
Latest revision as of 13:57, 5 November 2015
Netdisco hämtar MAC-tabeller, ARP-tabeller, VLAN-databaser, LLDP/CDP-grannskap, firmwareversioner, m.m från routrar och switchar med hjälp av SNMP. Man schemalägger när data ska samlas in, dvs det är inte realtidsövervakning.
Denna guide är minimalistiskt utformad, för kommandoförklaringar se referensguide alternativt google. Referens:
https://metacpan.org/pod/App::Netdisco
Contents
Installation
Ubuntu 14.04.1 LTS Server x64
Denna guide är till stor del hämtad från: http://blog.asiantuntijakaveri.fi/2014/08/netdisco2-on-ubuntu-1404.html
sudo su - apt-get update && apt-get -y dist-upgrade && apt-get -y install open-vm-tools build-essential wget lftp mtr-tiny zip ntp fail2ban curl echo "net.ipv6.conf.all.disable_ipv6=1" >>/etc/sysctl.conf
Databas
apt-get -y install libdbd-pg-perl libsnmp-perl postgresql pgtune mv /etc/postgresql/9.3/main/postgresql.conf /etc/postgresql/9.3/main/postgresql.conf.old pgtune -i /etc/postgresql/9.3/main/postgresql.conf.old -o /etc/postgresql/9.3/main/postgresql.conf
Switch to postgres user and create new SQL user
su - postgres createuser -DRSP netdisco (Enter some DB password here) createdb --owner netdisco netdisco
Switch back to root
exit
Netdisco
adduser netdisco --shell /bin/bash --disabled-password --gecos netdisco && su - netdisco curl -L http://cpanmin.us/ | perl - --notest --local-lib ~/perl5 App::Netdisco
Konfiguration
mkdir ~/bin && mkdir ~/environments && ln -s ~/perl5/bin/{localenv,netdisco-*} ~/bin/ ~/bin/netdisco-daemon status
Här är grunden för deploymenten, lägg till de SNMP-communitys som ska användas. Schemaläggningen är i cron-format. I exemplet görs discoverall 10 över varje timme.
OBS Om detta görs i en virtuell maskin tas förslagsvis en snapshot här.
cat <<'__EOF__'>~/environments/deployment.yml database: name: 'netdisco' user: 'netdisco' pass: '(PW som sattes tidigare)' safe_password_store: true snmp_auth: - tag: 'default_1' community: 'puplic' read: true write: false - tag: 'default_2' community: 'public' read: true write: false - tag: 'v3example' user: netdisco auth: pass: netdiscokey proto: SHA priv: pass: netdiscokey2 proto: AES schedule: discoverall: when: '10 * * * *' macwalk: when: '35 * * * *' arpwalk: when: '45 * * * *' nbtwalk: when: '55 * * * *' expire: when: '15 23 * * *' dns: max_outstanding: 50 workers: tasks: 'AUTO * 5' __EOF__
~/bin/netdisco-deploy
Svara ja på allt och sätt credentials för web gui:t.
Skapa script för att starta Netdisco med listener port 5000
cat <<'__EOF__'>~/run-netdisco.sh #!/bin/bash ~/bin/netdisco-web start --port=5000 sleep 5 ~/bin/netdisco-daemon start __EOF__ chmod a+x ~/run-netdisco.sh
~/run-netdisco.sh
Switch back to root
exit echo "( sudo su - netdisco -c '/home/netdisco/run-netdisco.sh' ) &" >/etc/rc.local reboot
WEBGUI
Logga in på http://[IP]:5000
Börja med att mata in IP-adress på en switch eller router som ska övervakas på förstasidan. Vänta och se hur mycket som upptäcks. Är allt rätt konfigurerat kommer väldigt mycket att upptäckas.
Enheter som ska övervakas
Logga in på diverse enhet som ska övervakas och lägg till community samt IP för Netdiscomaskinen.
Underhåll
upgrade Netdisco
~/bin/localenv cpanm --notest App::Netdisco
apply database schema updates
~/bin/netdisco-deploy
restart web service
~/bin/netdisco-web restart
restart job daemon
~/bin/netdisco-daemon restart