Skip to content

awesome-foss/awesome-sysadmin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Awesome Sysadmin

A curated list of amazingly awesome Free and Open-Source sysadmin resources. Please read the Pull Request template if you wish to add software and consider donating to the FLOSS projects you use regularly. Please consider contributing to fix one of the pinned issues if your time allows.


Table of contents


Software

Automation

^ back to top ^

Build automation.

  • Apache Ant - Automation build tool, similar to make, a library and command-line tool whose mission is to drive processes described in build files as targets and extension points dependent upon each other. (Source Code) Apache-2.0 Java
  • Apache Maven - Build automation tool mainly for Java. A software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information. (Source Code) Apache-2.0 Java
  • Bazel - A fast, scalable, multi-language and extensible build system. Used by Google. (Source Code) Apache-2.0 Java
  • Bolt - You can use Bolt to run one-off tasks, scripts to automate the provisioning and management of some nodes, you can use Bolt to move a step beyond scripts, and make them shareable. (Source Code) Apache-2.0 Ruby
  • GNU Make - The most popular automation build tool for many purposes, make is a tool which controls the generation of executables and other non-source files of a program from the program's source files. (Source Code) GPL-3.0 C
  • Gradle - Another build automation system. (Source Code) Apache-2.0 Groovy/Java
  • Rake - Build automation tool similar to Make, written in and extensible in Ruby. (Source Code) MIT Ruby

Backups

^ back to top ^

Backup software.

See also: Restic's list of Linux backup software

  • Backupninja - Lightweight, extensible meta-backup system, provides a centralized way to configure and coordinate many different backup utilities. GPL-2.0 Shell
  • Backrest - Backrest is a web UI and orchestrator for restic backup. (Source Code) GPL-3.0 Docker/Go
  • Bareos - Cross-network backup solution which preserves, archives, and recovers data from all major operating systems. (Source Code) AGPL-3.0 C++/C
  • Barman - Backup and Recovery Manager for PostgreSQL. (Source Code) GPL-3.0 Python
  • BorgBackup - Deduplicating archiver with compression and authenticated encryption. (Source Code) BSD-3-Clause Python
  • Burp - Network backup and restore program. (Source Code) AGPL-3.0 C
  • Dar - Which stands for Disk ARchive, is a robust and rich featured archiving and backup software of the tar style. (Source Code) GPL-2.0 C++
  • Duplicati - Backup client that securely stores encrypted, incremental, compressed backups on cloud storage services and remote file servers. (Source Code) LGPL-2.1 C#
  • Duplicity - Encrypted bandwidth-efficient backup using the rsync algorithm. (Source Code) GPL-2.0 Python
  • Open Archiver - Email archiving solution with full-text search and eDiscovery search features. (Source Code) AGPL-3.0 Docker
  • Minarca - Client–server backup platform with a centralized web console to manage and restore Linux, Windows, and macOS backups via GUI or CLI. (Source Code) AGPL-3.0 Python
  • Proxmox Backup Server - Proxmox Backup Server is an enterprise-class, client-server backup solution thatis capable of backing up virtual machines, containers, and physical hosts. (Source Code) GPL-3.0 Rust
  • rclone - Command-line program to sync files and directories to and from different cloud storage providers.. (Source Code) MIT Go
  • Rdiff-backup - Reverse differential backup tool, over a network or locally. (Source Code) GPL-2.0 Python
  • Restic - Easy, fast, verifiable, secure and efficient remote backup tool. (Source Code) BSD-2-Clause Go
  • Rsnapshot - Filesystem snapshot utility based on rsync. (Source Code) GPL-2.0 Perl
  • Shield - A pluggable architecture for backup and restore of database systems. MIT Go
  • UrBackup - Client/Server Open Source Network Backup for Windows, MacOS and Linux. (Source Code) AGPL-3.0 C/C++

Build and software organization tools

^ back to top ^

Build and software organization tools.

  • EasyBuild - EasyBuild builds software and modulefiles for High Performance Computing (HPC) systems in an efficient way. (Source Code) GPL-2.0 Python
  • Environment Modules - Environment Modules provides for the dynamic modification of a user's environment via modulefiles. (Source Code) GPL-2.0 Tcl
  • Lmod - Lmod is a Lua based module system that easily handles the MODULEPATH Hierarchical problem. (Source Code) MIT Lua
  • Spack - A flexible package manager that supports multiple versions, configurations, platforms, and compilers. (Source Code) MIT/Apache-2.0 Python

ChatOps

^ back to top ^

Conversation-driven development and management.

_See also: /r/chatops*

  • Eggdrop - The oldest Internet Relay Chat (IRC) bot still in active development. (Source Code) GPL-2.0 C
  • Errbot - Plugin based chatbot designed to be easily deployable, extensible and maintainable. (Source Code) GPL-3.0 Python
  • Hubot - A customizable, life embetterment robot. (Source Code) MIT Nodejs

Cloud Computing

^ back to top ^

Cloud computing is the on-demand availability of computer system resources, especially data storage (cloud storage) and computing power, without direct active management by the user.

Please visit Cloud Native Software Landscape

Code Review

^ back to top ^

Code review is a software quality assurance activity in which one or several people check a program mainly by viewing and reading parts of its source code.

Please visit awesome-selfhosted/Software Development - Project Management

Configuration Management

^ back to top ^

Configuration management (CM) is a systems engineering process for establishing and maintaining consistency of a product's performance, functional, and physical attributes with its requirements, design, and operational information throughout its life.

  • Ansible - Provisioning, configuration management, and application-deployment tool. (Source Code) GPL-3.0 Python
  • CFEngine - Configuration management system for automated configuration and maintenance of large-scale computer systems. (Source Code) GPL-3.0 C
  • Chef - Configuration management tool using a pure-Ruby, domain-specific language (DSL) for writing system configuration "recipes". (Source Code) Apache-2.0 Ruby
  • cloud-init - Initialization tool to automate the configuration of VMs, cloud instances, or machines on a network. (Source Code) GPL-3.0/Apache-2.0 Python
  • Puppet - Software configuration management tool which includes its own declarative language to describe system configuration. (Source Code) Apache-2.0 Ruby/C
  • Rudder - Scalable and dynamic configuration management system for patching, security & compliance, based on CFEngine. (Source Code) GPL-3.0 Scala
  • Salt - Event-driven IT automation, remote task execution, and configuration management software. (Source Code) Apache-2.0 Python

Configuration Management Database

^ back to top ^

Configuration management database (CMDB) software.

Related: IT Asset Management

  • Collins - At Tumblr, it's the infrastructure source of truth and knowledge. (Source Code) Apache-2.0 Docker/Scala
  • i-doit - IT Documentation and CMDB. AGPL-3.0 PHP
  • iTop - Complete ITIL web based service management tool. (Source Code) AGPL-3.0 PHP
  • netbox - IP address management (IPAM) and data center infrastructure management (DCIM) tool. (Demo, Source Code) Apache-2.0 Python

Continuous Integration & Continuous Deployment

^ back to top ^

Continuous integration/deployment software.

  • ArgoCD - Declarative, GitOps continuous delivery tool for Kubernetes. (Source Code) Apache-2.0 Go
  • Buildbot - Python-based toolkit for continuous integration. (Source Code) GPL-2.0 Python
  • CDS - Enterprise-Grade Continuous Delivery & DevOps Automation Open Source Platform. (Source Code) BSD-3-Clause Go
  • Concourse - Concourse is a CI tool that treats pipelines as first class objects and containerizes every step along the way. (Demo, Source Code) Apache-2.0 Go
  • drone - Drone is a Continuous Delivery platform built on Docker, written in Go. (Source Code) Apache-2.0 Go
  • Factor - Programmatically define and run workflows to connect configuration management, source code management, build, continuous integration, continuous deployment and communication tools. (Source Code) MIT Ruby
  • GitLab CI - Gitlab's built-in, full-featured CI/CD solution. (Source Code) MIT Ruby
  • GoCD - Continuous delivery server. (Source Code) Apache-2.0 Java/Ruby
  • Jenkins - Continuous Integration Server. (Source Code) MIT Java
  • Laminar - Fast, lightweight, simple and flexible Continuous Integration. (Source Code) GPL-3.0 C++
  • PHP Censor - Open source self-hosted continuous integration server for PHP projects. BSD-2-Clause PHP
  • Strider - Open Source Continuous Deployment / Continuous Integration platform. (Source Code) MIT Nodejs
  • Terrateam - GitOps-first automation platform for Terraform and OpenTofu workflows with support for self-hosted runners. (Source Code) MPL-2.0 OCaml/Docker
  • werf - Open Source CI/CD tool for building Docker images and deploying to Kubernetes via GitOps. (Source Code) Apache-2.0 Go
  • Woodpecker - Community fork of Drone that uses Docker containers. (Source Code) Apache-2.0 Go

Control Panels

^ back to top ^

Web hosting and server or service control panels.

  • Ajenti - Control panel for Linux and BSD. (Source Code) MIT Python/Shell
  • Cockpit - Web-based graphical interface for servers. (Source Code) LGPL-2.1 C
  • Froxlor - Lightweight server management software with Nginx and PHP-FPM support. (Source Code) GPL-2.0 PHP
  • HestiaCP - Web server control panel (fork of VestaCP). (Demo, Source Code) GPL-3.0 PHP/Shell/Other
  • ISPConfig - Manage Linux servers directly through your browser. (Source Code) BSD-3-Clause PHP
  • Sentora - Open-Source Web hosting control panel for Linux, BSD (fork of ZPanel). (Source Code) GPL-3.0 PHP
  • Virtualmin - Powerful and flexible web hosting control panel for Linux and BSD systems. (Source Code) GPL-3.0 Shell/Perl/Other
  • Webmin - Web-based interface for system administration for Unix. (Source Code) BSD-3-Clause Perl

Databases

^ back to top ^

Database servers.

Please visit dbdb.io - Database of Databases

See also: awesome-selfhosted/Database Management

Deployment Automation

^ back to top ^

Tools and scripts to support deployments to your servers.

  • Capistrano - Deploy your application to any number of machines simultaneously, in sequence or as a rolling set via SSH (rake based). (Source Code) MIT Ruby
  • CloudSlang - Flow-based orchestration tool for managing deployed applications, with Docker capabilities. (Source Code) Apache-2.0 Java
  • CloudStack - Cloud computing software for creating, managing, and deploying infrastructure cloud services. (Source Code) Apache-2.0 Java/Python
  • Cobbler - Cobbler is a Linux installation server that allows for rapid setup of network installation environments. (Source Code) GPL-2.0 Python
  • Fabric - Python library and cli tool for streamlining the use of SSH for application deployment or systems administration tasks. (Source Code) BSD-2-Clause Python
  • Genesis - A template framework for multi-environment BOSH deployments. MIT Perl
  • munki - Webserver-based repository of packages and package metadata, that allows macOS administrators to manage software installs. (Source Code) Apache-2.0 Python
  • Overcast - Deploy VMs across different cloud providers, and run commands and scripts across any or all of them in parallel via SSH. (Source Code) MIT Nodejs

Diagramming

^ back to top ^

Tools used to create diagrams of networks, flows, etc.

  • Diagrams.net - A.K.A. Draw.io. Easy to use Diagram UI with a plethora of templates. (Source Code) Apache-2.0 JavaScript/Docker
  • Kroki - API for generating diagrams from textual descriptions. (Source Code) MIT Java
  • Mermaid - Javascript module with a unique, easy, shorthand syntax. Integrates into several other tools like Grafana. (Source Code) MIT Nodejs/Docker

Distributed Filesystems

^ back to top ^

Network distributed filesystems.

See also: awesome-selfhosted/File Transfer - Object Storage & File Servers

  • Ceph - Distributed object, block, and file storage platform. (Source Code) LGPL-3.0 C++
  • DRBD - Distributed replicated storage system, implemented as a Linux kernel driver. (Source Code) GPL-2.0 C
  • GlusterFS - Software-defined distributed storage that can scale to several petabytes, with interfaces for object, block and file storage. (Source Code) GPL-2.0/LGPL-3.0 C
  • Hadoop Distributed Filesystem (HDFS) - Distributed file system that provides high-throughput access to application data. (Source Code) Apache-2.0 Java
  • JuiceFS - Distributed POSIX file system built on top of Redis and S3. (Source Code) Apache-2.0 Go
  • Kubo - Implementation of IPFS, a global, versioned, peer-to-peer filesystem that seeks to connect all computing devices with the same system of files. Apache-2.0/MIT Go
  • LeoFS - Highly available, distributed, replicated eventually consistent object/blob store. (Source Code) Apache-2.0 Erlang
  • Lustre - Parallel distributed file system, generally used for large-scale cluster computing. (Source Code) GPL-2.0 C
  • Minio - High-performance, S3 compatible object store built for large scale AI/ML, data lake and database workloads. (Source Code) AGPL-3.0 Go
  • MooseFS - Fault tolerant, network distributed file system. (Source Code) GPL-2.0 C
  • OpenAFS - Distributed network file system with read-only replicas and multi-OS support. (Source Code) IPL-1.0 C
  • Openstack Swift - A highly available, distributed, eventually consistent object/blob store. (Source Code) Apache-2.0 Python
  • Perkeep - A set of open source formats, protocols, and software for modeling, storing, searching, sharing and synchronizing data (previously Camlistore). (Source Code) Apache-2.0 C
  • TahoeLAFS - Secure, decentralized, fault-tolerant, peer-to-peer distributed data store and distributed file system. (Source Code) GPL-2.0 Python
  • XtreemFS - Distributed, replicated and fault-tolerant file system for federated IT infrastructures.. (Source Code) BSD-3-Clause Java

DNS - Control Panels & Domain Management

^ back to top ^

DNS server control panels, web interfaces and domain management tools.

Related: DNS - Servers

See also: awesome-selfhosted/DNS

DNS - Servers

^ back to top ^

DNS servers.

Related: DNS - Control Panels & Domain Management

See also: awesome-selfhosted/DNS

  • Bind - Versatile, classic, complete name server software. (Source Code) MPL-2.0 C
  • CoreDNS - Flexible DNS server. (Source Code) Apache-2.0 Go
  • djbdns - A collection of DNS applications, including tinydns. (Source Code) CC0-1.0 C
  • dnsmasq - Provides network infrastructure for small networks: DNS, DHCP, router advertisement and network boot. (Source Code) GPL-2.0 C
  • Knot - High performance authoritative-only DNS server. (Source Code) GPL-3.0 C
  • NSD - Authoritative DNS name server developed speed, reliability, stability and security. (Source Code) BSD-3-Clause C
  • PowerDNS Authoritative Server - Versatile nameserver which supports a large number of backends. (Source Code) GPL-2.0 C++
  • Unbound - Validating, recursive, and caching DNS resolver. (Source Code) BSD-3-Clause C
  • Yadifa - Clean, small, light and RFC-compliant name server implementation developed from scratch by .eu. (Source Code) BSD-3-Clause C

Editors

^ back to top ^

Open-source code editors.

Identity Management

^ back to top ^

Identity management (IdM), also known as identity and access management (IAM or IdAM), is a framework of policies and technologies to ensure that the right users (that are part of the ecosystem connected to or within an enterprise) have the appropriate access to technology resources.

Please visit Identity Management - LDAP, Identity Management - Tools and web interfaces, Identity Management - Single Sign-On SSO

Identity Management - LDAP

^ back to top ^

Lightweight Directory Access Protocol (LDAP) is an open, vendor-neutral, industry standard application protocol for accessing and maintaining distributed directory information services over an Internet Protocol (IP) network.

  • 389 Directory Server - Enterprise-class Open Source LDAP server for Linux. (Source Code) GPL-3.0 C
  • Apache Directory Server - Extensible and embeddable directory server, certified LDAPv3 compatible, with Kerberos 5 and Change Password Protocol support, triggers, stored procedures, queues and views. (Source Code) Apache-2.0 Java
  • FreeIPA - Integrated security information management solution combining Linux (Fedora), 389 Directory Server, Kerberos, NTP, DNS, and Dogtag Certificate System (web interface and command-line administration tools). (Source Code) GPL-3.0 Python/C/JavaScript
  • FreeRADIUS - Multi-protocol policy server (radiusd) that implements RADIUS, DHCP, BFD, and ARP and associated client/PAM library/Apache module. (Source Code) GPL-2.0 C
  • lldap - Light (simplified) LDAP implementation with a simple, intuitive web interface and GraphQL support. GPL-3.0 Rust
  • OpenLDAP - Open-source implementation of the Lightweight Directory Access Protocol (server, libraries and clients). (Source Code) OLDAP-2.8 C

Identity Management - Single Sign-On (SSO)

^ back to top ^

Single sign-on (SSO) is an authentication scheme that allows a user to log in with a single ID to any of several related, yet independent, software systems.

  • Authelia - The Single Sign-On Multi-Factor portal for web apps. (Source Code) Apache-2.0 Go
  • Authentik - Flexible identity provider with support for different protocols. (OAuth 2.0, SAML, LDAP and Radius). (Source Code) MIT Python
  • KeyCloak - Open Source Identity and Access Management. (Source Code) Apache-2.0 Java

Identity Management - Tools and web interfaces

^ back to top ^

Miscellaneous utilities and web interfaces for identity management systems.

  • BounCA - A personal SSL Key / Certificate Authority web-based tool for creating self-signed certificates. (Source Code) Apache-2.0 Python
  • easy-rsa - Bash script to build and manage a PKI CA. GPL-2.0 Shell
  • Fusion Directory - Improve the Management of the services and the company directory based on OpenLDAP. (Source Code) GPL-2.0 PHP
  • LDAP Account Manager (LAM) - Web frontend for managing entries (e.g. users, groups, DHCP settings) stored in an LDAP directory. (Source Code) GPL-3.0 PHP
  • Libravatar - Libravatar is a service which delivers your avatar (profile picture) to other websites. (Source Code) AGPL-3.0 Python
  • Pomerium - An identity and context aware access-proxy inspired by BeyondCorp. (Source Code) Apache-2.0 Docker/Go
  • Samba - Active Directory and CIFS protocol implementation. (Source Code) GPL-3.0 C
  • Smallstep Certificates - A private certificate authority (X.509 & SSH) and related tools for secure automated certificate management. (Source Code) Apache-2.0 Go
  • ZITADEL - Cloud-native Identity & Access Management solution providing a platform for secure authentication, authorization and identity management. (Source Code) Apache-2.0 Go/Docker/K8S

IT Asset Management

^ back to top ^

IT asset management software.