UNIX and Linux System Administration Handbook
(UNIX-LINUX-ADM.AB1) / ISBN : 978-1-64459-476-6
About This Course
Gain a solid understanding of the fundamental principles of UNIX and Linux systems. This course is designed to provide you with practical knowledge and hands-on experience in managing UNIX and Linux systems. By the end of this course, you'll be equipped with the skills and confidence to effectively manage UNIX and Linux systems, troubleshoot issues and implement best practices in system administration.
Skills You’ll Get
Get the support you need. Enroll in our Instructor-Led Course.
Interactive Lessons
32+ Interactive Lessons | 90+ Exercises | 405+ Quizzes | 195+ Flashcards | 195+ Glossary of terms
Gamified TestPrep
Hands-On Labs
43+ LiveLab | 43+ Video tutorials | 01:09+ Hours
Introduction
- The Organization of this course
Where to Start
- Essential duties of a system administrator
- Suggested background
- Linux distributions
- Example systems used in this course
- Notation and typographical conventions
- Units
- Man pages and other on-line documentation
- Other authoritative documentation
- Other sources of information
- Ways to find and install software
- Where to host
- Specialization and adjacent disciplines
- Recommended reading
Booting and System Management Daemons
- Boot process overview
- System firmware
- Boot loaders
- GRUB: the GRand Unified Boot loader
- The FreeBSD boot process
- System management daemons
- systemd in detail
- FreeBSD init and startup scripts
- Reboot and shutdown procedures
- Stratagems for a nonbooting system
Access Control and Rootly Powers
- Standard UNIX access control
- Management of the root account
- Extensions to the standard access control model
- Modern access control
- Recommended reading
Process Control
- Components of a process
- The life cycle of a process
- ps: monitor processes
- Interactive monitoring with top
- nice and renice: influence scheduling priority
- The /proc filesystem
- strace and truss: trace signals and system calls
- Runaway processes
- Periodic processes
The Filesystem
- Pathnames
- Filesystem mounting and unmounting
- Organization of the file tree
- File types
- File attributes
- Access control lists
Software Installation and Management
- Operating system installation
- Managing packages
- Linux package management systems
- High-level Linux package management systems
- FreeBSD software management
- Software localization and configuration
- Recommended reading
Scripting and the Shell
- Scripting philosophy
- Shell basics
- sh scripting
- Regular expressions
- Python programming
- Ruby programming
- Library and environment management for Python and Ruby
- Revision control with Git
- Recommended reading
User Management
- Account mechanics
- The /etc/passwd file
- The Linux /etc/shadow file
- FreeBSD's /etc/master.passwd and /etc/login.conf files
- The /etc/group file
- Manual steps for adding users
- Scripts for adding users: useradd, adduser, and newusers
- Safe removal of a user’s account and files
- User login lockout
- Risk reduction with PAM
- Centralized account management
Cloud Computing
- The cloud in context
- Cloud platform choices
- Cloud service fundamentals
- Clouds: VPS quick start by platform
- Cost control
- Recommended Reading
Logging
- Log locations
- The systemd journal
- Syslog
- Kernel and boot-time logging
- Management and rotation of log files
- Management of logs at scale
- Logging policies
Drivers and the Kernel
- Kernel chores for system administrators
- Kernel version numbering
- Devices and their drivers
- Linux kernel configuration
- FreeBSD kernel configuration
- Loadable kernel modules
- Booting
- Booting alternate kernels in the cloud
- Kernel errors
- Recommended reading
Printing
- CUPS printing
- CUPS server administration
- Troubleshooting tips
- Recommended reading
TCP/IP Networking
- TCP/IP and its relationship to the Internet
- Networking basics
- Packet addressing
- IP addresses: the gory details
- Routing
- IPv4 ARP and IPv6 neighbor discovery
- DHCP: the Dynamic Host Configuration Protocol
- Security issues
- Basic network configuration
- Linux networking
- FreeBSD networking
- Network troubleshooting
- Network monitoring
- Firewalls and NAT
- Cloud networking
- Recommended reading
Physical Networking
- Ethernet: the Swiss Army knife of networking
- Wireless: Ethernet for nomads
- SDN: software-defined networking
- Network testing and debugging
- Building wiring
- Network design issues
- Management issues
- Recommended vendors
- Recommended reading
IP Routing
- Packet forwarding: a closer look
- Routing daemons and routing protocols
- Protocols on parade
- Routing protocol multicast coordination
- Routing strategy selection criteria
- Routing daemons
- Cisco routers
- Recommended reading
DNS: The Domain Name System
- DNS architecture
- DNS for lookups
- The DNS namespace
- How DNS works
- The DNS database
- The BIND software
- Split DNS and the view statement
- BIND configuration examples
- Zone file updating
- DNS security issues
- BIND debugging
- Recommended reading
Single Sign-On
- Core SSO elements
- LDAP: “lightweight” directory services
- Using directory services for login
- Alternative approaches
- Recommended reading
Electronic Mail
- Mail system architecture
- Anatomy of a mail message
- The SMTP protocol
- Spam and malware
- Message privacy and encryption
- Mail aliases
- Email configuration
- sendmail
- Exim
- Postfix
- Recommended reading
Web Hosting
- HTTP: the Hypertext Transfer Protocol
- Web software basics
- Web hosting in the cloud
- Apache httpd
- NGINX
- HAProxy
- Recommended reading
Storage
- I just want to add a disk!
- Storage hardware
- Storage hardware interfaces
- Attachment and low-level management of drives
- The software side of storage: peeling the onion
- Disk partitioning
- Logical volume management
- RAID: redundant arrays of inexpensive disks
- Filesystems
- Traditional filesystems: UFS, ext4, and XFS
- Next-generation filesystems: ZFS and Btrfs
- ZFS: all your storage problems solved
- Btrfs: “ZFS lite” for Linux
- Data backup strategy
- Recommended reading
The Network File System
- Meet network file services
- The NFS approach
- Server-side NFS
- Client-side NFS
- Identity mapping for NFS version 4
- nfsstat: dump NFS statistics
- Dedicated NFS file servers
- Automatic mounting
- Recommended reading
SMB
- Samba: SMB server for UNIX
- Installing and configuring Samba
- Mounting SMB file shares
- Browsing SMB file shares
- Ensuring Samba security
- Debugging Samba
- Recommended reading
Configuration Management
- Configuration management in a nutshell
- Dangers of configuration management
- Elements of configuration management
- Popular CM systems compared
- Introduction to Ansible
- Introduction to Salt
- Ansible and Salt compared
- Best practices
- Recommended reading
Virtualization
- Virtual vernacular
- Virtualization with Linux
- FreeBSD bhyve
- VMware
- VirtualBox
- Packer
- Vagrant
- Recommended reading
Containers
- Background and core concepts
- Docker: the open source container engine
- Containers in practice
- Container clustering and management
- Recommended reading
Continuous Integration and Delivery
- CI/CD essentials
- Pipelines
- Jenkins: the open source automation server
- CI/CD in practice
- Containers and CI/CD
- Recommended reading
Security
- Elements of security
- How security is compromised
- Basic security measures
- Passwords and user accounts
- Security power tools
- Cryptography primer
- SSH, the Secure SHell
- Firewalls
- Virtual private networks (VPNs)
- Certifications and standards
- Sources of security information
- When your site has been attacked
- Recommended reading
Monitoring
- An overview of monitoring
- The monitoring culture
- The monitoring platforms
- Data collection
- Network monitoring
- Systems monitoring
- Application monitoring
- Security monitoring
- SNMP: the Simple Network Management Protocol
- Tips and tricks for monitoring
- Recommended reading
Performance Analysis
- Performance tuning philosophy
- Ways to improve performance
- Factors that affect performance
- Stolen CPU cycles
- Analysis of performance problems
- System performance checkup
- Help! My server just got really slow!
- Recommended reading
Data Center Basics
- Racks
- Power
- Cooling and environment
- Data center reliability tiers
- Data center security
- Tools
- Recommended reading
Methodology, Policy, and Politics
- The grand unified theory: DevOps
- Ticketing and task management systems
- Local documentation maintenance
- Environment separation
- Disaster management
- IT policies and procedures
- Service level agreements
- Compliance: regulations and standards
- Legal issues
- Organizations, conferences, and other resources
- Recommended reading
Where to Start
- Building Software from Source Code
Booting and System Management Daemons
- Using systemd Commands
Process Control
- Using ps Commands
- Creating a cron Job
The Filesystem
- Using the chmod Command
Scripting and the Shell
- Working with Arithmetic Operations and Loops
- Executing the sh Script
Cloud Computing
- Creating an Instance in GCP
- Creating an EC2 Auto Scaling Group
Logging
- Using journalctl Commands
TCP/IP Networking
- Obtaining the IP Route Information from the IP Routing Table
- Capturing Network Packets Using tcpdump
- Capturing a Packet Using tshark
- Creating a VPC
Physical Networking
- Using Commands for Wireless Connectivity
IP Routing
- Configuring OSPF
- Configuring BGP Redistribution
- Configuring EIGRP
DNS: The Domain Name System
- Performing Zone Transfer Using dig
- Signing a Zone
Single Sign-On
- Examining Kerberos Settings
Web Hosting
- Using the curl Command
- Creating a Load Balancer in GCP
Storage
- Partitioning a Disk
The Network File System
- Configuring NFS Server
SMB
- Configuring Samba
- Creating an SMB File Share
Configuration Management
- Using the Ansible Tool
- Using Ansible Vault
- Creating Ansible Roles
- Creating an Ansible Configuration File
Virtualization
- Checking Hyper-V Compatibility
Containers
- Running Docker daemon Commands
- Using Docker
Security
- Using Social Engineering Techniques to Plan an Attack
- Simulating the DDoS Attack
- Performing Nmap Port Scanning
- Cracking a Linux Password Using John the Ripper
- Generating a Symmetric Key
- Generating an Asymmetric Key
- Examining Asymmetric Encryption
- Performing Symmetric Encryption
Performance Analysis
- Using Performance Analysis Commands