mirror of
https://github.com/bunny-lab-io/Borealis.git
synced 2025-10-26 13:01:58 -06:00
05f207d886abdd7d6c2d0531a68e36e62fd848fe
Borealis is a remote management platform with a simple, visual automation layer, enabling you to leverage scripts, Ansible playbooks, and advanced nodegraph-based automation workflows. I originally created Borealis to work towards consolidating the core functionality of several standalone automation platforms in my homelab, such as TacticalRMM, Ansible AWX, SemaphoreUI, and a few others.
⚠️Security Note: Server/Client/API authentication mechanisms are not yet enabled. For your own safety, use Borealis in controlled environments only.
Features
- Device Inventory: OS, hardware, and status posted on connect and periodically.
- Remote Script Execution: Run PowerShell in
CURRENT USERcontext or asNT AUTHORITY\SYSTEM. - Jobs and Scheduling: Launch "Quick Jobs" instantly or create more advanced schedules.
- Visual Workflows: Drag‑and‑drop node canvas for combining steps, analysis, and logic.
- Playbooks: Run scripted procedures; ((Ansible playbook support is in progress)).
- Windows‑first. Linux server and agent deployment scripts are planned, as the core of Borealis is Python-based, it is already Linux-friendly; this just involves some housekeeping to bring the Linux experience to parity with Windows.
Screenshots
Getting Started
Installation
- Start the Server:
- Windows:
./Borealis.ps1 -Server -FlaskProduction Server @ http://localhost:5000 - Windows:
./Borealis.ps1 -Server -ViteDevelopment Server @ http://localhost:5173
- Windows:
- (Optional) Install the Agent (elevated PowerShell):
- Windows:
./Borealis.ps1 -Agent
- Windows:
Reverse Proxy Configuration
Traefik Dynamic Config: Replace Service URL with actual IP of Borealis server
http:
routers:
borealis:
entryPoints:
- websecure
tls:
certResolver: letsencrypt
service: borealis
rule: "Host(`borealis.example.com`) && PathPrefix(`/`)"
middlewares:
- cors-headers
middlewares:
cors-headers:
headers:
accessControlAllowOriginList:
- "*"
accessControlAllowMethods:
- GET
- POST
- OPTIONS
accessControlAllowHeaders:
- Content-Type
- Upgrade
- Connection
accessControlMaxAge: 100
addVaryHeader: true
services:
borealis:
loadBalancer:
servers:
- url: "http://127.0.0.1:5000"
passHostHeader: true
Description
Languages
Python
49.5%
JavaScript
42.4%
PowerShell
6.5%
Shell
1.1%
CSS
0.3%
Other
0.1%



