Tuesday, February 11, 2025

How to Setting Up an Apache Web Server on AWS Ubuntu 24.04 LTS

In this blog post, I'll walk you through the process of creating an Apache web server on AWS Ubuntu 24.04 LTS (Long Term Support).

As a Cloud Engineer at Level Up Bank, I frequently leverage the power of Apache for its renowned flexibility, ease of use, and cross-platform compatibility. Whether you're running Windows, Linux, or macOS, Apache is a reliable choice. This tutorial focuses on deploying Apache on Ubuntu 24.04 LTS within the Amazon Web Services (AWS) ecosystem, a powerful and scalable cloud platform.

Let's dive into the simple steps to get your Apache web server up and running!

Prerequisites

Before we begin, make sure you have the following:

  • An AWS Account: You'll need an active AWS account to create an EC2 instance. If you don't have one, you can sign up at the AWS website.
  • An EC2 Instance Running Ubuntu 24.04 LTS: We'll be using an EC2 instance with Ubuntu 24.04 LTS as the operating system. Ensure you have your key pair file downloaded and stored securely, as you'll need it to connect to your instance.

Step-by-Step Guide: Installing Apache on AWS Ubuntu 24.04 LTS

Let's break down the process into easy-to-follow steps:

1. Create and Connect to Your EC2 Instance

First, you need to launch an EC2 instance on AWS. When setting up your instance, ensure you choose:

  • Ubuntu 24.04 LTS as the operating system.
  • An appropriate instance type based on your needs (for a basic web server, a t2.micro instance might suffice for testing).
  • Security Group Configuration: Crucially, configure your security group to allow HTTP (port 80) and HTTPS (port 443) traffic inbound. This will allow users to access your web server through a web browser. You'll also need SSH (port 22) open for you to connect.

Once your instance is running, you'll need to connect to it via SSH (Secure Shell).

2. SSH into Your Ubuntu 24.04 LTS Instance

SSH allows you to securely access your Ubuntu server's command line from your local computer.

  • Open your Terminal: On macOS or Linux, use the built-in Terminal application. On Windows, you can use tools like PowerShell or PuTTY.

  • Navigate to your Key Pair Location: Use the cd command in your terminal to navigate to the directory where you saved your key pair file (e.g., your Downloads folder).

    Bash
    cd Downloads
    ls # (Optional) List files to verify your key pair (.pem file) is present
    
  • Construct and Execute the SSH Command: Go back to your AWS EC2 Management Console, select your running instance, and click "Connect". Choose the "SSH client" tab. AWS provides an example SSH command that looks similar to this:

    Bash
    ssh -i "your-key-pair.pem" ubuntu@your-instance-public-ip
    
    • Replace "your-key-pair.pem" with the actual name of your key pair file (e.g., "my-ec2-key.pem").
    • Replace ubuntu@your-instance-public-ip with the public IPv4 address or public DNS of your EC2 instance. You can find this information in the AWS EC2 Management Console, under your instance details.

    Copy the complete SSH command provided by AWS and paste it into your terminal. Press Enter to execute the command.

    You might see a security warning the first time you connect. Type yes and press Enter to continue.

    If your connection is successful, you'll see a welcome message and your terminal prompt will change, indicating you are now logged into your Ubuntu 24.04 LTS instance!

3. Install Apache on Ubuntu 24.04 LTS

Now that you're connected to your server, installing Apache is incredibly simple. Ubuntu uses the apt package manager, making software installation a breeze.

  • Update Package Lists (Optional but Recommended): Before installing new software, it's good practice to update your package lists to ensure you have the latest information on available packages.

    Bash
    sudo apt update
    
  • Install Apache2: Use the following command to install the Apache2 web server package:

    Bash
    sudo apt install apache2
    

    The sudo command gives you administrative privileges to install software. apt install apache2 instructs the system to install the Apache2 package. Press Y when prompted to confirm the installation.

4. Start and Enable Apache

Once the installation is complete, Apache needs to be started and enabled to run.

  • Start Apache: Use systemctl to start the Apache service immediately:

    Bash
    sudo systemctl start apache2
    
  • Enable Apache: To ensure Apache starts automatically every time your server boots, enable it using:

    Bash
    sudo systemctl enable apache2
    

5. Verify Apache Installation

The final step is to verify that your Apache web server is running and accessible.

  • Retrieve Your Instance's Public IPv4 Address: Go back to your AWS EC2 Management Console and find the Public IPv4 address of your running instance.

  • Open a Web Browser: Open your web browser (Chrome, Firefox, Safari, Edge, etc.) and enter your instance's Public IPv4 address into the address bar. Press Enter.

    If Apache is installed and running correctly, you should see the default Ubuntu Apache2 landing page!

    🚀🚀🚀 Congratulations! You've successfully installed and configured an Apache web server on your AWS Ubuntu 24.04 LTS instance! 😎

Conclusion

In just a few minutes, you've deployed a functional Apache web server on AWS Ubuntu 24.04 LTS. This robust and reliable setup is ready for you to host your website or web application. Apache's flexibility and Ubuntu's ease of use make this combination a powerful starting point for any web project.

Next Steps

Now that you have a basic Apache server running, you can explore further configurations:

  • Configure Virtual Hosts: Host multiple websites on a single server.
  • Deploy Your Website Files: Replace the default Apache page with your own website content.
  • Secure Your Server with HTTPS: Install an SSL/TLS certificate using Let's Encrypt to enable secure connections.
  • Explore Apache Modules: Extend Apache's functionality with modules for various tasks.

Get started building and deploying your web projects today!

0 comments:

Post a Comment