NIPAP

From HackerNet
Revision as of 18:25, 5 November 2015 by Helikopter (talk | contribs) (Debug)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

NIPAP är ett IPAM-system som är skrivet i python och är open source. Det finns både webgui och cli för att managera datan som sparas i en postgres-DB.
Demo: http://nipap-demo.spritelink.net/

Installation

Debian eller Ubuntu

echo "deb http://spritelink.github.io/NIPAP/repos/apt stable main extra" > /etc/apt/sources.list.d/nipap.list
wget -O - https://spritelink.github.io/NIPAP/nipap.gpg.key | apt-key add -
apt-get update && apt-get -y install nipapd

Svara Yes på frågorna för att autoskapa databas

apt-get -y install nipap-www

Återigen yes för att skapa ett användarkonto för frontend till backend

Konfiguration

I denna guide görs allt på samma maskin men frontend accessas från andra maskiner. Det behövs ett konto för att logga in på webguit.

nipap-passwd add --user user1 --password mypasswort --name "the man"

Apache

apt-get -y install apache2 && apt-get -y install libapache2-mod-wsgi
nano /etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
       DocumentRoot /var/www/html
       ErrorLog ${APACHE_LOG_DIR}/error.log
       CustomLog ${APACHE_LOG_DIR}/access.log combined

       WSGIScriptAlias / /etc/nipap/nipap-www.wsgi
       <Directory "/etc/nipap">
       Order allow,deny
       Allow from all
       <Files nipap-www.wsgi>
       Require all granted
       </Files>
       </Directory>
</VirtualHost>
chown -R www-data:www-data /var/cache/nipap-www && chmod -R u=rwX /var/cache/nipap-www
sudo service apache2 restart

LDAP

Börja med att installera python-ldap modul.

apt-get install python-ldap

Ändra sedan i /etc/nipap/nipap.conf filen till följande.

default_backend = ldap

basedn = dc=hackernet,dc=se
uri = ldap://IP
binddn_fmt = uid={},ou=users,dc=hackernet,dc=se
search = uid={}
search_binddn = cn=admin,dc=hackernet,dc=se
search_password = secretpw
rw_group = cn=nipap,dc=hackernet,dc=se

Skapa sedan en grupp som heter nipap och som har stöd för memberOf. Användare i denna gruppen får read/write rättigheter.

CLI

Med ett cli går det snabbare att fylla databasen om det handlar om stora datamängder.

apt-get -y install nipap-cli
nipap-passwd add --user cli-master-flash --password olasamigossenior --name "the CLI man"
touch ~/.nipaprc && chmod 0600 .nipaprc && nano .nipaprc
[global]
hostname = localhost
port     = 1337
username = cli-master-flash
password = olasamigossenior
default_vrf_rt = none
default_list_vrf_rt = all
nipap address add prefix 192.0.2.0/24 type assignment description "MGM-network"
nipap address add prefix 172.20.0.10 type host node "SW01" description "L3-switch"

Debug

sudo nipapd -d -f --no-pid-file