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.1
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.1.tar.gz (30.9 kB view details)

Uploaded Source

Built Distribution

netbox_acls-1.6.1-py3-none-any.whl (41.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for netbox_acls-1.6.1.tar.gz
Algorithm Hash digest
SHA256 c17cd5fdface6ddb42d7f4f824b0b676504227ccea0071ab5208dcea4d0d24d0
MD5 cba6f3787fd33b7a37f1a2f84a828662
BLAKE2b-256 23b5887065570cab3bab56e8a6ab2cf63249edc839b83b39b03839ea64df36d9

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for netbox_acls-1.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2eaf1036cfb4d0ffe7e6de97852efbc62042664f8b7fb1321969fd577445c57e
MD5 e743e36850f83ed601d5ee3949e0bf9e
BLAKE2b-256 9a6d873cf1fca66aaaedc69ffbd7e231c0c99bf9807b5d5b29991513d507f971

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