Awesome Sysadmin
Software
Automation
Automation build.
- Apache Ant - Automation build tool, similar to make, written in Java.
- Apache Maven - Build automation tool mainly for Java.
- Bazel - Google’s build system.
- 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.
- GNU Make - The most popular automation build tool for many purposes.
- Gradle - Another build automation system.
- Rake - Build automation tool similar to Make, written in and extensible in Ruby.
Backups
Backup software. Also see Restic’s list of Linux backup software.
- Amanda - Client-server model backup tool.
- Backupninja - Lightweight, extensible meta-backup system.
- BackupPC - BackupPC is a high-performance system for backing up to disk.
- Bareos - A fork of Bacula backup tool.
- Barman - Backup and Recovery Manager for disaster recovery of PostgreSQL servers.
- BorgBackup - A fork of Attic deduplicating backup program written in Python.
- Burp - Network backup and restore program.
- DREBS - AWS EBS backup script that supports strategies.
- 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 - Multiple backends, encryption, web-ui and multi-OS backup tool.
- Duplicity - Encrypted bandwidth-efficient backup using the rsync algorithm.
- Elkarbackup - Backup solution based on RSnapshot with a simple web interface
- rclone - a command line program to sync files and directories to and from several cloud storage systems/providers.
- Rdiff-backup - An easy A remote incremental backup of all your files.
- Restic - Secure, remote backup tool. Designed to be easy, fast, verifiable and efficient.
- Rsnapshot - Filesystem Snapshotting Utility.
- Shield - A pluggable architecture for backup and restore of database systems.
- Snebu – Snapshot backup with global multi-client deduplication and transparent compression.
- UrBackup - Another client-server backup system.
- ZBackup - A versatile deduplicating backup tool.
Build and software organization tools
Build and software organization tools.
- EasyBuild - EasyBuild builds software and modulefiles for High Performance Computing (HPC) systems in an efficient way.
- environment-modules Lmod - Lmod is a Lua based module system that easily handles the MODULEPATH Hierarchical problem.
- HPCBIOS - HPCBIOS is an effort to setup a common, well-documented and reproducible, environment spanning across multiple HPC systems & sites, inclusive of documentation.
- Spack - A flexible package manager that supports multiple versions, configurations, platforms, and compilers.
ChatOps
Conversation-driven development and management. See https://www.reddit.com/r/chatops for more information.
- Eggdrop - The oldest Internet Relay Chat (IRC) bot still in active development. (Source Code)
GPL-2.0
C
- Errbot - a 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
Client management
Managing software on desktop computers.
See also: IT Asset Management
- Chocolatey – The package manager for Windows. (Source Code)
Apache-2.0
C#/PowerShell
Cloning
Cloning software.
- Clonezilla - Partition and disk imaging/cloning program. (Source Code)
GPL-2.0/Other
Perl/Shell/Other
- Fog - Cloning/imaging solution/rescue suite. (Sorce Code)
GPL-3.0
PHP/Shell
Cloud Computing
- CloudStack - Cloud computing software for creating, managing, and deploying infrastructure cloud services. (Source Code)
- Cobbler - Cobbler is a Linux installation server that allows for rapid setup of network installation environments. (Source Code)
- Mesos - Develop and run resource-efficient distributed systems.
- OpenNebula - User-driven cloud management platform for sysadmins and devops.
- Openshift - PaaS product from Red Hat.
- OpenStack - Build private and public clouds.
- The Foreman - Complete lifecycle management tool for physical and virtual servers. FOSS.
- Tsuru - Tsuru is an extensible Platform as a Service software.
Cloud Orchestration
- BOSH - IaaS orchestration platform originally written for deploying and managing Cloud Foundry PaaS, but also useful for general purpose distributed systems.
- Cloud Foundry - A Platform-as-a-Service suite to provide the orchestration services that make distributed apps a powerhouse of awesomeness.
- Cloudify - TOSCA-based cloud orchestration software platform written in Python and YAML.
- CloudSlang - Flow-based orchestration tool for managing deployed applications, with Docker capabilities.
- Genesis - A template framework for multi-environment BOSH deployments.
- Juju - Cloud orchestration tool which manages services as charms, YAML configuration and deployment script bundles.
- Kubernetes - Orchestration system for Docker containers - (Source Code, Documentation)
Apache-2.0
Go
- MCollective - Ruby framework to manage server orchestration, developed by Puppet labs.
- Nomad - Simple and flexible orchestrator for Docker, Podman, executables, Java, and QEMU - (Source Code, Documentation)
MPL-2.0
Go
- Overcast - Deploy VMs across different cloud providers, and run commands and scripts across any or all of them in parallel via SSH.
- Rundeck - Simple orchestration tool.
- Salt - Fast, scalable and flexible systems management software written in Python/ZeroMQ.
- Spruce - A tool that merges separate YAML files into one. Works well with Genesis.
- StackStorm - Event Driven Operations and ChatOps platform for infrastructure management. Written in Python.
- Terraform - Terraform works with many cloud providers and creates infrastructure from code.
Code Review
Web Based collaborative code review system.
- Gerrit - Based on the Git version control, it facilitates software developers to review modifications to the source code and approve or reject those changes.
- Phabricator - Code review tool build by facebook and used by WikiMedia, FB, dropbox etc. Comes with an integrated wiki, bug tracker, VC integration and a CLI tool called arcanist.
- Review Board - Available as free software under the MIT License.
Configuration Management Database
Configuration management database (CMDB) software.
See also: IT Asset Management
- Collins - At Tumblr, it’s the infrastructure source of truth and knowledge.
- i-doit - IT Documentation and CMDB.
- iTop - Complete ITIL web based service management tool.
- netbox - IP address management (IPAM) and data center infrastructure management (DCIM) tool
Configuration Management
Configuration management tools.
- Ansible - It’s written in Python and manages the nodes over SSH.
- CFEngine - Lightweight agent system. Configuration state is specified via a declarative language.
- Chef - It’s written in Ruby and Erlang and uses a pure-Ruby DSL.
- Pallet - Infrastructure definition, configuration and management via a Clojure DSL.
- Puppet - It’s written in Ruby and uses Puppet’s declarative language or a Ruby DSL.
- Salt - It’s written in Python.
Continuous Integration & Continuous Deployment
Continuous integration/deployment software.
- Buildbot - Python-based toolkit for continuous integration. (Source Code)
GPL-2.0
Python
- CapsuleCD - CD script for automating package/library releases (npm, cookbooks, gems, pip, jars, etc). (Source Code)
MIT
Go
- 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
- GolangCI - Open Source automated code review service for Go integrated with GitHub pull requests. (Source Code)
AGPL-3.0
Go
- 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
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
- 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
- VestaCP - Open-Source hosting control panel. (Source Code)
GPL-3.0
PHP/Shell/Other
- 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
Database servers.
Please visit dbdb.io - Database of Databases
See also: awesome-selfhosted/Database Management
Deployment Automation
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).
- Fabric - Python library and cli tool for streamlining the use of SSH for application deployment or systems administration tasks.
- Mina - Really fast deployer and server automation tool (rake based).
- munki - Webserver-based repository of packages and package metadata, that allows macOS administrators to manage software installs.
- Vlad the Deployer - Deployment automation (rake based).
Diagramming
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.
- DrawThe.Net - Javascript tool that uses a YAML-formatted input to programmatically create large, complex, and visually solid diagrams.
- Mermaid - Javascript module with a unique, easy, shorthand syntax. Integrates into several other tools like Grafana.
Distributed Filesystems
Network distributed filesystems.
- Ceph - Distributed object store and file system.
- DRBD - Distributed Replicated Block Device.
- GlusterFS - Scale-out network-attached storage file system.
- Go IPFS - Implementation of IPFS, a global, versioned, peer-to-peer filesystem that seeks to connect all computing devices with the same system of files.
- HDFS - Distributed, scalable, and portable file-system written in Java for the Hadoop framework.
- LeoFS - Unstructured object/data storage and a highly available, distributed, eventually consistent storage system.
- Lustre - Parallel distributed file system, generally used for large-scale cluster computing.
- Minio - Minio is an open source object storage server compatible with Amazon S3 APIs. (Source Code)
AGPL-3.0
Go
- MooseFS - Fault tolerant, network distributed file system.
- OpenAFS - Distributed network file system with read-only replicas and multi-OS support.
- Perkeep (née Camlistore) - A set of open source formats, protocols, and software for modeling, storing, searching, sharing and synchronizing data.
- SheepDog - A distributed Blockdevice, Rest, QEMU and distributed Filesystem storage.
- Swift - A highly available, distributed, eventually consistent object/blob store.
- TahoeLAFS - secure, decentralized, fault-tolerant, peer-to-peer distributed data store and distributed file system.
- XtreemFS - XtreemFS is a fault-tolerant distributed file system for all storage needs.
DNS
DNS - Servers
- Bind - The most widely used name server software.
- CoreDNS - Flexible DNS server written on Go.
- Designate - DNS REST API that support several DNS servers as its backend.
- djbdns - A collection of DNS applications, including tinydns.
- dnsmasq - A lightweight service providing DNS, DHCP and TFTP services to small-scale networks.
- Knot - High performance authoritative-only DNS server.
- NSD - Authoritative only, high performance, simple name server.
- PowerDNS - DNS server with a variety of data storage back-ends and load balancing features.
- Unbound - Validating, recursive, and caching DNS resolver.
- Yadifa - Lightweight authoritative Name Server with DNSSEC capabilities powering the .eu top-level domain.
DNS - Control Panels
DNS server control panels.
- Atomia DNS - DNS management system.
- nsedit - nsedit is a DNS editor for PowerDNS, working with PowerDNS’s new API.
- PDNS Gui - WebGUI which aids in administering domains and records for PowerDNS with MySQL.
- Pi-hole - A blackhole for Internet Advertisements with a gui for managing and monitoring
- Poweradmin - Friendly web-based DNS administration tool for PowerDNS server.
DNS - Domain Management
Domain management.
- DNSControl - Synchronize your DNS to multiple providers from a simple DSL. (Source Code)
MIT
Go/Docker
- DomainMOD - Manage your domains and other internet assets in a central location. (Source Code)
GPL-3.0
PHP
- octoDNS - DNS as code - Tools for managing DNS across multiple providers.
MIT
Python
Editors
Open source code editors.
- Atom Community - A fork of atom A hackable text editor from Github.
- Brackets - Code editor for web designers and front-end developers.
- Eclipse - IDE written in Java with an extensible plug-in system.
- Geany - GTK2 text editor.
- GNU Emacs - An extensible, customizable text editor-and more.
- Haroopad - Markdown editor with live preview.
- ICEcoder - Code editor awesomeness, built with common web languages.
- jotgit - Git-backed real-time collaborative code editing.
- KDevelop - IDE by the people behind KDE.
- Micro - A modern and intuitive terminal-based text editor
- Nano - Easy to use, customizable text editor.
- Notepad++ - GPLv2 multi-language editor with syntax highlighting for Windows.
- TextMate - A graphical text editor for OS X.
- Vim - A highly configurable text editor built to enable efficient editing.
- VSCodium - An open source cross-platform extensible code editor based on VS Code by Microsoft removing their non-free additions.
Identity Management
LDAP servers and other tools to manage accounts and identities.
Identity Management - LDAP
- 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 - Tools and web interfaces
- BounCA - A personal SSL Key / Certificate Authority web-based tool for creating self-signed certificates.
- easy-rsa - bash script to build and manage a PKI CA.
- Fusion Directory - Improve the Management of the services and the company directory based on OpenLDAP.
- Indieauth - Sign in with your domain name (using the rel-me-auth protocol).
- LDAP Account Manager (LAM) - Web frontend for managing entries (e.g. users, groups, DHCP settings) stored in an LDAP directory.
- Libravatar - Libravatar is a service which delivers your avatar (profile picture) to other websites.
- OpenID Connect - A Simple Identity layer on top of OAuth 2.0.
- OSIAM - Secure identity management solution providing REST based services for authentication and authorization.
- Pomerium - An identity and context aware access-proxy inspired by BeyondCorp.
- Samba – Active Directory and CIFS protocol implementation.
- Smallstep Certificates - A private certificate authority (X.509 & SSH) and related tools for secure automated certificate management.
- ZITADEL - Cloud-native Identity & Access Management solution providing a platform for secure authentication, authorization and identity management.
Identity Management - Single Sign-On (SSO)
- Authelia - The Single Sign-On Multi-Factor portal for web apps. (Source Code)
Apache-2.0
Go
- KeyCloak - Open Source Identity and Access Management. (Source Code)
Apache-2.0
Java
IT Asset Management
IT Assets Management software.
- GLPI - Information Resource-Manager with an additional Administration Interface. (Source Code)
- 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. (Source Code, Demo)
GPL-2.0
PHP
- Ralph - Asset management, DCIM and CMDB system for large Data Centers as well as smaller LAN networks. (Source Code, Demo)
Apache-2.0
Python/Docker
- Snipe IT - Asset & license management software. (Source Code)
AGPL-3.0
PHP
Log Management
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
- Claws Mail - Old school email client (and news reader), based on GTK+. (Source Code)
- ImapSync – Simple IMAP migration tool for copying mailboxes to other servers. (Source Code)
- Mutt - Small but very powerful text-based mail client. (Source Code)
- Sylpheed – Still developed predecessor to Claws Mail, lightweight mail client. (Source Code)
- Thunderbird - Free email application that’s easy to set up and customize. (Source Code)
Monitoring
Monitoring software.
- 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, scaleable 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
- Cabot - Monitoring and alerts, similar to PagerDuty. (Source Code)
MIT
Python
- Cacti - Web-based network monitoring and graphing tool. (Source Code)
GPL-2.0
PHP
- cadvisor - Analyzes resource usage and performance characteristics of running containers (Source Code)
Apache-2.0
Go
- checkmk - Comprehensive solution for monitoring of applications, servers, and networks. (Source Code)
Python/PHP
- 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
- 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 - SNMP monitoring for servers and networking devices. Runs on linux.
- OMD - The Open Monitoring Distribution.
- Performance Co-Pilot - Lightweight, distributed system performance and analysis framework.
- PHP Server Monitor - Open source tool to monitor your servers and websites. (Source Code)
- PhpSysInfo - A customizable PHP script that displays information about your system nicely. (Source Code)
- pyDash - Small web-based monitoring dashboard for linux. (Source Code)
- Riemann - Flexible and fast events processor allowing complex events/metrics analysis. (Source Code)
- rtop - an interactive, remote system monitoring tool based on SSH. (Source Code)
- Scrutiny - Hard Drive S.M.A.R.T Monitoring, Historical Trends & Real World Failure Thresholds
- Sensu - Monitoring tool for ephemeral infrastructure and distributed applications. (Source Code)
- 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)
- Zabbix - Enterprise-class software for monitoring of networks and applications. (Source Code)
Status Pages
Please visit awesome-selfhosted/Status / Uptime Pages
Metric & Metric Collection
Metric gathering and display software.
Collectors only
- Collectd - System statistic collection daemon.
- Collectl - High precision system performance metrics collecting tool.
- Diamond - Python based statistic collection daemon.
- Statsd - Application statistic listener.
- tcollector - System statistic collection daemon written in Python for OpenTSDB
- Telegraf - The plugin-driven server agent for collecting & reporting metrics.
Dashboards
- Dashing - Ruby gem that allows for rapid statistical dashboard development. An all HTML5 approach allows for big screen displays in data centers or conference rooms.
- Facette - Time series data visualization and graphing software written in Go.
- Freeboard - A damn-sexy front-end real-time dashboard for the internet of things. Transforms raw JSON into delicious UI.
- Ganglia - High performance, scalable RRD based monitoring for grids and/or clusters of servers. Compatible with Graphite using a single collection process.
- Grafana - A Graphite & InfluxDB Dashboard and Graph Editor.
- RRDtool - Industry standard, high performance data logging and graphing system for time series data.
Storage
Packages
- Graphite - Scalable graphing server.
- Packetbeat - Captures network traffic and displays it in a custom Kibana dashboard for easy viewing.
- Prometheus - Service monitoring system and time series database.
- VictoriaMetrics - Service monitoring system and time series database.
Network Configuration Management
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
Newsletters
Newsletter software.
- DadaMail - Mailing List Manager, written in Perl.
- Lewsnetter - E-mail marketing application (create and send e-mail newsletter via SES). Includes subscription management, delivery, bounce and complaint notification, templates, and some stats.
- LibreMailer - Libre Mailer is a modest and simple web based email marketing application.
- phpList - Newsletter manager written in PHP.
Packaging
- aptly - Swiss army knife for Debian repository management. (Source Code)
MIT
Go
- fpm - Versatile multi format package creator.
- omnibus-ruby - Full stack, cross distro packaging software (Ruby).
- packman - Full stack, cross distro packaging software (Python).
- tito - Builds RPMs for git-based projects.
Project Management
Web-based project management and bug tracking systems
Please visit awesome-selfhosted/Project Management
Queuing
- ActiveMQ - Java message broker.
- BeanstalkD - A simple, fast work queue.
- Gearman - Fast multi-language queuing/job processing platform.
- Kafka - Extremely high performance publish/subscribe message system.
- NSQ - A realtime distributed messaging platform.
- RabbitMQ - Robust, fully featured, cross distro queuing system.
- ZeroMQ - Lightweight queuing system.
Remote Management
- Remmina - A Feature rich remote desktop application for linux and other unixes.
- Tiger VNC - TigerVNC is a high-performance, platform-neutral implementation of VNC (Virtual Network Computing), a client/server application that allows users to launch and interact with graphical applications on remote machines.
- X2go - X2Go is an open source remote desktop software for Linux that uses the NX technology protocol.
Router
- 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
Service Discovery
- Consul - Consul is a tool for service discovery, monitoring and configuration.
- Doozerd - Doozer is a highly-available, completely consistent store for small amounts of extremely important data.
- etcd - distributed K/V-Store, authenticating via SSL PKI and a REST HTTP Api for shared configuration and service discovery.
- ZooKeeper - ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.
Software Containers
Operating system–level virtualization.
- Docker Compose - Define and run multi-container Docker applications.
- Docker Swarm - Manage cluster of Docker Engines.
- Docker - Platform for developers and sysadmins to build, ship, and run distributed applications.
- LXC - Userspace interface for the Linux kernel containment features.
- LXD – a container “hypervisor” and a better UX for LXC.
- OpenVZ - Container-based virtualization for Linux.
- 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 - Simple management UI for Docker.
- systemd-nspawn - Lightweight, chroot-like, environment to run an OS or command directly under systemd. (Source Code)
GPL-2.0
C
Troubleshooting
Troubleshooting Tools.
- grml – bootable Debian Live CD with powerful CLI tools.
- mitmproxy - A Python tool used for intercepting, viewing and modifying network traffic. Invaluable in troubleshooting certain problems.
- mtr - Network utility that combines traceroute and ping.
- perf-tools - Performance analysis tools based on Linux perf_events (aka perf) and ftrace.
- Sysdig - Capture system state and activity from a running Linux instance, then save, filter and analyze.
- Wireshark - The world’s foremost network protocol analyzer.
Version control
Software versioning and revision control.
- Darcs - Patch-based distributed version control (more info: wiki)
- Fossil - Distributed version control with built-in wiki and bug tracking.
- Git - Distributed revision control and source code management (SCM) with an emphasis on speed.
- GNU Bazaar - Distributed revision control system sponsored by Canonical.
- Mercurial - Another distributed revision control.
- Subversion - Client-server revision control system.
Virtualization
Virtualization software.
- Archipel - XMPP based virtualization management platform.
- ConVirt - Provides the core functionality for centrally managing your KVM or Xen virtualized environment.
- Ganeti - Cluster virtual server management software tool built on top of KVM and Xen.
- KVM - Linux kernel virtualization infrastructure.
- OpenNebula - Flexible enterprise cloud made simple.
- OpenNode - Builds open-source infrastructure management software and implements cloud systems.
- oVirt - Manages virtual machines, storage and virtual networks.
- Packer - A tool for creating identical machine images for multiple platforms from a single source configuration.
- Proxmox VE - Virtualization management solution.
- QEMU - QEMU is a generic machine emulator and virtualizer.
- Vagrant - Tool for building complete development environments.
- VirtualBox - Virtualization product from Oracle Corporation.
- XCP-ng - Based on Citrix XenServer, XCP-ng is a fully open source virtualization platform.
- Xen - Virtual machine monitor for 32/64 bit Intel / AMD (IA 64) and PowerPC 970 architectures.
VPN
VPN software.
- Dockovpn - Out-of-the-box stateless dockerized OpenVPN server which starts in less than 2 seconds.
- Firezone - WireGuard based VPN Server and Firewall.
- Headscale - Self-hostable fork of Tailscale, cross-platform clients, simple to use, built-in (currently experimental) monitoring tools.
- Nebula - A scalable p2p VPN with a focus on performance, simplicity and security.
- ocserv - Cisco AnyConnect-compatible VPN server
- OpenVPN - Uses a custom security protocol that utilizes SSL/TLS for key exchange.
- PiVPN - The simplest way to setup and manage a VPN, designed for Raspberry Pi. (Source Code)
MIT
Shell
- Pritunl - OpenVPN based solution. Easy to set up.
- SoftEther - Multi-protocol software VPN with advanced features
- sshuttle - Poor man’s VPN.
- strongSwan - Complete IPsec implementation for Linux.
- tinc - Distributed p2p VPN.
- WireGuard - Very fast VPN based on elliptic curve and public key crypto.
Web
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
- Traefik - HTTP reverse proxy and load balancer that makes deploying microservices easy. (Source Code)
MIT
C/Docker
- Varnish - Web application accelerator/caching HTTP reverse proxy. (Source Code)
BSD-2-Clause
C
List of Licenses
AGPL-3.0
- GNU Affero General Public License 3.0Apache-2.0
- Apache, Version 2.0BSD-2-Clause
- BSD 2-clause “Simplified”BSD-3-Clause
- BSD 3-Clause “New” or “Revised”GPL-2.0
- GNU General Public License 2.0GPL-3.0
- GNU General Public License 3.0MIT
- MIT LicenseMPL-2.0
- Mozilla Public License
External links
Communities / Forums
- ArsTechnica OpenForum – IT Forum which is attached to a large news site.
- Reddit - Really, really large bulletin board system.
- /r/Linux - News and information about Linux.
- /r/LinuxQuestions
- /r/SysAdmin
- Spiceworks Community – General enterprise IT news and small articles.
- StackExchange Network – Q&A communities.
- Server Fault – StackExchange community for system and network administrators.
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
- 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 - A surprisingly vast resource for getting the basics of certain applications, tools, or even systems administration topics.
License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International license.