Compare commits
2 Commits
3214a80db3
...
daf9b1a015
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
daf9b1a015 | ||
|
|
52738e0c01 |
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
/courses/*.html
|
||||||
|
/courses/*.pdf
|
||||||
18
README.md
18
README.md
@@ -1,3 +1,19 @@
|
|||||||
# courses
|
# Ideas collection for Courses
|
||||||
|
|
||||||
This repository is a collection of ideas for courses.
|
This repository is a collection of ideas for courses.
|
||||||
|
|
||||||
|
## How to contribute
|
||||||
|
|
||||||
|
1. Fork this repository
|
||||||
|
2. Add your course idea to the `ideas/` directory
|
||||||
|
3. Create a pull request
|
||||||
|
4. Wait for it to be merged!
|
||||||
|
5. Check out the [courses](courses/) directory to see the courses that have been created from these ideas
|
||||||
|
|
||||||
|
## Ideas
|
||||||
|
|
||||||
|
## Courses
|
||||||
|
|
||||||
|
### Beginner
|
||||||
|
|
||||||
|
- [One week (40 hours) crash course curriculum](courses/one-week-crash-course.md)
|
||||||
|
|||||||
388
courses/one-week-crash-course.md
Normal file
388
courses/one-week-crash-course.md
Normal file
@@ -0,0 +1,388 @@
|
|||||||
|
# One-Week Crash Course Curriculum (40 Hours)
|
||||||
|
|
||||||
|
## Table of Contents
|
||||||
|
|
||||||
|
- [One-Week Crash Course Curriculum (40 Hours)](#one-week-crash-course-curriculum-40-hours)
|
||||||
|
- [Table of Contents](#table-of-contents)
|
||||||
|
- [Overview](#overview)
|
||||||
|
- [Introduction](#introduction)
|
||||||
|
- [Time Allocation](#time-allocation)
|
||||||
|
- [Schedule Table](#schedule-table)
|
||||||
|
- [Day 1](#day-1)
|
||||||
|
- [General Computer Basics](#general-computer-basics)
|
||||||
|
- [Introduction to Computer Hardware and Software](#introduction-to-computer-hardware-and-software)
|
||||||
|
- [Understanding File Systems](#understanding-file-systems)
|
||||||
|
- [File Systems and Storage Management](#file-systems-and-storage-management)
|
||||||
|
- [Disk Management and Partitioning](#disk-management-and-partitioning)
|
||||||
|
- [Storage Management Techniques](#storage-management-techniques)
|
||||||
|
- [Operating Systems – Windows 10 and 11](#operating-systems--windows-10-and-11)
|
||||||
|
- [Installing Windows Operating Systems](#installing-windows-operating-systems)
|
||||||
|
- [Navigating the Windows User Interface](#navigating-the-windows-user-interface)
|
||||||
|
- [Windows Configuration and System Settings](#windows-configuration-and-system-settings)
|
||||||
|
- [Configuration and System Settings](#configuration-and-system-settings)
|
||||||
|
- [User Account Management](#user-account-management)
|
||||||
|
- [Practical Exercises and Q\&A Day 1](#practical-exercises-and-qa-day-1)
|
||||||
|
- [Day 2](#day-2)
|
||||||
|
- [Windows Configuration and System Settings (continued)](#windows-configuration-and-system-settings-continued)
|
||||||
|
- [Windows Networking Basics](#windows-networking-basics)
|
||||||
|
- [Windows Maintenance and Troubleshooting](#windows-maintenance-and-troubleshooting)
|
||||||
|
- [Shells – Windows (CMD, PowerShell)](#shells--windows-cmd-powershell)
|
||||||
|
- [Introduction to Command-Line Interfaces](#introduction-to-command-line-interfaces)
|
||||||
|
- [Basic CMD Commands](#basic-cmd-commands)
|
||||||
|
- [PowerShell Scripting Basics](#powershell-scripting-basics)
|
||||||
|
- [Introduction to PowerShell](#introduction-to-powershell)
|
||||||
|
- [PowerShell Scripting Introduction](#powershell-scripting-introduction)
|
||||||
|
- [Practical Exercises and Q\&A Day 2](#practical-exercises-and-qa-day-2)
|
||||||
|
- [Day 3](#day-3)
|
||||||
|
- [Operating Systems – Linux (Ubuntu/Debian)](#operating-systems--linux-ubuntudebian)
|
||||||
|
- [Introduction to Linux Operating Systems](#introduction-to-linux-operating-systems)
|
||||||
|
- [Installing Linux](#installing-linux)
|
||||||
|
- [Linux Desktop Environment](#linux-desktop-environment)
|
||||||
|
- [GNOME Desktop Environment Overview](#gnome-desktop-environment-overview)
|
||||||
|
- [Linux File System Structure](#linux-file-system-structure)
|
||||||
|
- [Linux System Configuration and Basic Commands](#linux-system-configuration-and-basic-commands)
|
||||||
|
- [Basic Linux Commands](#basic-linux-commands)
|
||||||
|
- [Linux System Configuration](#linux-system-configuration)
|
||||||
|
- [Linux Package Management and Processes](#linux-package-management-and-processes)
|
||||||
|
- [Package Management with APT](#package-management-with-apt)
|
||||||
|
- [System Services and Processes](#system-services-and-processes)
|
||||||
|
- [Practical Exercises and Q\&A Day 3](#practical-exercises-and-qa-day-3)
|
||||||
|
- [Day 4](#day-4)
|
||||||
|
- [Shells – Linux (SH, Bash, Zsh)](#shells--linux-sh-bash-zsh)
|
||||||
|
- [Introduction to the Linux Shell](#introduction-to-the-linux-shell)
|
||||||
|
- [Basic Bash Commands](#basic-bash-commands)
|
||||||
|
- [Advanced Bash Scripting](#advanced-bash-scripting)
|
||||||
|
- [Bash Scripting Introduction](#bash-scripting-introduction)
|
||||||
|
- [Customizing the Shell Environment](#customizing-the-shell-environment)
|
||||||
|
- [IT Security Fundamentals](#it-security-fundamentals)
|
||||||
|
- [Introduction to IT Security Principles](#introduction-to-it-security-principles)
|
||||||
|
- [Types of Cyber Attacks](#types-of-cyber-attacks)
|
||||||
|
- [Security Best Practices and Cryptography](#security-best-practices-and-cryptography)
|
||||||
|
- [Security Best Practices](#security-best-practices)
|
||||||
|
- [Cryptography](#cryptography)
|
||||||
|
- [Security Tools and Resources](#security-tools-and-resources)
|
||||||
|
- [Security Tools](#security-tools)
|
||||||
|
- [Security Resources](#security-resources)
|
||||||
|
- [Day 5](#day-5)
|
||||||
|
- [Networking Concepts and TCP/IP Protocol Suite](#networking-concepts-and-tcpip-protocol-suite)
|
||||||
|
- [Introduction to Networking Concepts](#introduction-to-networking-concepts)
|
||||||
|
- [TCP/IP Protocol Suite](#tcpip-protocol-suite)
|
||||||
|
- [Network Devices and Troubleshooting](#network-devices-and-troubleshooting)
|
||||||
|
- [Network Devices](#network-devices)
|
||||||
|
- [Network Troubleshooting](#network-troubleshooting)
|
||||||
|
- [Servers – Linux Web Server Setup](#servers--linux-web-server-setup)
|
||||||
|
- [Setting Up a Linux Server Environment](#setting-up-a-linux-server-environment)
|
||||||
|
- [Servers – Linux Web Server Configuration](#servers--linux-web-server-configuration)
|
||||||
|
- [Installing and Configuring a Web Server](#installing-and-configuring-a-web-server)
|
||||||
|
- [Managing Services on Linux](#managing-services-on-linux)
|
||||||
|
- [Course Wrap-Up and Q\&A](#course-wrap-up-and-qa)
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
- **Course**: One-Week Crash Course
|
||||||
|
- **Duration**: 40 hours
|
||||||
|
- **Topics**: General Computer Basics, File Systems, Storage Management, Operating Systems (Windows, Linux), Shells (CMD, PowerShell, Bash, Zsh), IT Security, Networking, Servers
|
||||||
|
- **Goals**: Foundational understanding of IT concepts and practical experience with operating systems, shells, and server setup
|
||||||
|
|
||||||
|
> [!NOTE]
|
||||||
|
> Notes for Participants
|
||||||
|
|
||||||
|
- **Prerequisites**: Basic familiarity with computers is helpful but not required.
|
||||||
|
- **Materials Needed**: Computer capable of running virtual machines
|
||||||
|
- **Follow-Up Resources**: Additional materials and resources to continue learning.
|
||||||
|
|
||||||
|
> [!WARNING]
|
||||||
|
> TODO: Add follow-up resources
|
||||||
|
|
||||||
|
## Introduction
|
||||||
|
|
||||||
|
This one-week crash course provides a comprehensive overview of key IT topics, including IT security, networking, computer basics, operating systems, shells, and basic server setup. The course is divided into daily modules, each focusing on specific topics. The total time frame is 40 hours, distributed equally over five days, with each day comprising 8 hours of instruction.
|
||||||
|
|
||||||
|
## Time Allocation
|
||||||
|
|
||||||
|
| Topic | Duration |
|
||||||
|
| ----------------------------------------- | -------- |
|
||||||
|
| General Computer Basics | 4 hours |
|
||||||
|
| File Systems and Storage Management | 4 hours |
|
||||||
|
| Operating Systems – Windows 10 and 11 | 5 hours |
|
||||||
|
| Shells – Windows (CMD, PowerShell) | 4 hours |
|
||||||
|
| Operating Systems – Linux (Ubuntu/Debian) | 5 hours |
|
||||||
|
| Shells – Linux (SH, Bash, Zsh) | 4 hours |
|
||||||
|
| IT Security | 5 hours |
|
||||||
|
| Networks | 5 hours |
|
||||||
|
| Servers – Linux Web Server Setup | 5 hours |
|
||||||
|
| | |
|
||||||
|
| **Total** | 40 hours |
|
||||||
|
|
||||||
|
## Schedule Table
|
||||||
|
|
||||||
|
| Time | Day 1 | Day 2 | Day 3 | Day 4 | Day 5 |
|
||||||
|
| ----------- | ----------------------------------------- | ----------------------------------------- | --------------------------------------------- | ---------------------------------------- | --------------------------------------------- |
|
||||||
|
| 09:00-10:30 | General Computer Basics | Windows Configuration and System Settings | Operating Systems – Linux (Ubuntu/Debian) | Shells – Linux (SH, Bash, Zsh) | Networking Concepts and TCP/IP Protocol Suite |
|
||||||
|
| 10:30-10:45 | Break | Break | Break | Break | Break |
|
||||||
|
| 10:45-12:00 | File Systems and Storage Management | Windows Networking Basics | Linux Desktop Environment | Advanced Bash Scripting | Network Devices and Troubleshooting |
|
||||||
|
| 12:00-13:00 | Lunch | Lunch | Lunch | Lunch | Lunch |
|
||||||
|
| 13:00-14:30 | Operating Systems – Windows 10 and 11 | Shells – Windows (CMD, PowerShell) | Linux System Configuration and Basic Commands | IT Security Fundamentals | Servers – Linux Web Server Setup |
|
||||||
|
| 14:30-14:45 | Break | Break | Break | Break | Break |
|
||||||
|
| 14:45-16:15 | Windows Configuration and System Settings | PowerShell Scripting Basics | Linux Package Management and Processes | Security Best Practices and Cryptography | Servers – Linux Web Server Configuration |
|
||||||
|
| 16:15-17:00 | Practical Exercises and Q&A Day 1 | Practical Exercises and Q&A Day 2 | Practical Exercises and Q&A Day 3 | Practical Exercises and Q&A Day 4 | Course Wrap-Up and Q&A |
|
||||||
|
|
||||||
|
## Day 1
|
||||||
|
|
||||||
|
### General Computer Basics
|
||||||
|
|
||||||
|
#### Introduction to Computer Hardware and Software
|
||||||
|
|
||||||
|
- Understanding computer components: CPU, RAM, storage devices
|
||||||
|
- Differentiating between hardware and software
|
||||||
|
|
||||||
|
#### Understanding File Systems
|
||||||
|
|
||||||
|
- Overview of file systems: NTFS, FAT32, ext4
|
||||||
|
- Importance of file systems in data management
|
||||||
|
|
||||||
|
### File Systems and Storage Management
|
||||||
|
|
||||||
|
#### Disk Management and Partitioning
|
||||||
|
|
||||||
|
- Concepts of partitions and volumes
|
||||||
|
- Tools for disk management in Windows and Linux
|
||||||
|
|
||||||
|
#### Storage Management Techniques
|
||||||
|
|
||||||
|
- Basics of RAID configurations
|
||||||
|
- Introduction to backup strategies
|
||||||
|
|
||||||
|
### Operating Systems – Windows 10 and 11
|
||||||
|
|
||||||
|
#### Installing Windows Operating Systems
|
||||||
|
|
||||||
|
- System requirements and installation process
|
||||||
|
- Setting up user accounts during installation
|
||||||
|
|
||||||
|
#### Navigating the Windows User Interface
|
||||||
|
|
||||||
|
- Start menu, taskbar, and system settings
|
||||||
|
- Using File Explorer effectively
|
||||||
|
|
||||||
|
### Windows Configuration and System Settings
|
||||||
|
|
||||||
|
#### Configuration and System Settings
|
||||||
|
|
||||||
|
- Personalization settings
|
||||||
|
- Managing devices and peripherals
|
||||||
|
|
||||||
|
#### User Account Management
|
||||||
|
|
||||||
|
- Creating and managing user accounts
|
||||||
|
- Understanding user permissions and rights
|
||||||
|
|
||||||
|
### Practical Exercises and Q&A Day 1
|
||||||
|
|
||||||
|
- Hands-on configuration tasks
|
||||||
|
- Addressing participant questions
|
||||||
|
|
||||||
|
## Day 2
|
||||||
|
|
||||||
|
### Windows Configuration and System Settings (continued)
|
||||||
|
|
||||||
|
#### Windows Networking Basics
|
||||||
|
|
||||||
|
- Connecting to networks
|
||||||
|
- Configuring network settings
|
||||||
|
|
||||||
|
#### Windows Maintenance and Troubleshooting
|
||||||
|
|
||||||
|
- System updates and patches
|
||||||
|
- Troubleshooting common issues using built-in tools
|
||||||
|
|
||||||
|
### Shells – Windows (CMD, PowerShell)
|
||||||
|
|
||||||
|
#### Introduction to Command-Line Interfaces
|
||||||
|
|
||||||
|
- Understanding the role of shells
|
||||||
|
- Navigating the file system using CMD
|
||||||
|
|
||||||
|
#### Basic CMD Commands
|
||||||
|
|
||||||
|
- File and directory operations
|
||||||
|
- Utilizing environment variables
|
||||||
|
|
||||||
|
### PowerShell Scripting Basics
|
||||||
|
|
||||||
|
#### Introduction to PowerShell
|
||||||
|
|
||||||
|
- Differences between CMD and PowerShell
|
||||||
|
- PowerShell syntax and cmdlets
|
||||||
|
|
||||||
|
#### PowerShell Scripting Introduction
|
||||||
|
|
||||||
|
- Writing simple scripts
|
||||||
|
- Automating tasks using PowerShell
|
||||||
|
|
||||||
|
### Practical Exercises and Q&A Day 2
|
||||||
|
|
||||||
|
- Executing commands and scripts
|
||||||
|
- Addressing participant questions
|
||||||
|
|
||||||
|
## Day 3
|
||||||
|
|
||||||
|
### Operating Systems – Linux (Ubuntu/Debian)
|
||||||
|
|
||||||
|
#### Introduction to Linux Operating Systems
|
||||||
|
|
||||||
|
- Understanding distributions: Ubuntu, Debian
|
||||||
|
- Open-source philosophy
|
||||||
|
|
||||||
|
#### Installing Linux
|
||||||
|
|
||||||
|
- Dual-booting with Windows
|
||||||
|
- Installation in a virtual machine
|
||||||
|
|
||||||
|
### Linux Desktop Environment
|
||||||
|
|
||||||
|
#### GNOME Desktop Environment Overview
|
||||||
|
|
||||||
|
- Navigating the GNOME interface
|
||||||
|
- Customizing desktop settings
|
||||||
|
|
||||||
|
#### Linux File System Structure
|
||||||
|
|
||||||
|
- Understanding root, home, and other directories
|
||||||
|
|
||||||
|
### Linux System Configuration and Basic Commands
|
||||||
|
|
||||||
|
#### Basic Linux Commands
|
||||||
|
|
||||||
|
- File operations: `ls`, `cp`, `mv`, `rm`
|
||||||
|
- Directory navigation: `cd`, `pwd`
|
||||||
|
|
||||||
|
#### Linux System Configuration
|
||||||
|
|
||||||
|
- Managing users and groups
|
||||||
|
- File permissions and ownership
|
||||||
|
|
||||||
|
### Linux Package Management and Processes
|
||||||
|
|
||||||
|
#### Package Management with APT
|
||||||
|
|
||||||
|
- Installing and updating software
|
||||||
|
- Managing repositories
|
||||||
|
|
||||||
|
#### System Services and Processes
|
||||||
|
|
||||||
|
- Monitoring system performance
|
||||||
|
|
||||||
|
### Practical Exercises and Q&A Day 3
|
||||||
|
|
||||||
|
- Hands-on with commands and configurations
|
||||||
|
- Addressing participant questions
|
||||||
|
|
||||||
|
## Day 4
|
||||||
|
|
||||||
|
### Shells – Linux (SH, Bash, Zsh)
|
||||||
|
|
||||||
|
#### Introduction to the Linux Shell
|
||||||
|
|
||||||
|
- Role of the shell in Linux
|
||||||
|
- Comparing `sh`, `bash`, and `zsh`
|
||||||
|
|
||||||
|
#### Basic Bash Commands
|
||||||
|
|
||||||
|
- Text manipulation: `cat`, `grep`, `awk`
|
||||||
|
- Process management: `ps`, `top`, `kill`
|
||||||
|
|
||||||
|
### Advanced Bash Scripting
|
||||||
|
|
||||||
|
#### Bash Scripting Introduction
|
||||||
|
|
||||||
|
- Writing and executing scripts
|
||||||
|
- Using variables and control structures
|
||||||
|
|
||||||
|
#### Customizing the Shell Environment
|
||||||
|
|
||||||
|
- Aliases and shell prompts
|
||||||
|
- Introduction to shell configuration files
|
||||||
|
|
||||||
|
### IT Security Fundamentals
|
||||||
|
|
||||||
|
#### Introduction to IT Security Principles
|
||||||
|
|
||||||
|
- The CIA triad: Confidentiality, Integrity, Availability
|
||||||
|
- Understanding threats and vulnerabilities
|
||||||
|
|
||||||
|
#### Types of Cyber Attacks
|
||||||
|
|
||||||
|
- Malware, phishing, man-in-the-middle attacks
|
||||||
|
|
||||||
|
### Security Best Practices and Cryptography
|
||||||
|
|
||||||
|
#### Security Best Practices
|
||||||
|
|
||||||
|
- Strong password policies
|
||||||
|
- Importance of software updates
|
||||||
|
|
||||||
|
### Cryptography
|
||||||
|
|
||||||
|
- Basic cryptography concepts: encryption and decryption
|
||||||
|
|
||||||
|
### Security Tools and Resources
|
||||||
|
|
||||||
|
#### Security Tools
|
||||||
|
|
||||||
|
- Firewalls and antivirus software
|
||||||
|
|
||||||
|
#### Security Resources
|
||||||
|
|
||||||
|
- Staying informed about security threats
|
||||||
|
|
||||||
|
## Day 5
|
||||||
|
|
||||||
|
### Networking Concepts and TCP/IP Protocol Suite
|
||||||
|
|
||||||
|
#### Introduction to Networking Concepts
|
||||||
|
|
||||||
|
- Understanding LAN, WAN, and internet
|
||||||
|
- Overview of the OSI model
|
||||||
|
|
||||||
|
#### TCP/IP Protocol Suite
|
||||||
|
|
||||||
|
- IP addressing and subnetting basics
|
||||||
|
- Common protocols: HTTP, FTP, SMTP
|
||||||
|
|
||||||
|
### Network Devices and Troubleshooting
|
||||||
|
|
||||||
|
#### Network Devices
|
||||||
|
|
||||||
|
- Routers, switches, and hubs
|
||||||
|
|
||||||
|
#### Network Troubleshooting
|
||||||
|
|
||||||
|
- Using `ping`, `tracert`, and other tools
|
||||||
|
|
||||||
|
### Servers – Linux Web Server Setup
|
||||||
|
|
||||||
|
#### Setting Up a Linux Server Environment
|
||||||
|
|
||||||
|
- Server vs. desktop environments
|
||||||
|
- Installing server packages
|
||||||
|
- Configuring SSH for remote access
|
||||||
|
|
||||||
|
### Servers – Linux Web Server Configuration
|
||||||
|
|
||||||
|
#### Installing and Configuring a Web Server
|
||||||
|
|
||||||
|
- Apache or Nginx installation
|
||||||
|
- Serving static web pages
|
||||||
|
|
||||||
|
#### Managing Services on Linux
|
||||||
|
|
||||||
|
- Starting, stopping, and enabling services
|
||||||
|
|
||||||
|
### Course Wrap-Up and Q&A
|
||||||
|
|
||||||
|
- Security considerations for web servers
|
||||||
|
- Firewall configuration
|
||||||
|
- Securing web server files
|
||||||
|
- Reviewing key concepts
|
||||||
|
- Discussing next steps for continued learning
|
||||||
Reference in New Issue
Block a user