Book description
This is the third edition of the bestselling one-stop resource for sysadmins and DevOps professionals to learn, configure and use Ubuntu 20.04 for their day-to-day operations and deployments.
Key Features
- A hands-on book that will teach you how to deploy, maintain and troubleshoot Ubuntu Server
- Learn to leverage the improved performance and security-related aspects of Ubuntu Server 20.04 LTS
- New chapters dedicated to exploring Ubuntu for cloud
Book Description
Ubuntu Server has taken data centers around the world by storm. Whether you're deploying Ubuntu for a large-scale project or for a small office, it is a stable, customizable, and powerful Linux distribution with innovative and cutting-edge features. For both simple and complex server deployments, Ubuntu's flexible nature can be easily adapted to meet to the needs of your organization.
This third edition is updated to cover the advancements of Ubuntu 20.04 LTS and further train you to understand how to use Ubuntu Server, from initial deployment to creating production-ready resources for your network. The book begins with the concepts of user management, group management, and file system permissions. Continuing into managing storage volumes, you will learn how to format storage devices, utilize logical volume management, and monitor disk usage. Later, you will learn how to virtualize hosts and applications, which will include setting up QEMU & KVM, as well as containerization with both Docker and LXD. As the book continues, you will learn how to automate configuration with Ansible, as well as take a look at writing scripts. Lastly, you will explore best practices and troubleshooting techniques when working with Ubuntu Server that are applicable to real-world scenarios.
By the end of this Ubuntu Server book, you will be well-versed in Ubuntu server's advanced concepts and attain the required proficiency needed for Ubuntu Server administration.
What you will learn
- Manage users, groups, and permissions
- Optimize the performance of system resources
- Perform disk encryption and decryption with Linux Unified Key Setup (LUKS)
- Set up Secure Shell (SSH) for remote access, and connect it to other nodes
- Share directories using Samba and Network File System (NFS)
- Get familiar with scripting to improve command-line efficiency
- Configure VMs, containers, and orchestrate with MicroK8s and Kubernetes
- Automate server deployments with Ansible and cloud server deployments with Terraform
Who this book is for
The book is written to cater to sysadmins and DevOps professionals whose teams are planning to employ an Ubuntu/Linux environment for their development needs.
Prior knowledge of Ubuntu is not required. However, it is assumed that you possess some IT admin, Linux, and shell scripting experience.
Publisher resources
Table of contents
- Preface
- Deploying Ubuntu Server
-
Managing Users and Permissions
- Understanding users and groups
- Understanding when to use root
- Creating and removing users
- Understanding the /etc/passwd and /etc/shadow files
- Distributing default configuration files with /etc/skel
- Switching users
- Managing groups
- Managing passwords and password policies
- Configuring administrator access with sudo
- Setting permissions on files and directories
- Summary
- Further reading
-
Managing Software Packages
- Understanding Linux package management
- Understanding the differences between Debian and Snap packages
- Installing and removing software
- Searching for packages
- Managing package repositories
- Backing up and restoring Debian packages
- Cleaning up orphaned apt packages
- Taking advantage of hardware enablement updates
- Summary
- Further reading
- Navigating and Essential Commands
- Managing Files and Directories
- Boosting Your Command-line Efficiency
- Controlling and Managing Processes
- Monitoring System Resources
- Managing Storage Volumes
- Connecting to Networks
- Setting Up Network Services
- Sharing and Transferring Files
- Managing Databases
- Serving Web Content
- Automating Server Configuration with Ansible
- Virtualization
- Running Containers
- Container Orchestration
-
Deploying Ubuntu in the Cloud
- Understanding the difference between on-premises and cloud infrastructure
- Important considerations when considering cloud computing as a potential solution
- Becoming familiar with some basic AWS concepts
- Creating an AWS account
- Choosing a region
- Deploying Ubuntu as an AWS EC2 instance
- Creating and deploying Ubuntu AMI images
- Automatically scaling Ubuntu EC2 deployments with Auto Scaling
- Keeping costs down: understanding how to save money and make cost-effective decisions
- Taking cloud further: additional resources to grow your knowledge
- Summary
- Further reading
-
Automating Cloud Deployments with Terraform
- Why it's important to automate your infrastructure
- Introduction to Terraform and how it can fit within your workflow
- Installing Terraform
- Automating an EC2 instance deployment
- Managing security groups with Terraform
- Using Terraform to destroy unused resources
- Combining Ansible with Terraform for a full deployment solution
- Summary
-
Securing Your Server
- Lowering your attack surface
- Understanding and responding to CVEs
- Installing security updates
- Automatically installing patches with the Canonical Livepatch service
- Monitoring Ubuntu servers with Canonical's Landscape service
- Securing OpenSSH
- Installing and configuring Fail2ban
- MariaDB best practices for secure database servers
- Setting up a firewall
- Encrypting and decrypting disks with LUKS
- Locking down sudo
- Summary
- Further reading
- Troubleshooting Ubuntu Servers
- Preventing Disasters
- Another Book You May Enjoy
- Index
Product information
- Title: Mastering Ubuntu Server - Third Edition
- Author(s):
- Release date: December 2020
- Publisher(s): Packt Publishing
- ISBN: 9781800564640
You might also like
book
Python for Cybersecurity
Discover an up-to-date and authoritative exploration of Python cybersecurity strategies Python For Cybersecurity: Using Python for …
book
Linux for Networking Professionals
Get to grips with the most common as well as complex Linux networking configurations, tools, and …
book
Mastering Ubuntu Server - Fourth Edition
Your one-stop resource to learn, configure and use Ubuntu 22.04 for your day-to-day operations and deployments …
book
Learning DevOps - Second Edition
Implement modern DevOps techniques to increase business productivity, agility, reliability, security, and scalability Key Features Learn …