Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Debian Distribution
Understanding Debian
- Selecting the appropriate Debian version
- Debian support channels and resources
- The Debian community structure
Console Fundamentals
- Navigating the shell prompt
- Operating the shell prompt within X
- The root account and root shell prompt (su, sudo, executing programs as root under X)
- GUI-based system administration tools
- Virtual consoles
- Exiting the command prompt
- Shutting down the system safely
- Restoring a functional console state
- Recommended packages for beginners
- Creating an additional user account
- Configuring sudo
The File System
- Understanding file permissions
- Controlling permissions for new files: umask
- Managing permissions for user groups
- Working with timestamps
- Understanding links
- Named pipes (FIFOs)
- Sockets
- Device files
- Special device files
- Understanding procfs and sysfs
Midnight Commander (MC)
- Customizing Midnight Commander
- Launching MC
- Using the file manager in MC
- Command-line tricks within MC
- The internal editor in MC
- The internal viewer in MC
- Auto-start features of MC
- MC's FTP virtual file system
The Basic Unix-like Work Environment
- The login shell
- Customizing bash
- Utilizing special key combinations
- Using the pager
- Setting a default text editor
- Exiting vim
- Recording shell activities
- Essential Unix commands
Basic Shell Commands
- Command execution and environment variables
- The "$LANG" variable
- The "$PATH" variable
- The "$HOME" variable
- Command-line options
- Shell globbing
- Command return values
- Typical command sequences and shell redirection
- Creating command aliases
Unix-like Text Processing
- Essential Unix text tools
- Regular expressions
- Replacement expressions
- Global substitution with regular expressions
- Extracting data from text file tables
- Script snippets for piping commands
Debian Package Management
Prerequisites for Debian Package Management
- Package configuration
- Essential precautions
- Managing long-term upgrades
- Basics of the Debian archive
- Understanding package dependencies
- The event flow of package management
- Initial responses to package management issues
Basic Package Management Operations
- Comparing apt-get/apt-cache versus aptitude
- Performing basic package management operations via the command line
- Interactive use of aptitude
- Key bindings in aptitude
- Package views under aptitude
- Search method options with aptitude
- Using the aptitude regex formula
- Dependency resolution in aptitude
- Reviewing package activity logs
Examples of aptitude Operations
- Listing packages using regex matching on package names
- Browsing packages with regex matching
- Purging removed packages permanently
- Managing auto/manual installation status
- Performing a system-wide upgrade
Advanced Package Management Operations
- Executing advanced package management operations via the command line
- Verifying installed package files
- Precautions for potential package problems
- Searching package metadata
Internals of Debian Package Management
- Archive metadata
- The top-level "Release" file and authenticity
- Archive-level "Release" files
- Fetching metadata for packages
- Package state for APT
- Package state for aptitude
- Local copies of fetched packages
- Debian package file naming conventions
- Using the dpkg command
- Using the update-alternatives command
- Using the dpkg-statoverride command
- Using the dpkg-divert command
Recovering from a Broken System
- Addressing incompatibilities with old user configurations
- Handling different packages with overlapping files
- Repairing broken package scripts
- Rescuing the system using the dpkg command
- Recovering package selection data
Tips for Package Management
- Choosing the right Debian packages
- Handling packages from mixed archive sources
- Adjusting candidate versions
- Applying updates and backports
- Automating package downloads and upgrades
- Limiting APT download bandwidth
- Performing emergency downgrades
- Identifying the package uploader
- Using the equivs package
- Porting a package to a stable system
- Configuring an APT proxy server
- Utilizing a small public package archive
- Recording and copying system configuration
- Converting or installing alien binary packages
- Extracting packages without dpkg
- Further reading on package management
System Initialization
- Overview of the boot strap process
- BIOS, boot loader, and the mini-Debian system
- Understanding runlevels
- Configuring runlevels
- Runlevel management examples
- Default parameters for each init script
- Setting the hostname
- File system setup
- Initializing network interfaces
- Initializing network services
- System messages
- Kernel messages
- The udev system
- Initializing kernel modules
Authentication and Security
- Standard Unix authentication
- Managing account and password information
- Creating strong passwords
- Generating encrypted passwords
- Understanding PAM and NSS
- Configuration files accessed by PAM and NSS
- Modern centralized system management
- "Why GNU su does not support the wheel group"
- Enforcing stricter password rules
- Implementing other access controls
- Using sudo
- SELinux and Apparmor
- Restricting access to specific server services
- Ensuring authentication security
- Sending secure passwords over the Internet
- Using Secure Shell (SSH)
- Implementing extra security measures for the Internet
- Securing the root password
Network Setup
Basic Network Infrastructure
- Understanding domain names
- Hostname resolution
- Network interface naming
- LAN network address ranges
- Network device support
Modern Network Configuration for Desktop
- GUI network configuration tools
Low-Level Network Configuration
- Using Iproute2 commands
- Safely performing low-level network operations
Network Optimization
- Finding the optimal MTU
- Setting MTU
- WAN TCP optimization
Netfilter Infrastructure
Network Applications
The Mail System
- Basics of modern mail services
- Mail configuration strategy for workstations
Mail Transport Agent (MTA) and Mail User Agent (MUA)
- Overview of exim4
- Basic MUA - Mutt
Mail Delivery Agent (MDA) with Filter
- Configuring maildrop
- Configuring procmail
- Redelivering mbox contents
POP3/IMAP4 Server
Remote Access Server and Utility (SSH)
- SSH basics
- Port forwarding for SMTP/POP3 tunneling
- Connecting without remote passwords
- Managing incompatible SSH clients
- Setting up ssh-agent
- Shutting down remote systems via SSH
- SSH troubleshooting
Other Network Application Servers
Other Network Application Clients
Diagnosing System Daemons
The X Window System
- Setting up the desktop environment
- Understanding the server/client relationship
- The X server
- Starting the X Window System
- Starting an X session with gdm
- Customizing the X session (classic method)
- Customizing the X session (new method)
- Connecting a remote X client via SSH
- Securing X terminal access via the Internet
- X applications
- X office applications
- X utility applications
System Tips
The Screen Program
- Use scenarios for screen(1)
- Key bindings for the screen command
Data Recording and Presentation
- The log daemon
- Log analyzers
- Cleanly recording shell activities
- Customizing text data display
- Customizing time and date display
- Colorized shell echo
- Colorized commands
- Recording editor activities for complex repeats
- Recording the graphic image of an X application
- Recording changes in configuration files
Data Storage Tips
- Disk partition configuration
- Accessing partitions using UUID
- File system configuration
- File system creation and integrity checks
- Optimizing file systems via mount options
- Optimizing file systems via superblock
- Optimizing hard disk performance
- Using SMART to predict hard disk failure
- Expanding usable storage space via LVM
- Expanding usable storage space by mounting another partition
- Expanding usable storage space using symlinks
- Expanding usable storage space using aufs
Data Encryption Tips
- Encrypting removable disks with dm-crypt/LUKS
- Encrypting swap partitions with dm-crypt
- Automatically encrypting files with eCryptfs
- Automatically mounting eCryptfs
Monitoring, Controlling, and Starting Program Activities
- Timing a process
- Setting scheduling priority
- Using the ps command
- Using the top command
- Listing files opened by a process
- Tracing program activities
- Identifying processes using files or sockets
- Repeating a command at constant intervals
- Repeating a command looping over files
- Starting a program from the GUI
- Customizing startup programs
- Killing a process
- Scheduling tasks once
- Scheduling tasks regularly
- Using the Alt-SysRq key
System Maintenance Tips
- Identifying who is on the system
- Warning all users
- Hardware identification
- Hardware configuration
- System and hardware time management
- Terminal configuration
- Sound infrastructure
- Disabling the screen saver
- Disabling beep sounds
- Managing memory usage
- System security and integrity checks
The Kernel
- Kernel parameters
- Kernel headers
- Compiling the kernel and related modules
- Compiling the kernel source: Debian standard method
- Compiling module source: Debian standard method
- Non-free hardware drivers
Virtualized Systems
- Virtualization tools
- Virtualization workflows
- Mounting virtual disk image files
- Chroot systems
- Multiple desktop systems
Data Management
Sharing, Copying, and Archiving
- Archive and compression tools
- Copy and synchronization tools
- Idioms for archiving
- Idioms for copying
- Idioms for file selection
- Backup and recovery strategies
- Backup utility suites
- Example script for system backup
- Copy script for data backup
- Removable storage devices
- Sharing data via the network
- Archive media
Binary Data
- Viewing and editing binary data
- Manipulating files without mounting the disk
- Data redundancy
- Data file recovery and forensic analysis
- Splitting large files into smaller files
- Clearing file contents
- Creating dummy files
- Erasing an entire hard disk
- Erasing unused areas of a hard disk
- Undeleting deleted but still open files
- Searching all hardlinks
- Identifying invisible disk space consumption
Data Security Infrastructure
- Key management for GnuPG (signing and encrypting)
- The MD5 sum
Requirements
There are no specific prerequisites required to enrol in this course.
35 Hours