Skip to main content

A NetBox plugin for Access List management

Project description

NetBox Access Lists Plugin

A Netbox plugin for Access List management.

Features

This plugin provides the following models:

  • Access Lists
  • Access List to Interface Assignment
  • Access List Rules (abstract model basis for other rules)
  • Access List Standard Rules
  • Access List Extended Rules

Origin

Based on the NetBox plugin tutorial by jeremystretch:

All credit should go to Jeremy. Thanks, Jeremy!

This project just looks to build on top of this framework and model presented.

Contributing

This project is currently maintained jointly by:

See the CONTRIBUTING for more information.

Compatibility

Each Plugin Version listed below has been tested with its corresponding NetBox Version.

NetBox Version Plugin Version
>= 4.0.2 1.6.0
3.7 1.5.0
3.6 1.4.0
3.5 1.3.0
3.4 1.2.2
3.3 1.1.0
3.2 1.0.1

Installing

For adding to a NetBox Docker setup see the general instructions for using netbox-docker with plugins.

You can install with pip:

pip install netbox-acls

or by adding to your local_requirements.txt or plugin_requirements.txt (netbox-docker):

netbox-acls

Configuration

Enable the plugin in /opt/netbox/netbox/netbox/configuration.py, or if you use netbox-docker, your /configuration/plugins.py file :

PLUGINS = [
    "netbox_acls"
]

PLUGINS_CONFIG = {
    "netbox_acls": {
        "top_level_menu": True # If set to True the plugin will add a top level menu item for the plugin. If set to False the plugin will add a menu item under the Plugins menu item.  Default is set to True.
    },
}

To add the required netbox-acls tables to your NetBox database, run the migrate manager subcommand in the NetBox virtual environment:

cd /opt/netbox
sudo ./venv/bin/python3 netbox/manage.py migrate

Developing

VSCode + Docker + Dev Containers

To develop this plugin further one can use the included .devcontainer configuration. This configuration creates a docker container which includes a fully working netbox installation. Currently it should work when using WSL 2. For this to work make sure you have Docker Desktop installed and the WSL 2 integrations activated.

  1. In the WSL terminal, enter code to run Visual studio code.
  2. Install the devcontainer extension "ms-vscode-remote.remote-containers"
  3. Press Ctrl+Shift+P and use the "Dev Container: Clone Repository in Container Volume" function to clone this repository. This will take a while depending on your computer
  4. If you'd like the netbox instance to be prepopulated with example data from netbox-initializers run make initializers
  5. Start the netbox instance using make all

Your netbox instance will be served under 0.0.0.0:8000, so it should now be available under localhost:8000.

Screenshots

Access List - List View Access List - List View

Access List (Type Extended) - Individual View Access List Type Extended - Individual View

Access List (Type Standard) - Individual View Access List Type Standard - Individual View

Extended Access List Rules - List View Extended Access List Rules - List View

Standard Access List Rules - List View Standard Access List Rules - List View

Access List Interface Assignments- List View Access List Interface Assignments- List View

Host (device, virtual_chassis, virtual_machine) Access Lists - New Card Host Access Lists - New Card

Host Interface (vminterface interface) Access Lists - New Card Host Interface Access Lists - New Card

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

netbox_acls-1.6.0.tar.gz (30.9 kB view details)

Uploaded Source

Built Distribution

netbox_acls-1.6.0-py3-none-any.whl (41.7 kB view details)

Uploaded Python 3

File details

Details for the file netbox_acls-1.6.0.tar.gz.

File metadata

  • Download URL: netbox_acls-1.6.0.tar.gz
  • Upload date:
  • Size: 30.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for netbox_acls-1.6.0.tar.gz
Algorithm Hash digest
SHA256 88df15fe1c44afa5030a9ae9d4566be99f65e7771d13c1817ad5386d11701461
MD5 2058c7f18a82193b0ab524caf272d7fa
BLAKE2b-256 390b3c36ef7de16d3f6bfe3e3a680e780e755b3d4999ad61b56101b642ed0b3d

See more details on using hashes here.

File details

Details for the file netbox_acls-1.6.0-py3-none-any.whl.

File metadata

  • Download URL: netbox_acls-1.6.0-py3-none-any.whl
  • Upload date:
  • Size: 41.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for netbox_acls-1.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4401d7f5e1ed988535de990a3014d2533e6c24d6c4f253b6e10c32b2bbad200e
MD5 be5371ec24b12c3f36d670f1cc4e87a6
BLAKE2b-256 34962c3609c46ee51f7c366cebbaf162e54841b5ed30d067ee6e1601709d29f8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page