All Projects → sandpolis → Sandpolis

sandpolis / Sandpolis

Licence: mpl-2.0
Experimental remote monitoring and management

Programming Languages

java
68154 projects - #9 most used programming language
kotlin
9241 projects

Projects that are alternatives of or similar to Sandpolis

Defcon24 Infra Monitoring Workshop
Defcon24 Workshop Contents : Ninja Level Infrastructure Monitoring
Stars: ✭ 104 (+246.67%)
Mutual labels:  automation, monitoring, devops
Walkoff
A flexible, easy to use, automation framework allowing users to integrate their capabilities and devices to cut through the repetitive, tedious tasks slowing them down. #nsacyber
Stars: ✭ 855 (+2750%)
Mutual labels:  automation, devops, administration
Gatus
⛑ Gatus - Automated service health dashboard
Stars: ✭ 1,203 (+3910%)
Mutual labels:  automation, monitoring, devops
Minicron
🕰️ Monitor your cron jobs
Stars: ✭ 2,351 (+7736.67%)
Mutual labels:  automation, monitoring, devops
Ipban
IPBan Monitors failed logins and bad behavior and bans ip addresses on Windows and Linux. Highly configurable, lean and powerful. Learn more at -->
Stars: ✭ 652 (+2073.33%)
Mutual labels:  automation, remote
Rex
Rex, the friendly automation framework
Stars: ✭ 653 (+2076.67%)
Mutual labels:  automation, devops
old vespene
DISCONTINUED: a frozen fork will exist forever at mpdehaan/vespene
Stars: ✭ 672 (+2140%)
Mutual labels:  automation, devops
Webhook
webhook is a lightweight incoming webhook server to run shell commands
Stars: ✭ 7,201 (+23903.33%)
Mutual labels:  automation, devops
Guide
Kubernetes clusters for the hobbyist.
Stars: ✭ 5,150 (+17066.67%)
Mutual labels:  automation, devops
Opsmop
DISCONTINUED: permanent copy of fork lives at github.com/mpdehaan/opsmop
Stars: ✭ 725 (+2316.67%)
Mutual labels:  automation, devops
Chef
Chef Infra, a powerful automation platform that transforms infrastructure into code automating how infrastructure is configured, deployed and managed across any environment, at any scale
Stars: ✭ 6,766 (+22453.33%)
Mutual labels:  automation, devops
Heim
Cross-platform async library for system information fetching 🦀
Stars: ✭ 572 (+1806.67%)
Mutual labels:  cross-platform, monitoring
Cabot
Self-hosted, easily-deployable monitoring and alerts service - like a lightweight PagerDuty
Stars: ✭ 5,209 (+17263.33%)
Mutual labels:  monitoring, devops
Lime Rat
LimeRAT | Simple, yet powerful remote administration tool for Windows (RAT)
Stars: ✭ 663 (+2110%)
Mutual labels:  remote, administration
Swagger Stats
API Observability. Trace API calls and Monitor API performance, health and usage statistics in Node.js Microservices.
Stars: ✭ 559 (+1763.33%)
Mutual labels:  monitoring, devops
Awesome Sre
A curated list of Site Reliability and Production Engineering resources.
Stars: ✭ 7,687 (+25523.33%)
Mutual labels:  monitoring, devops
Spm Agent Mongodb
Sematext Agent for monitoring MongoDB
Stars: ✭ 7 (-76.67%)
Mutual labels:  monitoring, devops
Touchdown
Cloud service orchestration framework for python
Stars: ✭ 10 (-66.67%)
Mutual labels:  automation, devops
Sentry
Sentry is cross-platform application monitoring, with a focus on error reporting.
Stars: ✭ 29,700 (+98900%)
Mutual labels:  monitoring, devops
Runbook
A framework for gradual system automation
Stars: ✭ 531 (+1670%)
Mutual labels:  automation, devops

Sandpolis is a real-time distributed administration platform for servers, desktop computers, embedded devices, and anything in-between.

This project is unfinished and should only be used in a secure testing environment!

Introduction

The vision for Sandpolis is to build the ultimate no-expense-spared administration system that:

  • provides full control over any device 💻,
  • is crazy fast ⚡️,
  • scales to thousands of devices 💥,
  • and gives you money 💰.

Maybe not that last one, but it won't cost you anything because it's free in terms of cost and, more importantly, free as in freedom.

This project has existed in some form since 2013 and has always been a solo endeavour. It's already unbelievable that it's come this far, but maybe it will be fully functional by 2023?

Instances

Sandpolis is not just one program, but a set of several working together. There are three catagories in which every Sandpolis component (or "instance") belongs:

  • 💻 an agent installed on a remote system that carries out administration tasks on behalf of users
  • 📱 a client application that users can use to interact with agents
  • 🔒 a server that facilitates communication between instances in the network and makes everything "work"

For end-user convenience (or confusion), there are multiple official programs in each category. For example, you can login to a Sandpolis server with either the Desktop Client or from a mobile device with the iOS Client.

Instance Status
Server Release Build
iOS Client Release Build
Desktop Client Release Build
Terminal Client Release Build
Agent Release Build
Native Agent Release Build
Minimal Native Agent Release Build

Plugins

Sandpolis supports plugins as a first-class feature. Essentially all end-user functionality in Sandpolis (file transfers, remote desktop, etc) is implemented as a plugin. This allows users to choose exactly what features they want and ignore the rest. Third-party plugins can also be installed, but must be signed with a trusted code-signing certificate.

The following plugins are officially supported:

Plugin Status
Desktop Plugin Release Build
Shell Plugin Release Build
Filesystem Plugin Release Build
Snapshot Plugin Release Build
Device Plugin Release Build

Core Modules

The following library modules define the core of Sandpolis. Instances and plugins depend on these basic modules which prevents code duplication. You probably don't need to worry about these unless you're developing plugins.

Module Status
core.agent Release Build
core.client Release Build
core.clientagent Release Build
core.clientserver Release Build
core.foundation Release Build
core.instance Release Build
core.net Release Build
core.server Release Build
core.serveragent Release Build

Installing

You could install Sandpolis now, but it's likely to be an underwhelming experience. Once things are more stable, installation instructions will appear out of thin air.

In the meantime, here's a screenshot to admire of the iOS client back when it was actually functional:

Building

Since there are many complex components in Sandpolis, you'll usually only want to build a small subset them. To choose what components to build, initialize the desired submodules:

# Sandpolis uses git submodules extensively
git submodule update --init com.sandpolis.server.vanilla
git submodule update --init module

Since Sandpolis is built with Gradle, building the code is the easy part:

# Just make sure you have JDK 16 first
./gradlew build

Using Vagrant

In order to build components for other operating systems, Vagrant can be used:

vagrant up linux
vagrant ssh linux
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].