Giter Club home page Giter Club logo

awesome-sysadmin's Introduction

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

  • Amanda - Backup and archive many computers on a network to disk, tape changer/drive or cloud storage. (Source Code) MIT C
  • Backupninja - Lightweight, extensible meta-backup system, provides a centralized way to configure and coordinate many different backup utilities. GPL-2.0 Shell
  • BackupPC - High-performance, enterprise-grade system for backing up to a server's disk.. (Source Code) GPL-3.0 Perl
  • 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
  • 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
  • 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.

  • 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
  • PHPCI - Free and open source continuous integration specifically designed for PHP. (Source Code) BSD-2-Clause PHP
  • Strider - Open Source Continuous Deployment / Continuous Integration platform. (Source Code) MIT Nodejs
  • 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
  • Mina - Really fast deployer and server automation tool (rake based). (Source Code) MIT Ruby
  • 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
  • Vlad the Deployer - Deployment automation (rake based). MIT Ruby

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
  • DrawThe.Net - Javascript tool that uses a YAML-formatted input to programmatically create large, complex, and visually solid diagrams. (Source Code) MIT JavaScript
  • 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
  • Indieauth - Sign in with your domain name (using the rel-me-auth protocol). (Source Code) Apache-2.0 Ruby
  • 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.

  • GLPI - Information Resource-Manager with an additional Administration Interface. (Source Code) GPL-3.0 PHP
  • OCS Inventory NG - Asset management and deployment solution for all devices in your IT Department. (Source Code) GPL-2.0 PHP/Perl
  • OPSI - Hardware and software inventory, client management, deployment, and patching for Linux and Windows. (Source Code) GPL-3.0/AGPL-3.0 OVF/Python
  • RackTables - Datacenter and server room asset management like document hardware assets, network addresses, space in racks, networks configuration. (Demo, Source Code) GPL-2.0 PHP
  • Ralph - Asset management, DCIM and CMDB system for large Data Centers as well as smaller LAN networks. (Demo, Source Code) Apache-2.0 Python/Docker
  • Snipe IT - Asset & license management software. (Source Code) AGPL-3.0 PHP

Log Management

^ back to top ^

Log management tools: collect, parse, visualize...

  • Fluentd - Data collector for unified logging layer. (Source Code) Apache-2.0 Ruby
  • Flume - Distributed, reliable, and available service for efficiently collecting, aggregating, and moving large amounts of log data. (Source Code) Apache-2.0 Java
  • GoAccess - Real-time web log analyzer and interactive viewer that runs in a terminal or through the browser. (Source Code) MIT C
  • Loki - Log aggregation system designed to store and query logs from all your applications and infrastructure. (Source Code) AGPL-3.0 Go
  • rsyslog - Rocket-fast system for log processing. (Source Code) GPL-3.0 C

Mail Clients

^ back to top ^

An email client, email reader or, more formally, message user agent (MUA) or mail user agent is a computer program used to access and manage a user's email.

  • aerc - Terminal MUA with a focus on plaintext and features for developers. (Source Code) MIT Go
  • Claws Mail - Old school email client (and news reader), based on GTK+. (Source Code) GPL-3.0 C
  • ImapSync - Simple IMAP migration tool for copying mailboxes to other servers. (Source Code) NLPL Perl
  • Mutt - Small but very powerful text-based mail client. (Source Code) GPL-2.0 C
  • Sylpheed - Still developed predecessor to Claws Mail, lightweight mail client. (Source Code) GPL-2.0 C
  • Thunderbird - Free email application that's easy to set up and customize. (Source Code) MPL-2.0 C/C++

Metrics & Metric Collection

^ back to top ^

Metric gathering and display software.

Related: Databases, Monitoring

  • Beats - Single-purpose data shippers that send data from hundreds or thousands of machines and systems to Logstash or Elasticsearch. (Source Code) Apache-2.0 Go
  • Collectd - System statistics collection daemon. (Source Code) MIT C
  • Diamond - Daemon that collects system metrics and publishes them to Graphite (and others). MIT Python
  • Grafana - A Graphite & InfluxDB Dashboard and Graph Editor. (Source Code) AGPL-3.0 Go
  • Graphite - Scalable graphing server. (Source Code) Apache-2.0 Python
  • RRDtool - Industry standard, high performance data logging and graphing system for time series data. (Source Code) GPL-2.0 C
  • Statsd - Daemon that listens for statistics like counters and timers, sent over UDP or TCP, and sends aggregates to one or more pluggable backend services. MIT Nodejs
  • tcollector - Gathers data from local collectors and pushes the data to OpenTSDB. (Source Code) LGPL-3.0/GPL-3.0 Python
  • Telegraf - Plugin-driven server agent for collecting, processing, aggregating, and writing metrics. MIT Go

Miscellaneous

^ back to top ^

Software that does not fit in another section.

Monitoring

^ back to top ^

Monitoring software.

Related: Metrics & Metric Collection

  • Adagios - Web based Nagios interface for configuration and monitoring (replacement to the standard interface), and a REST interface. (Source Code) AGPL-3.0 Docker/Python
  • Alerta - Distributed, scalable and flexible monitoring system. (Source Code) Apache-2.0 Python
  • Bloonix - Bloonix is a monitoring solution that helps businesses to ensure high availability and performance. (Source Code) GPL-3.0 Perl
  • Bosun - Monitoring and alerting system by Stack Exchange. (Source Code) MIT Go
  • Cacti - Web-based network monitoring and graphing tool. (Source Code) GPL-2.0 PHP
  • cadvisor - Analyzes resource usage and performance characteristics of running containers. Apache-2.0 Go
  • checkmk - Comprehensive solution for monitoring of applications, servers, and networks. (Source Code) GPL-2.0 Python/PHP
  • dashdot - A simple, modern server dashboard for smaller private servers. (Demo) MIT Nodejs/Docker
  • EdMon - A command-line monitoring application helping you to check that your hosts and services are available, with notifications support. MIT Java
  • eZ Server Monitor - A lightweight and simple dashboard monitor for Linux, available in Web and Bash application. (Source Code) GPL-3.0 PHP/Shell
  • glances - Open-source, cross-platform real-time monitoring tool with CLI and web dashboard interfaces and many exporting options. (Source Code) GPL-3.0 Python
  • Healthchecks - Monitoring for cron jobs, background services and scheduled tasks. (Source Code) BSD-3-Clause Python
  • Icinga - Nagios fork that has since lapped nagios several times. Comes with the possibility of clustered monitoring. (Source Code) GPL-2.0 C++
  • LibreNMS - Fully featured network monitoring system that provides a wealth of features and device support. (Source Code) GPL-3.0 PHP
  • Linux Dash - A low-overhead monitoring web dashboard for a GNU/Linux machine. MIT Nodejs/Go/Python/PHP
  • Monit - Small utility for managing and monitoring Unix systems. (Source Code) AGPL-3.0 C
  • Munin - Networked resource monitoring tool. (Source Code) GPL-2.0 Perl/Shell
  • Naemon - Network monitoring tool based on the Nagios 4 core with performance enhancements and new features. (Source Code) GPL-2.0 C
  • Nagios - Computer system, network and infrastructure monitoring software application. (Source Code) GPL-2.0 C
  • Netdata - Distributed, real-time, performance and health monitoring for systems and applications. Runs on Linux, FreeBSD, and MacOS. (Source Code) GPL-3.0 C
  • NetXMS - Open Source network and infrastructure monitoring and management. (Source Code) LGPL-3.0/GPL-3.0 Java/C++/C
  • Observium Community Edition - Network monitoring and management platform that provides real-time insight into network health and performance. QPL-1.0 PHP
  • openITCOCKPIT Community Edition - Monitoring Suite featuring seamless integrations with Naemon, Checkmk, Grafana and more. (Demo, Source Code) GPL-3.0 deb/Docker
  • Performance Co-Pilot - Lightweight, distributed system performance and analysis framework. (Source Code) LGPL-2.1/GPL-2.0 C
  • PHP Server Monitor - Open source tool to monitor your servers and websites. (Source Code) GPL-3.0 PHP
  • PhpSysInfo - A customizable PHP script that displays information about your system nicely. (Source Code) GPL-2.0 PHP
  • Prometheus - Service monitoring system and time series database. (Source Code) Apache-2.0 Go
  • Riemann - Flexible and fast events processor allowing complex events/metrics analysis. (Source Code) EPL-1.0 Java
  • rtop - Interactive, remote system monitoring tool based on SSH. MIT Go
  • ruptime - Classic system status server. AGPL-3.0 Shell
  • Scrutiny - Web UI for hard drive S.M.A.R.T monitoring, historical trends & real-world failure thresholds. MIT Go
  • Sensu - Monitoring tool for ephemeral infrastructure and distributed applications. (Source Code) MIT Go
  • Status - Simple and lightweight system monitoring tool for small homeservers with a pleasant web interface. (Demo) MIT Python
  • Thruk - Multibackend monitoring web interface with support for Naemon, Nagios, Icinga and Shinken. (Source Code) GPL-1.0 Perl
  • Zabbix - Enterprise-class software for monitoring of networks and applications. (Source Code) GPL-2.0 C

Network Configuration Management

^ back to top ^

Network configuration management tools.

  • GNS3 - Graphical network simulator that provides a variety of virtual appliances. (Source Code) GPL-3.0 Python
  • OpenWISP - Open Source Network Management System for OpenWRT based routers and access points. (Demo, Source Code) GPL-3.0 Python
  • Oxidized - Network device configuration backup tool. Apache-2.0 Ruby
  • phpIPAM - Open source IP address management with PowerDNS integration. (Source Code) GPL-3.0 PHP
  • RANCID - Monitor network devices configuration and maintain history of changes. (Source Code) BSD-3-Clause Perl/Shell
  • rConfig - Network device configuration management tool. (Source Code) GPL-3.0 PHP

Packaging

^ back to top ^

A package manager or package-management system is a collection of software tools that automates the process of installing, upgrading, configuring, and removing computer programs for a computer in a consistent manner.

  • aptly - Swiss army knife for Debian repository management. (Source Code) MIT Go
  • fpm - Versatile multi format package creator. (Source Code) MIT Ruby
  • omnibus-ruby - Easily create full-stack installers for your project across a variety of platforms. Apache-2.0 Ruby
  • tito - Builds RPMs for git-based projects. GPL-2.0 Python

Project Management

^ back to top ^

Web-based project management and bug tracking systems.

Please visit awesome-selfhosted/Project Management

Queuing

^ back to top ^

Message queues and message broker software, typically used for inter-process communication (IPC), or for inter-thread communication within the same process.

Remote Desktop Clients

^ back to top ^

Remote Desktop client software.

See also: awesome-selfhosted/Remote Access

  • Remmina - Feature-rich remote desktop application for linux and other unixes. (Source Code) GPL-2.0 C
  • Tiger VNC - High-performance, multi-platform VNC client and server. (Source Code) GPL-2.0 C++
  • X2go - X2Go is an open source remote desktop software for Linux that uses the NoMachine/NX technology protocol. (Source Code) GPL-2.0 Perl

Router

^ back to top ^

Software for management of router hardware.

  • DD-WRT - A Linux-based firmware for wireless routers and access points, originally designed for the Linksys WRT54G series. (Source Code) GPL-2.0 C
  • OpenWrt - A Linux-based router featuring Mesh networking, IPS via snort and AQM among many other features. (Source Code) GPL-2.0 C
  • OPNsense - An open source FreeBSD-based firewall and router with traffic shaping, load balancing, and virtual private network capabilities. (Source Code) BSD-2-Clause C/PHP
  • pfSense CE - Free network firewall distribution, based on the FreeBSD operating system with a custom kernel and including third party free software packages for additional functionality. (Source Code) Apache-2.0 Shell/PHP/Other

Service Discovery

^ back to top ^

Service discovery is the process of automatically detecting devices and services on a computer network.

  • Consul - Consul is a tool for service discovery, monitoring and configuration. (Source Code) MPL-2.0 Go
  • etcd - Distributed K/V-Store, authenticating via SSL PKI and a REST HTTP Api for shared configuration and service discovery. (Source Code) Apache-2.0 Go
  • ZooKeeper - ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. (Source Code) Apache-2.0 Java/C++

Software Containers

^ back to top ^

Operating systemโ€“level virtualization.

  • Docker Compose - Define and run multi-container Docker applications. (Source Code) Apache-2.0 Go
  • Docker Swarm - Manage cluster of Docker Engines. (Source Code) Apache-2.0 Go
  • Docker - Platform for developers and sysadmins to build, ship, and run distributed applications. (Source Code) Apache-2.0 Go
  • LXC - Userspace interface for the Linux kernel containment features. (Source Code) GPL-2.0 C
  • LXD - Container "hypervisor" and a better UX for LXC. (Source Code) Apache-2.0 Go
  • OpenVZ - Container-based virtualization for Linux. (Source Code) GPL-2.0 C
  • Podman - Daemonless container engine for developing, managing, and running OCI Containers on your Linux System. Containers can either be run as root or in rootless mode. Simply put: alias docker=podman. (Source Code) Apache-2.0 Go
  • Portainer Community Edition - Simple management UI for Docker. (Source Code) Zlib Go
  • systemd-nspawn - Lightweight, chroot-like, environment to run an OS or command directly under systemd. (Source Code) GPL-2.0 C

Status Pages

^ back to top ^

Uptime is a measure of system reliability, expressed as the percentage of time a machine, typically a computer, has been working and available.

Please visit awesome-selfhosted/Status / Uptime Pages

Troubleshooting

^ back to top ^

Troubleshooting tools.

  • grml - Bootable Debian Live CD with powerful CLI tools. (Source Code) GPL-3.0 Shell
  • mitmproxy - A Python tool used for intercepting, viewing and modifying network traffic. Invaluable in troubleshooting certain problems. (Source Code) MIT Python
  • mtr - Network utility that combines traceroute and ping. (Source Code) GPL-2.0 C
  • perf-tools - Performance analysis tools based on Linux perf_events (aka perf) and ftrace. GPL-2.0 Shell
  • Sysdig - Capture system state and activity from a running Linux instance, then save, filter and analyze. (Source Code) Apache-2.0 Docker/Lua/C
  • Wireshark - The world's foremost network protocol analyzer. (Source Code) GPL-2.0 C

Version control

^ back to top ^

Software versioning and revision control.

  • Darcs - Cross-platform version control system, like git, mercurial or svn but with a very different approach: focus on changes rather than snapshots. (Source Code) GPL-2.0 Haskell
  • Fossil - Distributed version control with built-in wiki and bug tracking. (Source Code) BSD-2-Clause C
  • Git - Distributed revision control and source code management (SCM) with an emphasis on speed. (Source Code) GPL-2.0 C
  • Mercurial - Distributed source control management tool. (Source Code) GPL-2.0 Python/C/Rust
  • Subversion - Client-server revision control system. (Source Code) Apache-2.0 C

Virtualization

^ back to top ^

Virtualization software.

  • Ganeti - Cluster virtual server management software tool built on top of KVM and Xen. (Source Code) BSD-2-Clause Python/Haskell
  • KVM - Linux kernel virtualization infrastructure. (Source Code) GPL-2.0/LGPL-2.0 C
  • OpenNebula - Build and manage enterprise clouds for virtualized services, containerized applications and serverless computing. (Source Code) Apache-2.0 C++
  • oVirt - Manages virtual machines, storage and virtual networks. (Source Code) Apache-2.0 Java
  • Packer - A tool for creating identical machine images for multiple platforms from a single source configuration. (Source Code) MPL-2.0 Go
  • Proxmox VE - Virtualization management solution. (Source Code) GPL-2.0 Perl/Shell
  • QEMU - QEMU is a generic machine emulator and virtualizer. (Source Code) LGPL-2.1 C
  • Vagrant - Tool for building complete development environments. (Source Code) BUSL-1.1 Ruby
  • VirtualBox - Virtualization product from Oracle Corporation. (Source Code) GPL-3.0/CDDL-1.0 C++
  • XCP-ng - Virtualization platform based on Xen Source and Citrixยฎ Hypervisor (formerly XenServer). (Source Code) GPL-2.0 C
  • Xen - Virtual machine monitor for 32/64 bit Intel / AMD (IA 64) and PowerPC 970 architectures. (Source Code) GPL-2.0 C

VPN

^ back to top ^

VPN software.

  • Dockovpn - Out-of-the-box stateless dockerized OpenVPN server which starts in less than 2 seconds. (Source Code) GPL-2.0 Docker
  • Firezone - WireGuard based VPN Server and Firewall. (Source Code) Apache-2.0 Docker
  • Headscale - Self-hostable fork of Tailscale, cross-platform clients, simple to use, built-in (currently experimental) monitoring tools. BSD-3-Clause Go
  • Nebula - A scalable p2p VPN with a focus on performance, simplicity and security. MIT Go
  • ocserv - Cisco AnyConnect-compatible VPN server. (Source Code) GPL-2.0 C
  • OpenVPN - Uses a custom security protocol that utilizes SSL/TLS for key exchange. (Source Code) GPL-2.0 C
  • SoftEther - Multi-protocol software VPN with advanced features. (Source Code) Apache-2.0 C
  • sshuttle - Poor man's VPN. LGPL-2.1 Python
  • strongSwan - Complete IPsec implementation for Linux. (Source Code) GPL-2.0 C
  • tinc - Distributed p2p VPN. (Source Code) GPL-2.0 C
  • WireGuard - Very fast VPN based on elliptic curve and public key crypto. (Source Code) GPL-2.0 C

Web

^ back to top ^

Web servers and reverse proxies.

  • Algernon - Small self-contained pure-Go web server with Lua, Markdown, HTTP/2, QUIC, Redis and PostgreSQL support. (Source Code) BSD-3-Clause Go
  • Apache HTTP Server - Secure, efficient and extensible server that provides HTTP services in sync with the current HTTP standards. (Source Code) Apache-2.0 C
  • Caddy - Powerful, enterprise-ready, open source web server with automatic HTTPS. (Source Code) Apache-2.0 Go
  • HAProxy - Very fast and reliable reverse-proxy offering high availability, load balancing, and proxying for TCP and HTTP-based applications. (Source Code) GPL-2.0 C
  • Hiawatha - An advanced and secure webserver for Unix. (Source Code) GPL-2.0 C
  • Lighttpd - Secure, fast, compliant, and very flexible web server that has been optimized for high-performance environments. (Source Code) BSD-3-Clause C
  • Nginx - HTTP and reverse proxy server, mail proxy server, and generic TCP/UDP proxy server. (Source Code) BSD-2-Clause C
  • Static Web Server - A cross-platform, high-performance, and asynchronous web server for static file serving. (Source Code) Apache-2.0/MIT Rust/Docker
  • Traefik - HTTP reverse proxy and load balancer that makes deploying microservices easy. (Source Code) MIT Go/Docker
  • Varnish - Web application accelerator/caching HTTP reverse proxy. (Source Code) BSD-2-Clause C

List of Licenses

^ back to top ^


External links

Communities / Forums

Repositories

Software package repositories.

  • AlternativeTo - Find alternatives to software you know and discover new software.
  • deb.sury.org - Repository with LAMP updated packages for Debian and Ubuntu.
  • ElRepo - Community Repo for Enterprise Linux (RHEL, CentOS, etc).
  • EPEL - Repository for RHEL and compatibles (CentOS, Scientific Linux).
  • IUS - Community project that provides RPM packages for newer versions of select software for Enterprise Linux distributions.
  • Remi - Repository with LAMP updated packages for RHEL/Centos/Fedora.
  • Software Collections - Community Release of Red Hat Software Collections. Provides updated packages of Ruby, Python, etc. for CentOS/Scientific Linux 6.x.

Websites

  • Cloud Native Software Landscape - Compilation of software and tools for cloud computing.
  • ArchWiki - Arch Linux Wiki which has really nice written articles valid for other distros.
  • Gentoo Wiki - Gentoo Linux Wiki with a lot in-detail description of Linux components.
  • Awesome SysAdmin @ LibHunt - Your go-to SysAdmin Toolbox. Based on the list here.
  • Ops School - Comprehensive program that will help you learn to be an operations engineer.
  • Digital Ocean Tutorials - 6,000+ tutorials for getting the basics of certain applications/tools/systems administration topics.

License

cc license

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International license.

awesome-sysadmin's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

awesome-sysadmin's Issues

remove redundant "open source" text

As all applications on this list are open source, we don't need to mention it in the description.

I'll remove this in the future when I see it, if I missed something, feel free to create a pull request.

More projects

Not going to produce dozens pull request, here is the missing packages that found:
Continuous Deployment
* [WebHook](https://github.com/adnanh/webhook) - Lightweight configurable tool written in Go, that allows you to easily create HTTP endpoints (hooks GitHub/Bitbucket/GitLab/other) on your server, which you can use to execute configured command.

Deployment Automation:
* [Magallanes](http://magephp.com) - Deploy your code to all the servers you want (via rsync over ssh), and run tasks for that freshly deployed code.

SMTP servers:
* [MailHog](https://github.com/mailhog/MailHog) - Inspired by MailCatcher written in Go, SMTP MTA, web UI and retrieve them with the JSON API.

IMAP/POP3 mail servers:
* [DBMail IMAP4/POP3/LMTP](https://github.com/pjstevns/dbmail) - Fast and scalable email services, storage of mail messages in a relational database.

Cloud Computing:
* [sandstorm](https://github.com/sandstorm-io/sandstorm) - Personal Cloud Sandbox, install apps to create documents, spreadsheets, blogs, git repos, task lists, and more as easily as you'd install apps on your phone.

Security tools:
* [Rspamd](https://rspamd.com) - Advanced spam filtering system that allows evaluation of messages by a number of rules including regular expressions, statistical analysis and custom services such as URL black lists.

Unsorted:
* [ViMbAdmin](http://www.vimbadmin.net) - postfix admin provides a web based virtual mailbox administration system allowing mail administrators to manage domains, mailboxes and aliases.

Backups/Sync:
* [Kitchen Sync](https://github.com/willbryant/kitchen_sync) - Fast unidirectional synchronization - make or efficiently update a copy of a database PostgreSQL/MySQL/MariaDB, without slow dumping & reloading.

VPN software:
* [FreeLan](https://github.com/freelan-developers/freelan) - full-mesh, secure, easy-to-setup, multi-platform, open-source, highly-configurable VPN software
* [PeerVPN](https://github.com/peervpn/peervpn) - virtual network built by PeerVPN uses a full mesh topology.

Automation:
* [Ninja](https://martine.github.io/ninja/) - Small build system with a focus on speed. It differs from other build systems in two major respects: it is designed to have its input files generated by a higher-level build system, and it is designed to run builds as fast as possible.

Want any help?

Looks like you're merging all the back PRs into your fork. Do you need any help catching up?

Only open source or free too?

Hi,

I'm looking that a lot of applications is open source, but have very nice free applications too, Axigen Free Mail Server as example, have enterprise solution, but have free version too and is very good.
https://www.axigen.com/mail-server/free/

The question is, why not to add free applications too and set this on list?
Example:

Mailserver

  • Zimbra - opensource,enterprise - Collaborative software suite, that includes an email server and web client.
  • Modoboa - opensource - Modoboa is a mail hosting and management platform including a modern and simplified Web User Interface.
  • Axigen - free,enterprise - The Axigen Free Mail Server is a great alternative to open source: it is a turnkey messaging solution with an amazing number of free email users.

clarification of contribution guidelines

Hi people,

To make our lives a little easier, I currently struggle with clarifying the contribution guidelines).

I think if you are sure that the software meets the guidelines, you have to create a PR. Issues should be for discussing controversial software (e.g. because of license or quality) or reporting mistakes.

Do you think the guidelines are appropriate? What do you think?

ArangoDB in NoSQL

ArangoDB, multi-type DB, seems to be missing ;) (and they show great perfs ?)

Control panel: Cockpit

Cockpit is a great hosting control panel, written in C. Even though it's not 100% stable yet, but one could add it to the list.

Add Celery

Celery: Distributed Task Queue
http://www.celeryproject.org/

Celery is an asynchronous task queue/job queue based on distributed message passing. It is focused on real-time operation, but supports scheduling as well.

This is used by a lot of other applications like Taiga. And is common in django applications.

AwesomeOpenSource

We are creating a github org for all awesome open source repos. I am working with a few individuals who are also managing their own awesome repos, and I think to gain more traction we need to work together. What are your thoughts about collectively moving your awesome repos to https://github.com/AwesomeOpenSource

The idea is that visibility for these repos would be increased due to more traffic to the org. What are your thoughts? Let me know if there is anything you'd like to discuss!

License from kahun/awesome-sysadmin

The original source of this fork, kahun/awesome-sysadmin, has no license against it, so is covered under standard copyright, whilst this fork has the CC-BY-SA license applied in this commit.

I believe the fork occurred at this commit with the tree at this time not containing a license.

Was permission obtained from the original maintainer? I know that the original project is in a very infrequently updated state, however with no license on the original content, if there's no permission then it seems that there's no right to apply a license to this repo?

Sorry if this has been discussed before; I've had a search through the issues and couldn't see any mention of the license against the repository itself.

Another backup tool to consider

Was wondering if you would like to evaluate a backup tool I wrote, called Snebu? Documentation is at www.snebu.com, and is hosted on Github. In short, it is a snapshot style backup (same style as rsnapshot and similar), but it has global multi-client deduplication, files are stored as lzo-compressed files in the target location, and metadata is in an SQLite database (although this data can be exported to a flat file too, for additional recovery / safety options). Benefits are a fairly open storage format (you can manually recover any file without using the tool if needed), compression, global multi-client file level deduplication, and if using a separate backup server you can install it in a restricted user account (no root needed). And you can run it from the server without installing any software in the clients (it just needs ssh access, along with [gnu] find and tar). What's missing: currently no encryption support (should have this shortly, via a compressing/encrypting tar filter called tarccrypt, that I'm working on), and it doesn't do block-level dedup (so not really suitable for backing up KVM image files, although I'm also working on integrating with a client-side utility that will generate the "find" and "tar" output directly from the VM image files).

I would really like to get some more eyeballs on this, before I start recommending it to others. I've been dogfooding it myself for a while, with about 30 - 40 RHEL [3 - 6] VMs I'm backing up.

Newsletters / LibreMailer

Libre Mailer is a modest and simple web based email marketing application. The entire app was made in only one weekend to prove a point, procrastinate from real work but most importantly stave off boredom. While it might have been knocked out over a weekend and thus a bit light on features it does work! It does send out email campaigns and produces statistics (open statistics, Link statistics, Bounce statistics) etc.

https://github.com/averna-syd/LibreMailer

propose: ERP, CRM and customer Management

A lot of sysadmins works as freelance, then I think that is good idea to have this topic to have solutions for this, to sysadmin use in your projects or to implement in your clients.

Validate pull requests with Travis

Hello, I wrote a tool that can validate README links (valid URLs, not duplicate). It can be run when someone submits a pull request.

It is currently being used by

Examples

If you are interested, connect this repo to https://travis-ci.org/ and add a .travis.yml file to the project.

See https://github.com/dkhamsing/awesome_bot for options, more information
Feel free to leave a comment ๐Ÿ˜„

propose: split control panels

Hi @n1trux,

I'm looking here that Control Panels will be big with mine new insertions, then, I think is good idea to split into suboptions, Control Panels will continue, but will have "hosting panel", "email panel", "DNS panel" as example.

with the new format would be:
Control Panels

  • Web hosting
    [...]
  • E-mail
    [...]
  • DNS
    [...]
  • Revision Control
    [...]
  • Virtualization
    [...]
  • Others
    [...]

Talk to me that you think

new Organization for awesome lists

I'm looking here that have a lot of lists around github, but they are scattered.

Then why not propose a new Organization for all lists? Administration continues with each other as is now, however, the organization will provide visibility for all lists.

So it will be easy for a list group to help each other list group.

@n1trux @sindresorhus @Kickball @ziadoz @sorrycc @Aleksandar-Todorovic

...
wow, have a lot of people to quote!

[edited out mass CC due to lack of relevance for this discussion -- n1trux]

Threat Intelligence Free Solution - Karma

Hi,

You can add Karma to your list.

Karma is a free web solution that can be used to add the organization assets (domains, websites, networks, etc), and Karma periodically search this assets on various Threat Intelligence Feeds and reports if any of this assets is listed.

Also, Karma alerts on bad configurations, like DNS open zone transfers, bad SSL configurations and more.

Link: https://karma.securetia.com

Regards!

Remove VirtKick

We should remove virtkick from the Control Panels section. They are no longer open source.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.