Skip to main content

NetBox 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.6.x 2.0.1
4.5.x 2.0.1
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

  • ACL Assignments (List View)

    Access List Assignments - List View

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

    Host 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.1.tar.gz (57.7 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.1-py3-none-any.whl (81.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for netbox_acls-2.0.1.tar.gz
Algorithm Hash digest
SHA256 651fcb129d94d6874c690066a2549897228a403366a971773d72d93a771e6050
MD5 3f5f8c58730be146c686ea6b8ce71726
BLAKE2b-256 14391fd94595bdaa575ff81a6dff69fb3cc3bfc18ef2075df00a875b627e5ad4

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for netbox_acls-2.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 492afe78261b7dacf50067a68a86caf4ffc38c6074e607ed3148e6db02849edd
MD5 46aea6eeeef5d9b3420b57502a230109
BLAKE2b-256 0e6a24ad45fdf377eb6256cf0674ddaf28c03d43ad245017b1c92dd0763fba5b

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