Example Curriculum
Available in
days
days
after you enroll
Available in
days
days
after you enroll
- Bash Aliases (8:24)
- Quiz for Bash Aliases
- Shell and Scripts (5:31)
- Creating Your First Script and Changing the PATH (8:56)
- Quiz for Shell, Scripts and PATH
- The Bash Shebang (4:00)
- Comments in Bash (3:50)
- Running Scripts (4:27)
- Quiz for Shebang, Comments and Running Scripts
- Challenges: Intro to Bash
- Let's Have Some Fun (+ Free Resources)
Available in
days
days
after you enroll
- Variables in Bash (9:23)
- Variable Expansion and Quoting (9:47)
- Environment and Shell Local Variables (9:24)
- Getting User Input (6:37)
- Quiz for Variables and User Input
- Positional Parameters (9:42)
- Project: How to Protect Yourself from Hackers (6:24)
- Special Parameters (3:54)
- $@ vs. $* (5:35)
- Quiz for Positional Parameters
- Challenges: Variables
- Unlimited Updates
Available in
days
days
after you enroll
- Intro to Expansions (2:07)
- Brace Expansion: String Lists (3:47)
- Brace Expansions: Sequence Lists (3:10)
- Project: Brace Expansion (6:46)
- Exercise: Imposter Syndrome (2:55)
- Tilde, Parameter and Variable Expansions (5:48)
- Quiz for Brace and Variable Expansions
- Command Substitution (6:14)
- Arithmetic Expansion (4:31)
- Process Substitution (3:24)
- Quiz for Command and Process Substitution and Arithmetic Expansion
- Word Splitting (5:22)
- Filename Expansion (Globbing) (11:11)
- Quiz for Word Splitting and Globbing
- Challenges: Shell Expansions
- Course Check-In
Available in
days
days
after you enroll
- Intro to Shell Operation (2:25)
- Tokenization (4:36)
- Command Identification (6:39)
- Quiz for Tokenization and Command Identification
- Shell Expansions (1:02)
- Quote Removal (2:42)
- Redirections: Stdin and Stdout Redirections (7:09)
- Stderr Redirection (8:51)
- Quiz for Quote Removal and Redirections
- Full Recap: Hands-on Example (8:03)
- Implement a New Life System
Available in
days
days
after you enroll
- If, Elif and Else Statements (11:55)
- Arithmetic Comparisons (3:56)
- Multiple Condition Tests and Nested if/then Statements (8:00)
- String Comparisons (Part 1) (6:21)
- String Comparisons (Part 2) (2:54)
- Quiz for If, Elif and Else Statements
- Project: Testing Network Connections (4:42)
- The Case Statement (11:21)
- Menus in Bash (The Select Statement) (6:11)
- Quiz for Case and Select
- Project: System Administration Script Using Menus (12:08)
- List of Commands (9:31)
- Running a DOS Attack Without root Access (ulimit) (5:44)
- Challenges: Flow Control
Available in
days
days
after you enroll
- For Loops (Part 1) (4:53)
- For Loops (Part 2) (6:43)
- Quiz for For Loops
- Project: Dropping a List of IP Addresses Using a For Loop (5:00)
- While Loops (Part 1) (8:24)
- While Loops (Part 2) (9:06)
- Project: Dropping a List of IP Addresses Using While and Process Substitution (4:28)
- Loops with Break (7:07)
- Loops with Continue (2:23)
- Quiz for While Loops
- Intro to Bash Arrays (7:05)
- Arrays in Depth (8:46)
- Quiz for Arrays
- Using the Readarray Command (5:01)
- Iterating Over Arrays (3:16)
- Quiz for Readarray
- Project: Account Creation (8:37)
- Challenges: Loops
Available in
days
days
after you enroll
Available in
days
days
after you enroll
Available in
days
days
after you enroll
Available in
days
days
after you enroll
Available in
days
days
after you enroll
Available in
days
days
after you enroll
- Introduction to Netfilter and Iptables (2:36)
- Chain Traversal in a Nutshell (1:38)
- Iptables Basic Usage (10:54)
- Iptables Options (Flags) - Part 1 (7:28)
- Iptables Options (Flags) - Part 2 (6:38)
- Where Do We Write Iptables Rules (12:53)
- Setting the Default Policy (6:53)
- Deleting the Firewall (3:39)
- Filter by IP Address (10:55)
- Filter by Port (15:38)
- Intro to Stateful Firewalls (Connection Tracking) (3:33)
- Implementing Stateful Firewalls and Iptables (7:37)
- Filter by MAC Address (8:34)
- Match by Date and Time (9:07)
- The ACCEPT and DROP Targets (5:29)
- The LOG Target (6:21)