Manage your MISP communities with ease.
MISP Fleet Commander is a flexible tool designed to manage fleets of MISP servers. Whether you're administering a couple of instances or an entire constellation, this application gives you the visibility and control you need — all from a single interface.
With MISP Fleet Commander, you can diagnose, configure, update, and monitor MISP servers at scale. It’s built for those who need to keep multiple MISP servers in sync and in check.
- Create and organize fleets of MISP servers.
- Monitor server health and collect real-time metrics.
- Perform batch API operations across servers.
- Drag-and-drop plugin support, integrated directly into the UI.
- Visualize sync links and topologies with the Strategic View.
- Quickly enroll new servers via a browser bookmarklet or extension.
- Built-in integration with Grafana and InfluxDB for metrics storage and visualization
- Designed for flexibility and ease of use.
Back in 2021, I was managing multiple MISP servers and found myself constantly repeating tasks — monitoring health, tweaking configs, running the same API calls across instances. I also wanted to explore some modern web technologies I wasn’t familiar with. So, I started building MISP Fleet Commander in my spare time — mostly just for fun.
Now, in 2025 — four years later — it’s finally stable enough to share with the world.
This is a project built out of real-world need, shaped by curiosity and the desire to experiment and have fun. If you’ve ever had to wrangle a fleet of MISP servers, this tool is for you.
- python 3.11
- A modern browser (for using the UI and extensions)
Clone the repository:
git clone https://github.com/mokaddem/MISP-Fleet-Commander.git
cd MISP-Fleet-Commander
Install dependencies:
pushd backend
bash install.sh
popd
Start the server:
bash start.sh
This will start a local server running on all addresses (0.0.0.0) (typically at http://localhost:5001) where you can interact with the UI.
docker compose up
A default admin user is already provisioned with the following credential:
[email protected]:Password1234
To update the application:
bash update.sh
Start the development server:
bash start_dev.sh
This will start a local development server (typically at http://localhost:5001/) and a local web development server (typically at http://localhost:8080/).
To create an optimized production build:
bash build_web.sh
This will build the web application and make the file available for the backend.
Enrolling new MISP servers can be a pain: You have to generate an API key, and manually enter all the information in MFC. However, there are quicker ways to do it.
- [recommended] The MISP Fleet Commander Browser Extension (chrome only) allows you to enroll the MISP server you're currently browsing in one click.
- A browser bookmarklet (drag it to your bookmarks bar from the Fleet Commander UI).
- You'll have to temporarily disable Content Security Policy headers for the bookmark to execute.
Instructions for both are available on the Home page of the app.
- Install the needed dependencies.
cd backend
. ./venv/bin/activate
pip3 install -U -r requirements_monitoring.txt
- If you already have Grafana and InfluxDB running, go to step 4.
- Start the InfluxDB and Grafana containers.
cd backend/application/monitoring/docker
docker compose up
- Duplicate and update the
config.py
configuration file.
cd backend/application/monitoring
cp config.py.sample config.py
vim config.py # Update the token, org and URL based on what has been created on InfluxDB
- If needed, restart the MISP Fleet Commander server and check if monitoring is supported.
- Login in MISP Fleet Commander and click on the setting button in the top right corner.
- If everything went right, you should be able to enable the setting
monitoring_enabled
under theScheduler tab
.
- Export the env variable before starting the server. FIXME: Provide sane values
GRAFANA_BASE_URL=http://localhost:3000
GRAFANA_DASHBOARD_DATA_RENDER=render/d-solo/ce6olif96756od
GRAFANA_DASHBOARD=d/ce6olif96756od/circl-monitoring-misp
GRAFANA_APIKEY=glsa_k94PVSfhraGiK5roLyoniHu0xFyvByne_b1604732
bash start.sh
Contributions, bug reports, and feature suggestions are more than welcome!
- Fork the project
- Create a new branch (git checkout -b feature/your-feature)
- Commit your changes
- Open a pull request
- Or simply open an issue
MISP Fleet Commander supports a plugin system to extend its UI and functionality. Adding a new plugin is quick and doesn't require a full rebuild of the application.
- Go in
backend/application/plugins
. - Copy/Paste a plugin and modify it to your needs 😉.
Special thanks to the MISP Project and its community for building such a foundational tool for threat intelligence sharing.
© 2021–2025 Sami Mokaddem.
© Logo designed by Ysaline Rochez — thank you for the beautiful work!