Skip to main content

NetBox plugin for plugin for managing Access Control Lists (ACLs).

Project description

NetBox Access Lists Plugin

A NetBox plugin for managing Access Lists.

Features

  • Access Lists (Standard and Extended)
  • Standard Rules for Access Lists
  • Extended Rules for Access Lists
  • Interface Assignment for Access Lists

Compatibility

The following table details the tested plugin versions for each NetBox version:

NetBox Version Plugin Version
4.5.x 2.0.0
4.4.x 1.9.1
4.3.x 1.9.1
4.2.x 1.8.1
4.1.x 1.7.0
>= 4.0.2 < 4.1.0 1.6.1
3.7.x 1.5.0
3.6.x 1.4.0
3.5.x 1.3.0
3.4.x 1.2.2
3.3.x 1.1.0
3.2.x 1.0.1

Installing

For Docker Setups

For instructions specific to NetBox Docker setups, see the netbox-docker plugin documentation.

Via pip

Activate your NetBox Python virtual environment and run:

source /opt/netbox/venv/bin/activate

pip install netbox-acls

Important: When using NetBox's upgrade.sh, the virtual environment is deleted and recreated. To ensure that the ACL plugin is reinstalled during an upgrade, add it to your local_requirements.txt (for local installations) or plugin_requirements.txt (for container-based installations).

netbox-acls

Configuration

Enable the plugin by editing the NetBox configuration file. For local installations, update /opt/netbox/netbox/netbox/configuration.py; for Docker setups, modify /configuration/plugins.py:

PLUGINS = [
    "netbox_acls"
]

PLUGINS_CONFIG = {
    "netbox_acls": {
        # Set to True to add a top-level menu item, or False to place it
        # under the Plugins menu. Default is True.
        "top_level_menu": True,
        # Sequence number increment for new ACL rules (e.g., 10, 20, 30...)
        "rule_sequence_step": 10,
    },
}

After configuration, apply the changes by running the database migrations:

source /opt/netbox/venv/bin/activate
cd /opt/netbox
python3 netbox/manage.py migrate

Screenshots

  • Access List (List View) Access List - List View

  • Access List (Standard) (Detail View) Access List Type Standard - Detail View

  • Access List (Extended) (Detail View) Access List Type Extended - Detail View

  • Standard Access List Rules (List View) Standard Access List Rules - List View

  • Extended Access List Rules (List View) Extended Access List Rules - List View

  • Interface Assignments (List View) Access List Interface Assignments - List View

  • Host Access Lists (New Card for Devices, Virtual Chassis, Virtual Machines) Host Access Lists - New Card

  • Host Interface Access Lists (New Card for Device and VM Interfaces) Host Interface Access Lists - New Card

Developing

VSCode + Docker + Dev Containers

You can use the provided .devcontainer configuration to set up a development environment with a fully functional NetBox installation. This configuration works best with WSL 2. For this to work, make sure you have Docker Desktop installed and the WSL 2 integrations activated.

  1. Open a WSL terminal and run code to launch Visual Studio Code.
  2. Install the ms-vscode-remote.remote-containers extension.
  3. Press Ctrl+Shift+P and select Dev Container: Clone Repository in Container Volume to start cloning the repository. The process may take some time.
  4. (Optional) To prepopulate NetBox with example data from netbox-initializers, run: make initializers
  5. Start the NetBox instance: make all

After these steps, NetBox will be available at http://localhost:8000.

Contributing

This project is maintained by the netbox-community. For contribution guidelines, please see the CONTRIBUTING document.

Credits

This plugin is based on the NetBox plugin tutorial by jeremystretch:

All credit should go to Jeremy. Thanks, Jeremy!

This project aims to build upon the framework and model presented there.

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

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

netbox_acls-2.0.0-py3-none-any.whl (81.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: netbox_acls-2.0.0.tar.gz
  • Upload date:
  • Size: 57.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for netbox_acls-2.0.0.tar.gz
Algorithm Hash digest
SHA256 8e70aef479a912b88b4437a383feec8aa1f7339505e65f7f9bfb3515285cf47a
MD5 4fb4f211aa66ae868a82cc698a336043
BLAKE2b-256 cdbbc8e023b3cc3c5836df267ff22374940767f9fd4e2c0045b768fbcf122fa3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: netbox_acls-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 81.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for netbox_acls-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 110bc6abc2eefd7eea7b038eb593a7071eb82f120232e450a22e5272f7eb605a
MD5 f537c89e66ba708d68398e94674cb63b
BLAKE2b-256 6d7c54476a9a33d33cd6f1ffb6a979788190f0a803dc8fb973d1b9ba960c91d1

See more details on using hashes here.

Supported by

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