What This Is
Linux is the operating system running beneath every production web application we host, every Docker container we deploy, and every CI/CD pipeline we operate. From the perspective of infrastructure, Linux is not just an operating system — it is the environment that determines whether your application stays up, performs well, and remains secure. Kernel parameters affect network throughput. Filesystem choices affect database performance. Process limits determine how many concurrent requests your application can handle. Security updates determine whether known vulnerabilities get patched before they get exploited.
We manage Linux infrastructure for our own production systems and for client applications running on cloud servers, VPS instances, and dedicated hardware. This is the operational side of Linux — not writing application code, but keeping the platform underneath it healthy. Server provisioning, security hardening, capacity monitoring, performance tuning, backup verification, and the incident response that happens when something goes wrong at 2am.
The infrastructure perspective on Linux is distinct from the development perspective covered on our Linux systems page. That page covers Linux as a tool in the development workflow — shell scripting, systemd service management, and developer-focused systems administration. This page covers Linux as production infrastructure — the hosting environment, its security posture, its capacity planning, and its operational reliability.
When You Need This
Linux infrastructure work is relevant when you run your own servers or use cloud instances that require operating system-level management. Common scenarios:
- You need production servers provisioned from bare OS installation to running application stack
- Security hardening is required to meet compliance requirements or reduce attack surface
- Server performance needs capacity planning — determining CPU, memory, disk, and network requirements for your application’s traffic profile
- You are experiencing stability issues — crashes, memory exhaustion, disk space problems, or unexplained performance degradation
- Server migration requires replicating the complete environment on new infrastructure
- Backup and disaster recovery procedures need to be established, automated, and tested
- Kernel and OS upgrades need to be planned and executed without downtime
This is not relevant for applications on fully managed platforms where the hosting provider handles the operating system. Linux infrastructure applies when you are responsible for the servers your application runs on.
How We Work
Linux infrastructure work follows documented procedures and change management. Server configurations are recorded so they can be reproduced, audited, and handed to another team if needed. Changes to production servers are tested on staging first, applied during maintenance windows when possible, and documented with rollback procedures.
Provisioning starts with a hardened base installation. Ubuntu Server LTS is our standard distribution for its five-year support window, extensive documentation, and package availability. Initial setup includes user accounts with SSH key authentication, firewall configuration allowing only required ports, automatic security updates for critical patches, and time synchronisation. The application stack — Nginx, PHP-FPM, MySQL or MariaDB, Redis — is installed and configured for the application’s specific requirements.
Security hardening goes beyond the basics. SSH is configured for key-only authentication on non-standard ports. fail2ban monitors authentication logs and blocks brute-force attempts. File permissions follow least privilege — web server processes cannot write to application code directories. PHP is configured with disabled dangerous functions and appropriate memory and execution limits. Database access is restricted to localhost or specific application server IPs.
Monitoring and alerting tracks the metrics that predict problems before they cause outages. Disk usage trends that indicate when storage will run out. Memory consumption patterns that reveal slow leaks. CPU utilisation that shows whether the server is appropriately sized. Load averages that indicate queuing. These metrics feed into alerting systems that notify us before thresholds become incidents.
Capacity planning uses historical monitoring data to project future resource needs. Traffic growth patterns, database size growth, and seasonal peaks inform decisions about when to scale up, add servers, or optimise the application to fit the current resources. Scaling decisions are data-driven, not reactive.
What You Get
- Server provisioning — complete setup from OS installation through running application stack
- Security hardening — SSH, firewall, fail2ban, file permissions, and PHP security configuration
- Capacity planning — resource sizing based on traffic patterns, growth projections, and performance requirements
- Monitoring and alerting — system metrics tracking with threshold-based alerts for disk, memory, CPU, and load
- Backup automation — scheduled backups with offsite storage, retention policies, and tested restore procedures
- OS maintenance — kernel updates, distribution upgrades, and security patch management
- Incident response — diagnosis and resolution of server-level issues affecting application availability
Technologies We Use
- Ubuntu Server 22.04 / 24.04 LTS — long-term support releases with five-year security updates
- ufw / iptables / nftables — firewall configuration for network access control
- fail2ban — automated intrusion prevention based on authentication log monitoring
- systemd — service management, process supervision, and scheduled task execution
- LVM — logical volume management for flexible disk partitioning and expansion
- rsync / borgbackup — backup tooling for file-level and deduplicated backups
- Prometheus / node_exporter — system metrics collection for monitoring and alerting
Related Systems
Linux infrastructure supports Nginx web serving, Docker containerisation, and server monitoring. Applications running on Linux are built with Laravel and deployed via CI/CD pipelines. Cloud servers run on AWS and are protected by Cloudflare. For the development perspective on Linux, see our Linux systems page.
Talk to Us About Linux Infrastructure
If you need servers provisioned, hardened, or optimised for production application hosting, get in touch and we will assess your infrastructure requirements.