This project aims to allow the student to create a server powered up on a Virtual Machine. The idea is to use one of two the most well-known Linux-based OS to set up a fully functional and stricted-ruled system. At the end of this project we should be fully comfortable with the concept of Virtualization, as well as dealing with command-line based systems, partitioning memory with LVM, setting up SSH ports, MACs, Firewalls, among many other important concepts. As the name of the project suggests: we come to realize that we are, indeed, born to be root.
For the mandatory part, we should:
- Be able to choose between two of the most well-known Linux-based operating systems: CentOS or Debian;
- Create LVM partitions to our new VM OS;
- Ensure SSH services to be running on specific ports;
- Configure a UFW firewall;
- Set-up the hostname and a strong password policy for all users;
- Set-up a strong configuration for the
sudo
group;- Create a monitoring script that displays some specific information every 10 minutes.
For the bonus part owe should:
- Set up a different memory partitioning;
- Set up a functional WordPress website with specific services;
- Set up a service of our own choice - and justify that choice!
As part of my personal development, and thinking about the difficulty in finding good materials regarding the born2beroot
project, @HCastanha and I developed two extensive guides that work as maps through the steps that took us to complete both CentOS and Debian projects.
However, I must warn anyone who would like to take this guide to heart: the best part of this project is, undoubtly the research that allow us to build the fundamental pieces of knowledge about Linux, Operational Systems, Virtualization, SSH keys, Firewall and so on. I do not, under any circunstace, recommend our Implemetation Guides
to be taken as the absolute truth nor the only research byproduct through your own process. If anything, I would strongly recommend you to skip them altogether until you have finished it yourself.
To help you throught it, take a closer look only on each of the guide's last topic Reference
's links and dive deep yourself into this adventure.
If you have finished it or would still like to comprehend the path that we took to do so, read the following at your own risk:
- Implementation guide for CentOS Linux 8
- Implementation guide for Debian 11
- Implementation guide for the Bonus