Linux Basics for Hackers: A Self-Study Course Using Community Notes
The best way to learn Linux for security work isn’t a expensive course or a certification. It’s a terminal, a VM, and a set of notes someone wrote because they wanted to actually understand the material. This repo by ahegazy0 is exactly that: a structured course built from personal study notes on OccupyTheWeb’s Linux Basics for Hackers.
17 modules, plain English, practice exercises after every section. No gatekeeping, no fluff.
What’s Inside
The course follows the book’s structure but rewrites every concept in straightforward language. Each module covers one topic area with explanations, command references, and hands-on practice.
| Module | Topic |
|---|---|
| 00 | Getting Started & Setting Up Your Lab |
| 01 | Terminal Basics: pwd, ls, cd, man, whoami, locate |
| 02 | Text Manipulation: cat, grep, sed, head, tail, pipes |
| 03 | Managing Networks: ifconfig, iwconfig, dhclient, MAC spoofing, dig |
| 04 | Software Management: apt-get, git clone, repositories |
| 05 | Permissions: chmod, chown, SUID, privilege escalation |
| 06 | Process Management: ps, top, kill, foreground/background |
| 07 | Environment Variables: PATH, PS1, HISTSIZE, persistence |
| 08 | Bash Scripting: variables, conditionals, loops, practical scanners |
| 09 | Archiving & Compression: tar, gzip, bzip2, dd |
| 10 | Filesystem & Storage: mounting, fdisk, df, fsck |
| 11 | The Logging System: /var/log, rsyslog, shred, covering tracks |
| 12 | Using & Abusing Services: Apache, SSH, MySQL, systemctl |
| 13 | Security & Anonymity: Tor, proxychains, VPNs, operational security |
| 14 | Wireless Networking: monitor mode, aircrack-ng, Bluetooth |
| 15 | The Kernel & LKMs: lsmod, modprobe, sysctl, /proc |
| 16 | Automation & Scheduled Jobs: crontab, systemctl enable |
| 17 | Python Scripting: port scanner from scratch, libraries, pip |
What Makes It Different
Most Linux tutorials teach you to be a sysadmin. This one teaches you to think like someone who needs to understand the system well enough to find its weak points. The difference shows up everywhere.
In Module 5, permissions aren’t just a table of rwx values; they’re connected directly to privilege escalation. The SUID bit isn’t explained as a feature. It’s explained as an attack surface, with the find command to discover misconfigured binaries on any system.
In Module 11, logs aren’t just something you read. You learn how to stop the logging service (service rsyslog stop), how to shred files so they can’t be recovered (shred -vzu), and the smarter approach of surgically editing only the lines that contain your activity.
In Module 12, services aren’t just things you start and stop. You see each one through the lens of default credentials, open ports, and the metadata that scanning tools reveal about a target.
This isn’t a theory course. It’s a get-your-hands-on-the-keyboard course.
Getting Started
You need two things: VirtualBox and Kali Linux. Module 00 walks through the entire setup process: downloading the ISO, creating the VM, allocating RAM, and getting to the login screen. From there, you’re ready for Module 1.
Everything runs in the VM. Break something? Reset it. Your host machine never notices. That’s the whole point of practicing in a sandbox.
What You’ll Be Able to Do After
By the end of Module 17, you’ll have written your own port scanner from scratch in Python. You’ll understand the Linux filesystem well enough to navigate any Unix system blindfolded. You’ll know how to control processes, manage services, set up cron jobs, manipulate text at scale, and handle disk images with dd. You’ll understand the kernel well enough to inspect loaded modules and adjust runtime parameters.
The course ends with a Python port scanner. But the real deliverable is the ability to look at an unfamiliar Linux system, understand what’s running on it, and know how each piece can be used.
Links
- Course Repository All 17 modules on GitHub
- Kali Linux Download the ISO
- VirtualBox Free VM software
Crepi il lupo! 🐺