Skip to content
Netnaiver

Netnaiver

Netnaiver

Easily manage your network devices with the help of LLDP.

Supported/tested devices:

  • Netgear GS724Tv3 (and potentially other netgear devices of this generation)
  • Netgear S350 (and potentially other newer netgear devices)
  • Mikrotik RouterOS devices
  • Unifi AccessPoint
  • Generic Linux SNMP device

Implement support for your device by creating a corresponding PHP implementation implementing the iDevice interface under /discovery/devices.

Screenshots

Screenshot of Graph WebUI Screenshot of Link details in WebUi Screenshot of change history in WebUi Screenshot of settings in WebUi

Deploy

Here's how to deploy this application.

  1. Download latest docker-compose.yaml
  2. Configure (see configuration section)
  3. Start docker containers
docker-compose up -d
  1. Initialize the database
docker exec -it netnaiver_server npm run schema:create
  1. (if you did not configure LDAP/SSO) create local admin user
docker exec -it netnaiver_server npm run admin:create-local-user

Configuration

Minimal configuration to get up and running in conjunction with the docker-compose file:

---
redis:
    host: redis
elasticsearch:
    enabled: true
    host: elasticsearch
    port: 9200

Save this as netnaiver.yaml next to the docker-compose file.

Auth backends

Demo

(not yet implemented)

auth_providers:
    - type: demo
      uuid: <provider name>
      username: demo
      password: demo

This provider is meant only for demonstration/development purposes. May be removed without warning. DO NOT USE IN A PRODUCTION ENVIRONMENT!

Local

auth_providers:
    - type: local
      uuid: <provider name>

This provider has no options to configure.

OpenID Connect

auth_providers:
    - type: oid-connect
      uuid: <provider name>
      discovery_uri: https://<sso server domain>/application/o/netnaiver/
      redirect_uri: https://<netnaiver domain>/auth/callback/unique_provider_name
      client_id: <client name>
      client_secret: <client secret>

LDAP

(not yet implemented)

auth_providers:
    - type: ldap
      uuid: <provider name>
      host: <ldap host>
      protocol: <ldap or ldaps>
      port: <ldap/ldaps port>
      bind_dn: <bind username>
      bind_password: <bind user password>
      base_dn: <ldap base dn>