Ravindra BagaleCourses & study guides

A Note from Your Trainer

Namaskar mitranno! (Hello, friends!)

Welcome! I have written this handbook the same way I teach in the classroom — slowly, step by step, and always starting with the question "Why do we even need this?" before we touch a single command.

Many of you know some programming already — C, Java, Python or JavaScript — but the words cloud, Linux server, security group or reverse proxy may still feel new. Kalji karu naka (don't worry) — that is perfectly fine. By the time you finish this book, you will launch your own servers on AWS, secure them, host static and dynamic websites, deploy complete application stacks and manage storage — exactly the kind of work cloud and DevOps engineers do every day.

A few requests from my side (dhyan do, these matter):

  • Type the commands yourself. Copy-paste is allowed (every command box is copy-paste ready), but read each line and ask yourself what it does. Understanding is more important than speed. Lakshat theva (keep this in mind).
  • Break things in your lab. Delete a config line, stop a service, block a port — then fix it. Troubleshooting is the real skill, and you learn it only by making mistakes in a safe environment.
  • Don't memorise, understand. In interviews, nobody asks you to recite a command. They ask why it is needed and what happens when it fails. That is why every chapter ends with common mistakes and interview questions.
  • Switch off what you start. Stop or terminate your lab instances when you finish. A forgotten server is the most common way students get a surprise bill.

Every topic follows the same simple pattern that I use in my sessions — ekdum simple aahe:

Step Question it answers Example
Why Why do we need this? What problem does it solve? Why use EC2 instead of buying a physical server?
What What exactly is it? What are its parts? What is an AMI, a key pair, a security group?
How How do I actually do it, step by step? Commands to launch, connect and configure

So open your laptop, keep a terminal ready, and let's learn cloud computing together. Chala, suru karuya! (Come on, let's begin!)

All the best, mitranno!
Ravindra Bagale
Cloud Trainer
linkedin.com/in/ravindra-bagale

Before we begin: conventions used in this book

  • Commands you type are shown in grey boxes. They are copy-paste ready. Lines beginning with # inside a code block are comments — they are ignored by the shell.
  • $ at the start of a line in an example means "normal user prompt"; do not type the $. In most code blocks we have omitted the prompt so you can paste directly.
  • Words in <ANGLE_BRACKETS> or YOUR_... must be replaced with your own value, e.g. <PUBLIC_IP> becomes 13.233.10.25.
  • sudo runs a command as the administrator (root). Most server set-up commands need it.

Tip boxes

Green boxes give shortcuts and good habits that save time.

Note boxes

Blue boxes give extra background information or differences between operating systems.

Warning boxes

Orange boxes warn you about mistakes that can break your server, lose data or cost money.

The three operating systems we will use together

In our labs we will practise on three popular Linux distributions that are available as free AMIs (machine images) on AWS:

Item Amazon Linux 2023 Ubuntu 22.04 / 24.04 LTS CentOS Stream 9
Family Red Hat–like (Fedora based) Debian Red Hat (RHEL upstream)
Package manager yum apt yum
Default SSH user ec2-user ubuntu ec2-user (older CentOS AMIs: centos)
Apache package / service httpd apache2 httpd
Nginx default web root /​usr/​share/​nginx/​html /var/www/html /​usr/​share/​nginx/​html
Apache default web root /var/www/html /var/www/html /var/www/html
Host firewall none active by default ufw (inactive by default) firewalld (may be installed)
SELinux permissive/disabled by default on AMI not used (AppArmor) enforcing
Default root filesystem XFS ext4 XFS

Cost awareness

AWS bills by the second/hour for running resources. Always stop or terminate lab instances, delete unused EBS volumes and snapshots, and release unused Elastic IPs when you finish. Set a billing alarm / budget in the AWS Billing console on day one. AWS free-tier offers change from time to time — always check the official AWS Free Tier page for the current rules on your account.