COURSE OUTLINE
FIRST MODULE Linux Essentials Course Unit 1 - Overview * Objectives * UNIX History * UNIX Principles * GNU Project / FSF * GPL - GNU General Public License * Linux Origins * Why Linux? * Recommended Hardware Specifications * Local Logins * Virtual Consoles * The Xorg GUI Framework * The Xorg Graphical Environments * Starting Xorg * Changing Your Password Unit 2 - Running Commands and Getting Help * Objectives * Running Commands * Some Simple Commands * Getting Help * The whatis Command * The --help Option * Reading Usage Summaries * The man Command * Navigating man Pages * The info Command * Navigating info Pages * Extended Documentation * Linux Documentation * Hands-on lab: Getting Help with Commands Unit 3 - Browsing the Filesystem * Objectives * Linux File Hierarchy Concepts * Some Important Directories * Other Important Directories * Current Working Directory * File and Directory Names * Absolute Pathnames * Relative Pathnames * Changing Directories * Listing Directory Contents * Copying Files and Directories * Copying Files and Directories: The Destination * Moving and Renaming Files and Directories * Moving and Renaming Files and Directories: The Destination * Creating and Removing Files * Creating and Removing Directories * Using Nautilus * Moving and Copying in Nautilus * Determining File Content * Viewing an Entire Text File * Viewing Text Page by Page * Hands-on lab: Browsing the Filesystem Unit 4 - The bash Shell * Objectives * bash Introduction * bash Heritage and Features * Command Line Shortcuts * Command Line Shortcuts * Command Line Shortcuts * More History Tricks * Command Line Expansion * Command Line Expansion * Command Line Expansion * Protecting from Expansion * Protecting from Expansion * Command Editing Tricks * gnome-terminal * Hands-on lab: Exploring the Bash Shell Unit 5 - Standard I/O and Pipes * Objectives * Standard Input and Output * Redirecting Input and Output * Redirecting Output * Redirecting Standard Output * Overwriting vs Appending * Redirecting Standard Error * Redirecting Both Standard Output and Error * Redirecting Input * Using Pipes To Connect Processes * Useful Pipe Targets * tee * Hands-on lab: Standard I/O and Pipes Unit 6 - Users, Groups, and Permissions * Objectives * The Linux Security Model * Users * Groups * The root user * Linux File Security * Permission Types * Examining Permissions * Interpreting Permissions * Examining Directories * Linux Process Security * Changing Permissions - Symbolic Method * Changing Permissions - Numeric Method * Changing Permissions - Nautilus * Hands-on lab: File Permissions Unit 7 - vi and vim Editor Basics * Objectives * Overview of vi and vim * Starting vi and vim * Three Modes of vi and vim * Cursor Movement * Cursor Movement * Entering Insert Mode * Leaving Insert Mode: Esc * Change, Delete, and Yank * Put (paste) * Undoing Changes * Searching for Text * Command-Mode Tricks * Saving and Exiting: ex mode * Hands-on lab: vi and vim Editor Basics Unit 8 - The Linux Filesystem In-Depth * Objectives * Partitions and Filesystems * Inodes * Directories * Inodes and Directories * cp and inodes * mv and inodes * rm and inodes * Symbolic (or Soft) Links * Hard Links * The Seven Fundamental Filetypes * Checking Free Space * Removable Media * Mounting CDs and DVDs * Mounting USB Media * Mounting Floppy Disks * Formatting Floppy Disks * Why Archive Files? * Creating an Archive * Inspecting Archives * Extracting an Archive * Why Use File Compression? * Compression Utilities * Using Compression * Compressing Archives * Hands-on lab: The Linux Filesystem Unit 9 - Configuring the Bash Shell * Objectives * Configuring the Bash ShellVariables * Common Local Variables * The PS1 Local Variable * Aliases * Other Shell Configuration Methods * Configuring Commands: Environment Variables * Common Environment Variables * The TERM Environment Variable * The PATH Environment variable * How bash Expands a Command Line * Shell Startup Scripts * Login Shells * Startup Scripts: Order of Execution * /etc/profile * /etc/profile. d * ~/.bash_profile and ~/.bashrc * ~/.bash_logout * Hands-on lab: Configuring the Bash Shell Unit 10 - Advanced Topics in Users, Groups and Permissions * Objectives * User and Group ID Numbers * /etc/passwd, /etc/shadow, and /etc/group files * System Users and Groups * Changing Your Identity * User Information Commands * Default Permissions * Special Permissions * Special Permissions for Executables * Special Permissions for Directories * Hands-on lab: Switching Users and Setting a Umask Unit 11 - Advanced vi/vim and Printing * Objectives * File Repositioning * Filtering * ex mode: Search and Replace * Visual Mode * Advanced Reading and Saving * Using multiple "windows" * Configuring vi and vim * Expanding your Vocabulary * Printing in Linux * Printing Commands * Printing Utilities * Hands-on lab: Advanced Uses of the vi and vim Editors Unit 12 - Introduction to String Processing * Objectives * head * tail * tail * wc (word count) * sort * uniq * cut * Other String Processing Tools * Version Comparison with diff * Spell Checking with aspell * Hands-on lab: Introduction to String Processing Unit 13 - String Processing with Regular Expressions * Objectives * Pattern Matching with Regular Expressions * Wildcard Characters * Character Classes * Modifiers * Anchors * The | Operator * regex Combinations * Regular Expressions - Examples * Quote your regex's! * grep * sed * Using sed * less and vi * Hands-on lab: String Processing with Regular Expressions Unit 14 - Finding and Processing Files * Objectives * slocate * slocate Examples * find * Basic find Examples * find and Logical Operators * find and Permissions * find and Numeric Criteria * find and Access Times * Executing Commands with find * find Execution Examples * The Gnome Search Tool * Hands-on lab: Finding and Processing Files Unit 15 - Investigating and Managing Processes * Objectives * What is a Process? * How Processes Are Created * Process Ancestry * Process States * Viewing Processes * Sending Signals to Processes * Terminating Processes * Altering Process Scheduling Priority * Altering Process Scheduling Priority (continued) * Interactive Process Management Tools * Running a Process in the Foreground * Running a Process in the Background * Suspending a Process * Listing Background and Suspended Jobs * Resuming Suspended Jobs * Compound Commands * Scheduling a Process To Execute Later * Scheduling Periodic Processes * Using cron * Crontab File Format * Hands-on lab: Process Controls Unit 16 - bash Shell Scripting * Objectives * Scripting Basics * Creating Shell Scripts * Creating Shell Scripts * Generating Output * Handling Input * Exit Status * Conditional Execution * Conditional Execution * Conditional Execution * Conditional Execution * Conditional Execution * for loops * for loops * while loopswhile loops * Positional Parameters * Positional Parameters * Scripting at the Command Line * Shell script debugging * Hands-on lab: bash Shell Scripting Unit 17 - Network Clients * Objectives * Web Clients * Firefox * Other GUI Web Browsers * Non-GUI Web Browsers * wget * Email and Messaging * Evolution * Configuring Evolution * Email and Encryption * Email and Digital Signatures * Evolution and GnuPG * Other GUI Mail Clients * Non-GUI Mail Clients * Gaim * ssh: Secure Shell * scp: Secure copy * telnet and the "r" services * rsync * lftp * gFTP * smbclient * File Transfer with Nautilus * Xorg Clients * Network Diagnostic Tools * Hands-on lab: Network Clients | SECOND MODULE Linux System Administration course UNIT 1 – Installation Linux * Hardware Overview * CPU and Memory * Preparing to Install * Multiboot systems * The Linux Installer * Installer Features * Linux Installation Overview * Partitioning Hard Drives * Sample Partition Structure * Configuring File Systems * Network Configuration * Firewall Setup * Security Enhanced Linux * Package Selection * Validating the Installation * noprobe Mode and Driver Disks * Post-Install Configuration * Hands-on Lab: Installation UNIT 2 - System Initialization and Services * Boot Sequence Overview * BIOS Initialization * Boot Loader Components * GRUB and grub.conf * Kernel Initialization * init Initialization * Run levels * /etc/rc.d/rc. sysinit * /etc/rc.d/rc * Daemon Processes * System V run levels * /etc/rc.d/rc. local * Virtual Consoles * Controlling Services * System Shutdown * System Reboot * Hands-on Lab: Managing Startup UNIT 3 - Kernel Services and Configuration * Objectives * Agenda * Kernel Modules * Kernel Module Configuration * The /proc filesystem * /proc/sys configuration with sysctl * General Hardware Resources * System Bus Support * Hotswappable Bus Support * System Monitoring and Process Control * Hands-on Lab: Configuring kernel parameters UNIT 4 - Filesystem Management * System Initialization: Device Recognition * Disk Partitioning * Managing Partitions * Managing Data: Filesystem Creation * Journaling for ext2 filesystems: ext3 * Mount Options and Configuration * The Auto-Mounter * ext2/ext3 Filesystem Attributes * Virtual Memory Files * Filesystem Maintenance * Adding a Drive * Hands-on Lab: Filesystem Management UNIT 5 - Network Configuration * Device Recognition * Network Interfaces * mii-tool * ifconfig * ifup/ifdown * Interface Configuration Files * Configuration Utilities * Binding Multiple IP Addresses * DHCP/BOOTP * Global Network Parameters * Default Route * Static Routes * Name Resolution * DNS Client Configuration * DNS Utilities * Network Diagnostics * Hands-on Lab: Static Network Settings UNIT 6 - RPM and Kickstart * The RPM Way * RPM Package Manager * Installing and Removing Software * Updating a Kernel RPM * RPM Queries * RPM Verification * Other RPM Utilities and Features * Automatic Dependency * Resolution * Remote Administration * Network Installation Server UNIT 7 - User Administration * User Policy Considerations * The User Account Database - /etc/passwd * Adding a New User Account * User Private Groups * Group Administration * Modifying/Deleting Accounts * Password Aging Policies * Login Shell Scripts * Non Login Shell Scripts * Switching Accounts * sudo * Network Users * Authentication Configuration * NIS Client Configuration * LDAP Client Configuration * File Ownership * Linux File Permissions * SUID / SGID Executables * The Sticky Bit * The Setgid Access Mode * Default File Permissions * Access Control Lists (ACLs) * Hands-on Lab: User and Group Administration UNIT 8 - Printing and Administration Tools * CUPS: Common Unix Printing System * Controlling Access to cron * System crontab Files * System Logging * syslog Configuration * Tape Drives * Using tar/star * Using dump/restore * Using cpio * Remote Backups * Other Backup Software * Hands-on Lab: Printing and Admin Tools UNIT 9 - The X Window System * XOrg: The X11 Server * XOrg Server Design * XOrg Server Configuration * XOrg Modularity * Server and Client Relationship * Configuration Utilities * Remote X Sessions * Hands-on Lab: The X Window System UNIT 10 - Advanced Filesystem Management * Software RAID Configuration * Software RAID Recovery * Converting LVM1 to LVM2 * Creating Logical Volumes * Resizing Logical Volumes * The Linux Quota System * Hands-on Lab: Logical Volumes, RAID and Quotas UNIT 11 - Troubleshooting * Basic Guidelines * Troubleshooting X * Troubleshooting Networking * Order of the Boot Process * Filesystem Corruption * Filesystem Recovery * Recovery Run-levels * Rescue Environment * Hands-on Lab: System Rescue and Troubleshooting | THIRD MODULE (Linux Networking and Security Administration) Course Content Unit 1: Introduction to System Services * Service Management * Types of Services * Fault Analysis * Hands-on lab: Introduction to System Services Unit 2: Securing Networks * Packet Filtering Capabilities * Netfilter Architecture * Chain Operations * Connection Tracking * Network Address Translation (NAT) * Hands-on lab: Securing Networks Unit 3: Organizing Networked Systems * DNS Basics * Internet DNS Hierarchy * Name Server Hierarchy * Berkeley Internet Name Domain (BIND) * Chrooted BIND * rndc * Zone Files * Delegating Subdomains * BIND Syntax Utilities * Advanced BIND features * Configuring the DHCP server * Hands-on lab: Organizing Networked Systems Unit 4: Network File Sharing Services * Configuring NFS services * Configuring FTP services * Samba Services * Hands-on lab: Network File Sharing Services Unit 5: Electronic Mail Services * Operational Overview * Security and "Anti-Spam" Features * sendmail Configuration with the m4 Macro Language * sendmail Client Configuration * Debugging sendmail * Postfix * Configuring postfix * Additional postfix Configuration * Hands-on lab: Electronic Mail Services Unit 6: The HTTP Service * Apache Features * Apache Server Configuration * Virtual Hosts * Apache Namespace Configuration * Using .htaccess Files * CGI * Apache Encrypted Web Server * Squid Web Proxy Cache * Hands-on lab: The HTTP Service Unit 7: Security Concerns and Policy * Definitions of Security * Basic Network Security * Diagnostic Utilities * Remote Service Detection * Security Policy * Response Strategies and Resources * Hands-on lab: Security Concerns and Policy Unit 8: Authentication Services * Authentication and Account Basics * PAM Operation * Core PAM Modules * Authentication Modules * Password Security * Authentication Troubleshooting * NIS Server Configuration * NIS Client Configuration * NIS Troubleshooting * Hands-on lab: Authentication Services Unit 9: System Monitoring * Introduction to System Monitoring * File System Analysis * System Log Files * syslogd and klogd configuration * Log File Analysis * Monitoring and Limiting Processes * System Activity Reporting * Hands-on lab: System Monitoring Unit 10: Securing Services * System V Startup Control * Securing the Service * tcp_wrappers Configuration * xinetd Access Control * Advanced Security Options * Hands-on lab: Securing Services Unit 11: Securing Data * The Need For Encryption * Cryptographic Building Blocks * Symmetric Encryption * Asymmetric Encryption * Public Key Infrastructures * Digital Certificates * Generating Digital Certificates * OpenSSH Overview * OpenSSH Authentication * The OpenSSH server and clients * Protecting Your Keys * Hands-on lab: Securing Data |