When venturing into the realm of website management, some users find shared hosting adequate, while others opt for the control of a Virtual Private Server (VPS). This guide will not only walk you through setting up a secure web server using Apache on Ubuntu 16.04 but also provides insights on hardening your Ubuntu server for enhanced security. Let’s dive into the details.
Setting Up a Secure Web Server on Ubuntu 16.04: Installing Apache
Begin by logging into your VPS using SSH, a crucial step for server management. Update sources and existing packages with the commands:
apt-get update && apt-get upgrade
Install Apache with:
apt-get install apache2
Now you have a functional web server on your VPS.
Unlock the power of PHP strings.
Configuring Let’s Encrypt
With Apache running, securing your website with an SSL certificate becomes paramount. Install Git using:
apt-get install git
Clone Let’s Encrypt repository and navigate to it:
git clone https://github.com/letsencrypt/letsencrypt && cd letsencrypt
Execute the command to obtain a free SSL certificate:
./letsencrypt-auto --apache --renew-by-default -d domain.com -d www.domain.com
Replace “domain.com” with your actual domain. Follow the prompts to complete the setup.
Simplify Linux by learning the step-by-step process to remove .php extensions from your system.
Enabling .htaccess Files
To use .htaccess files, edit the Apache configuration file:
cd && cd /etc/apache2 && nano apache2.conf
Change the relevant “AllowOverride” lines to:
<Directory />
Options FollowSymLinks
AllowOverride All
Require all denied
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Save the changes, then enable Apache mod_rewrite and restart Apache:
a2enmod rewrite && apachectl restart
Create your .htaccess file in the web server’s root directory:
cd && cd /var/www/html && nano .htaccess
Harden Ubuntu Server 16.04: Strengthening Server Security
Beyond setting up the web server, fortify your Ubuntu server’s security. Regularly update your system with:
apt-get update && apt-get upgrade
Updating System
Keeping your server’s software up-to-date is crucial. Schedule regular updates using:
apt-get update && apt-get upgrade
Configuring Firewall
Enhance security by configuring the firewall. Use Uncomplicated Firewall (UFW) for simplicity:
apt-get install ufw
ufw allow ssh
ufw enable
Conclusion
With the diligent application of these security measures, you not only fortify your Ubuntu Server 16.04 but also gain the confidence to navigate the intricate landscape of web infrastructure security. Stay vigilant, stay secure!