Linux for System Administrators: Navigate the complex landscape of the Linux OS and command line for effective administration

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

A modern guide for aspiring Linux administrators—from command line basics to enterprise features Key Features • Explore a Linux environment with a focus on networking, installation, configuration, and cloud management • Become familiar with the command line, basic commands, and directory • Learn how to automate apps and infrastructure using Chef Book Description Linux system administration is an essential aspect of maintaining and managing Linux servers within an organization. The role of a Linux system administrator is pivotal in ensuring the smooth functioning and security of these servers, making it a critical job function for any company that relies on Linux infrastructure. This book is a comprehensive guide designed to help you build a solid foundation in Linux system administration. It takes you from the fundamentals of Linux to more advanced topics, encompassing key areas such as Linux system installation, managing user accounts and filesystems, networking fundamentals, and Linux security techniques. Additionally, the book delves into the automation of applications and infrastructure using Chef, enabling you to streamline and optimize your operations. For both newcomers getting started with Linux and professionals looking to enhance their skills, this book is an invaluable hands-on guide with a structured approach and concise explanations that make it an effective resource for quickly acquiring and reinforcing Linux system administration skills. With the help of this Linux book, you’ll be able to navigate the world of Linux administration confidently to meet the demands of your role. What you will learn • Master the use of the command line and adeptly manage software packages • Manage users and groups locally or by using centralized authentication • Set up, diagnose, and troubleshoot Linux networks • Understand how to choose and manage storage devices and filesystems • Implement enterprise features such as high availability and automation tools • Pick up the skills to keep your Linux system secure Who this book is for This book is for anyone new to the IT sector or those looking to learn Linux for a career in administering Linux systems. Aspiring cloud professionals, helpdesk staff, application support engineers, application developers, researchers, educators, and students considering the use of Linux servers will find this book especially useful.

Author(s): Viorel Rudareanu, Daniil Baturin
Edition: 1
Publisher: Packt Publishing
Year: 2023

Language: English
Commentary: Publisher's PDF
Pages: 294
City: Birmingham, UK
Tags: Linux; Security; Filesystems; System Administration; Logging; Chef; High Availability; Best Practices; Networking; Automation; Storage Management; Process Management; User Management; Shell Scripting; Package Management; Elementary; Access Control; Authentication; Hardware Discovery

Cover
Title Page
Copyright and Credits
Contributors
Table of Contents
Preface
Part 1: Linux Basics
Chapter 1: Getting to Know Linux
The structure of a Linux system
The Linux kernel and Linux-based operating systems
Kernel versus user space
The Linux kernel and the GNU project
Open source software licenses
Permissive and copyleft licenses
Patent grant, tivoization, and SaaS concerns
Linux distributions
Package managers and package repositories
Differences between distributions
Linux usage in the modern world
Summary
Chapter 2: The Shell and Its Commands
What is a shell?
Basic shell commands
Intermediate shell commands
Summary
Chapter 3: The Linux Filesystem
What is a filesystem?
High scalability
High performance
What filesystem does my system use?
FUSE filesystem
The directory tree and standard directories
Links (hard and symbolic)
What is an inode?
What is a hard link?
What are symbolic links?
Mounting and unmounting filesystems
How to unmount the filesystem
Pseudo-filesystems
Processes
Kernel and system information
CPU usage
Summary
Chapter 4: Processes and Process Control
Executables versus processes
Process termination and exit codes
Exit codes
Signals
The kill command
The process tree
Process search and monitoring
The ps command
Process monitoring tools
The /proc filesystem
Summary
Chapter 5: Hardware Discovery
Discovering CPU model and features
Feature discovery on different platforms
The /proc/cpuinfo file
Multi-processor systems
High-level CPU discovery utilities
Memory discovery
Discovering PCI devices
Discovering USB devices
Discovering storage devices
High-level discovery tools
dmidecode
lshw
Summary
Part 2: Configuring and Modifying Linux Systems
Chapter 6: Basic System Settings
Overview of basic settings
The hosts configuration file
The resolv configuration file
The network-scripts configuration file
The dhclient configuration file
The sysctl configuration file
Summary
Chapter 7: User and Group Management
Overview of managing accounts/groups
How to add a new account
Using useradd
Using adduser
How to delete an account
Understanding the/etc/sudoers file
Switching users
Managing account passwords
Locking/unlocking user accounts
Setting password expiration
Group management
Permissions
Changing groups
Summary
Chapter 8: Software Installation and Package Repositories
Software installation, packages, and dependencies
Package managers
Package files
Inspecting package files
Inspecting installed packages
Installing and removing package files
Package repositories and high-level package managers
Package repositories
High-level package managers
Searching for packages
System upgrade
Upgrading a system with YUM or DNF
Upgrading a system with APT
Summary
Further reading
Chapter 9: Network Configuration and Debugging
Linux network stack
Network interfaces and addresses in Linux
Discovering physical network devices
Network interface names
Using the ip command
Discovering and inspecting logical links
Viewing and changing Ethernet link MAC addresses
Viewing and changing IP addresses
Routes and neighbor tables
ARP and NDP neighbor tables
Routes and route tables
NetworkManager
Distribution-specific configuration methods
Debian
Old Red Hat-based distributions
Network troubleshooting
Using ping
Using traceroute
Summary
Chapter 10: Storage Management
Adding additional storage volumes
Formatting and partitioning storage devices
Formatting a newly created partition
Mounting and unmounting volumes
Updating the /etc/fstab file
Editing /etc/fstab file
Utilizing LVM
Getting started with LVM
Creating a format for logical disks
Deleting volumes with LVM
Summary
Part 3: Linux as a Part of a Larger System
Chapter 11: Logging Configuration and Remote Logging
Logging configuration
How does log data get sent and gathered?
Checking rsyslog service on all servers
Configuring rsyslog for centralized logging
Sending logs to a centralized rsyslog server
Log rotation
Journald
DMESG
Understanding the ring buffer in Linux
Summary
Chapter 12: Centralized Authentication
The AAA framework
Authentication mechanisms in Linux
Information lookup
Name Service Switch
Pluggable Authentication Modules
PAM configuration
Limitations of PAM
System Security Services Daemon
Active Directory authentication with Samba 4
Setting up the domain controller
Setting up the client
Summary
Further reading
Chapter 13: High Availability
Types of redundancy and load balancing
Link layer redundancy
Network layer redundancy and load balancing
Transport layer load balancing with LVS
LVS load-balancing methods
Saving and restoring LVS configurations
Additional LVS options
Active/backup configurations and load balancing with Keepalived
Installing Keepalived
Basics of the VRRP protocol operation
Configuring VRRP
Configuring virtual servers
Application layer load balancing
Web application load balancing with HAProxy
Summary
Further reading
Chapter 14: Automation with Chef
Overview of infrastructure automation
Benefits of automation in Linux
Introduction to Chef
What is Chef?
Key features of Chef
Overview of Chef’s architecture
Chef server
Chef server components
Cookbooks and recipes
Chef workstation
Development workflow
Managing environments and roles
Chef nodes
Node registration
Communication with the Chef server
Cookbook development
Cookbook structure and components
Writing recipes and resources
Managing infrastructure with Chef
Configuration management
Chef client-server interaction
Reporting and monitoring
Data synchronization
Benefits of automating infrastructure with Chef in Linux
Consistency and scalability
Reduced human error
Enhanced security
Challenges and best practices
Best practices for effective Chef implementation
Summary
Chapter 15: Security Guidelines and Best Practices
Common threats and attack types
The motivation of attackers and the possible consequences
Information security properties and attacks on them
Keeping your system secure
Reducing the attack surface
Compartmentalization and privilege separation
Preventing credential theft and brute-force attacks
Reducing the risk of software vulnerabilities
Summary
Further reading
Index
Other Books You May Enjoy