1. Project Overview

This documentation outlines the steps for deploying and securing a multi-service web server environment on a Linux system. The project's primary goal is to build a fully functional, secure Linux hosting server by applying core skills in system administration, web server configuration, database management, security hardening, and automation. This guide covers the setup of web servers (Apache2), a MySQL database, and the implementation of crucial security measures like firewall configuration, SSH hardening, and SSL/TLS encryption. Additionally, it details the automation of daily backups to ensure data integrity and disaster recovery, and wordpress installation and configuration.

2. System Prerequisites

linuxx.drawio.png


3. Phase 1: Server Setup & Configuration

This phase focuses on the initial configuration of the server.

  1. System Update: I ensured the system is up-to-date by running the appropriate commands for a distribution. This synchronizes package lists and upgrades all installed packages to their latest versions, which is a crucial first step for stability and security.

    image.png

image.png

2 Set Static IP: A static IP address ensures the server's network location remains constant, which is essential for consistent web and database services.

image.png

image.png

  1. Set Hostname: I assigned a descriptive hostname to the server for easy identification on the network.