Added permissions on navigation links
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 bassis 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.
Compatibility
This plugin was first developed using 3.2.5, and tested with all of 3.2.
| NetBox Version | Plugin Version |
|---|---|
| 3.2 | 1.0.1 |
| 3.3 | 1.1.0 |
Installing
For adding to a NetBox Docker setup see the general instructions for using netbox-docker with plugins.
While this is still in development and not yet on pypi you can install with pip:
pip install git+https://github.com/ryanmerolle/netbox-acls.git@dev
or by adding to your local_requirements.txt or plugin_requirements.txt (netbox-docker):
git+https://github.com/ryanmerolle/netbox-acls.git@dev
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": {},
}
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.
- In the WSL terminal, enter
codeto run Visual studio code. - Install the devcontainer extension "ms-vscode-remote.remote-containers"
- 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
- If you'd like the netbox instance to be prepopulated run
make Makefile example_initializersandmake Makefile load_initializers - Start the netbox instance using
make Makefile 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 (Type Extended) - Individual View

Access List (Type Standard) - Individual View

Extended Access List Rules - List View

Standard Access List Rules - List View

Access List Interface Assignments- List View

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

Host Interface (vminterface interface) Access Lists - New Card

