Linux Basics for Hackers: A Self-Study Course Using Community Notes

⬅️ Back to Projects

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.

ModuleTopic
00Getting Started & Setting Up Your Lab
01Terminal Basics: pwd, ls, cd, man, whoami, locate
02Text Manipulation: cat, grep, sed, head, tail, pipes
03Managing Networks: ifconfig, iwconfig, dhclient, MAC spoofing, dig
04Software Management: apt-get, git clone, repositories
05Permissions: chmod, chown, SUID, privilege escalation
06Process Management: ps, top, kill, foreground/background
07Environment Variables: PATH, PS1, HISTSIZE, persistence
08Bash Scripting: variables, conditionals, loops, practical scanners
09Archiving & Compression: tar, gzip, bzip2, dd
10Filesystem & Storage: mounting, fdisk, df, fsck
11The Logging System: /var/log, rsyslog, shred, covering tracks
12Using & Abusing Services: Apache, SSH, MySQL, systemctl
13Security & Anonymity: Tor, proxychains, VPNs, operational security
14Wireless Networking: monitor mode, aircrack-ng, Bluetooth
15The Kernel & LKMs: lsmod, modprobe, sysctl, /proc
16Automation & Scheduled Jobs: crontab, systemctl enable
17Python 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

Crepi il lupo! 🐺