- Introduction
- 1. Essential Commands - 25%
- 1.1. Log into local & remote graphical and text mode consoles
- 1.2. Search for files
- 1.3. Evaluate and compare the basic file system features and options
- 1.4. Compare and manipulate file content
- 1.5. Use input-output redirection
- 1.6. Analyze text using basic regular expressions
- 1.7. Archive, backup, compress, unpack, and uncompress files
- 1.8. Create, delete, copy, and move files and directories
- 1.9. Create and manage hard and soft links
- 1.10. List, set, and change standard file permissions
- 1.11. Read, and use system documentation
- 1.12. Manage access to the root account
- 2. Operation of Running Systems - 20%
- 2.1. Boot, reboot, and shut down a system safely
- 2.2. Boot or change system into different operating modes
- 2.3. Install, configure and troubleshoot bootloaders
- 2.4. Diagnose and manage processes
- 2.5. Locate and analyze system log files
- 2.6. Schedule tasks to run at a set date and time
- 2.7. Verify completion of scheduled jobs
- 2.8. Update software to provide required functionality and security
- 2.9. Verify the integrity and availability of resources
- 2.10. Verify the integrity and availability of key processes
- 2.11. Change kernel runtime parameters, persistent and non-persistent
- 2.12. Use scripting to automate system maintenance tasks
- 2.13. Manage the startup process and services
- 2.14. List and identify SELinux/AppArmor file and process contexts
- 2.15. Manage software
- 2.16. Identify the component of a Linux distribution that a file belongs to
- 3. User and Group Management - 10%
- 3.1. Create, delete, and modify local user accounts
- 3.2. Create, delete, and modify local groups and group memberships
- 3.3. Manage system-wide environment profiles
- 3.4. Manage template user environment
- 3.5. Configure user resource limits
- 3.6. Manage user privileges
- 3.7. Configure PAM
- 4. Networking - 12%
- 4.1. Configure networking and hostname resolution statically or dynamically
- 4.2. Configure network services to start automatically at boot
- 4.3. Implement packet filtering (iptables, firewalld or ufw)
- 4.4. Start, stop, and check the status of network services
- 4.5. Statically route IP traffic
- 4.6. Synchronize time using other network peers
- 5. Service Configuration - 20%
- 5.1. Configure a caching DNS server
- 5.2. Maintain a DNS zone
- 5.3. Configure email aliases
- 5.4. Configure SSH servers and clients
- 5.5. Restrict access to the HTTP proxy server
- 5.6. Configure an IMAP and IMAPS service
- 5.7. Query and modify the behavior of system services at various operating modes
- 5.8. Configure an HTTP server
- 5.9. Configure HTTP server log files
- 5.10. Configure a database server
- 5.11. Restrict access to a web page
- 5.12. Manage and configure containers
- 5.13. Manage and configure Virtual Machines
- 6. Storage Management - 13%
- 6.1. List, create, delete, and modify physical storage partitions
- 6.2. Manage and configure LVM storage
- 6.3. Create and configure encrypted storage
- 6.4. Configure systems to mount file systems at or during boot
- 6.5. Configure and manage swap space
- 6.6. Create and manage RAID devices
- 6.7. Configure systems to mount file systems on demand
- 6.8. Create, manage and diagnose advanced file system permissions
- 6.9. Setup user and group disk quotas for filesystems
- 6.10. Create and configure file systems
- 7. Bonus/Miscellanea - 0%
- 7.1. bash
- 7.2. git
- 7.3. Repair the GRUB from live CD or USB stick
- 7.4. Install a CA certificate
- 7.5. Create a self-signed SSL certificate for Apache web server
- 7.6. Debugging TLS handshake issues
- 7.7. DNS essentials
- 7.8. Network-Manager
- 7.9. SSH-tunneling
- 7.10. Debugging corrupted character encoding issues
- 7.11. How to test a microphone
- 7.12. Automate login via SSH
- 7.13. How to fix low screen resolution
- 7.14. Non-Free Firmware for Debian
- 7.15. How to fix Nvidia graphics card problems
- 7.16. Recover from a failed installation
- 7.17. Mapping Hosts and Ports Locally
- 7.18. Tips & tricks
- 8. References