Server Management
Server management involves configuring, maintaining, and securing Linux servers hosting applications and services.
Web Servers
Apache: most deployed, module-based, .htaccess. Nginx: high-performance, event-driven, excellent reverse proxy/load balancer. Virtual hosts, SSL/TLS (Let's Encrypt), access logs, security headers.
Database Servers
MySQL/MariaDB: popular relational. Installation, user management, backups (mysqldump), replication, performance tuning. PostgreSQL: advanced features. MongoDB: NoSQL document database.
Containerization
Docker: pull images, run containers, Dockerfiles, volumes, networks. Docker Compose for multi-container apps. Podman: rootless, daemonless alternative. Core modern sysadmin skill.
High Availability
Load balancing (Nginx, HAProxy), clustering (Pacemaker/Corosync), database replication, geographic distribution. Design for failure — build resilience.
Automation
Ansible: agentless, YAML playbooks for configuration and deployment. Puppet, Chef (agent-based). Terraform (infrastructure provisioning). Ensures consistency, reduces human error.
Security Hardening
Update packages, disable unnecessary services, configure firewall, SSH keys (disable passwords), fail2ban, automatic security updates, SELinux/AppArmor, regular audits, monitor logs.
Summary
Server management: web servers, databases, containers, HA, automation, and security hardening enable reliable, secure Linux infrastructure.