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
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