Infrastructure tutorials
Production-grade guides for Linux, servers, security and performance. Copy-paste commands, multi-distro support, written by engineers who run this in production.
Browse by topic
Linux
System administration, shell scripting, package management
Hosting & Servers
Web servers, reverse proxies, SSL, domains
Security
Firewalls, hardening, encryption, access control
Performance
Caching, optimization, profiling, load testing
Databases
MySQL, PostgreSQL, Redis, backups, replication
Networking
DNS, load balancing, VPN, TCP/IP, routing
DevOps
CI/CD, Docker, Kubernetes, automation
Monitoring
Logging, alerting, metrics, observability
Most viewed
Install and configure Deno for web development with systemd and reverse proxy
hostingInstall and configure Uptime Kuma for website monitoring with SSL and email alerts
monitoringInstall and configure Caddy web server with automatic HTTPS and reverse proxy
hostingFix apt update E: Repository no longer has a Release file
linuxInstall and configure TimescaleDB with PostgreSQL for high-performance time-series data
databasesRecently published
Configure MariaDB ColumnStore for high-performance analytics workloads
databasesImplement Kibana 8 custom threat hunting dashboards for security incident response
monitoringConfigure Logstash 8 security pipelines with threat intelligence enrichment
monitoringConfigure Ansible Vault integration with HashiCorp Vault for secrets management
devopsImplement Thanos Ruler for distributed alerting and recording rules across Prometheus clusters
monitoringOptimize systemd journal logging performance and storage
Learn how to optimize systemd journald for production environments by configuring storage limits, compression, performance settings, and implementing log forwarding with monitoring.
Configure SELinux mandatory access controls for enhanced security
Set up SELinux on Ubuntu and Debian systems, configure security modes and policies, create custom application rules, and implement comprehensive monitoring for enhanced Linux security hardening.
Configure HAProxy load balancing with multiple backend servers
Set up HAProxy to distribute traffic across multiple backend servers with health checks, SSL termination, and automatic failover for high availability load balancing.
Set up development database environments with environment variables
Learn to configure PostgreSQL, MySQL, and MariaDB development databases using environment variables for secure connection management and simplified configuration across different environments.
Configure NGINX virtual hosts with SSL certificates for multiple domains
Set up multiple domains on a single NGINX server with automatic SSL certificates from Let's Encrypt. Handle domain routing, certificate management, and secure configurations for production hosting.
Configure MariaDB Galera cluster 10.11 for multi-master replication with automatic failover
Set up a highly available MariaDB Galera cluster with multi-master replication, automatic failover, and synchronous data replication across multiple database nodes for enterprise applications.
Configure systemd user services for application startup
Learn how to configure systemd user services to automatically start applications without root privileges. This guide covers creating service units, managing lifecycle, and troubleshooting user services for reliable application startup.
Implement Linux file system encryption with LUKS and cryptsetup
Encrypt Linux file systems and partitions using LUKS (Linux Unified Key Setup) with cryptsetup tools. Configure encrypted storage, manage encryption keys, and implement backup procedures for production environments.
Configure Linux development environment with Docker and Docker Compose
Set up a complete Docker development environment with Docker Compose for containerized application development. Install Docker Engine, configure user permissions, and establish efficient development workflows.
Implement Node.js application deployment with Git hooks and PM2 clustering
Set up automated Node.js application deployment using Git hooks for continuous integration, combined with PM2 clustering for high availability and load distribution across multiple CPU cores.
Set up RAID arrays with mdadm for performance and redundancy
Configure Linux software RAID arrays with mdadm to improve disk performance and protect against drive failures. Learn to create RAID 0, 1, 5, 6, and 10 configurations with automatic monitoring and management.
Configure SSH two-factor authentication with Google Authenticator TOTP
Add an extra layer of security to SSH logins by requiring both a password and a time-based one-time password (TOTP) generated by Google Authenticator or compatible apps.
Don't want to manage this yourself?
We handle infrastructure for businesses that depend on uptime. Fully managed, with one fixed contact who knows your setup.
You get one fixed contact who knows your setup
At their desk in Rotterdam 13:54 · reachable in a message, no ticket form