Mastering Ubuntu Server : Master the Art of Deploying, Configuring, Managing, and Troubleshooting Ubuntu Server 18. 04.
Material type:
- text
- computer
- online resource
- 9781788997089
- 005.432
- QA76.774.U28 .L337 2018
Cover -- Title Page -- Copyright and Credits -- Dedication -- Packt Upsell -- Contributors -- Table of Contents -- Preface -- Chapter 1: Deploying Ubuntu Server -- Technical requirements -- Setting up our lab -- Determining your server's role -- Deciding between 32- and 64-bit installations -- Obtaining Ubuntu Server installation media -- Creating a bootable Ubuntu Server flash drive -- Planning the partitioning layout -- Installing Ubuntu Server -- Installing Ubuntu Server on Raspberry Pi 3 -- Summary -- Questions -- Further reading -- Chapter 2: Managing Users -- 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 -- Questions -- Further reading -- Chapter 3: Managing Storage Volumes -- Understanding the Linux filesystem -- Using symbolic and hard links -- Viewing disk usage -- Adding additional storage volumes -- Partitioning and formatting volumes -- Mounting and unmounting volumes -- Understanding the /etc/fstab file -- Managing swap -- Utilizing LVM volumes -- Understanding RAID -- Summary -- Questions -- Further reading -- Chapter 4: Connecting to Networks -- Setting the hostname -- Managing network interfaces -- Assigning static IP addresses -- Understanding NetworkManager -- Understanding Linux name resolution -- Getting started with OpenSSH -- Getting started with SSH key management -- Simplifying SSH connections with a config file -- Summary -- Questions -- Further reading -- Chapter 5: Managing Software Packages -- Understanding Linux package management -- Taking advantage of hardware enablement updates.
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 -- Making use of Aptitude -- Summary -- Questions -- Chapter 6: Controlling and Monitoring Processes -- Showing running processes with the ps command -- Managing jobs -- Dealing with misbehaving processes -- Utilizing htop -- Managing system processes -- Monitoring memory usage -- Scheduling tasks with cron -- Understanding load average -- Summary -- Questions -- Further reading -- Chapter 7: Setting Up Network Services -- Planning your IP address scheme -- Serving IP addresses with isc-dhcp-server -- Setting up DNS with bind -- Creating a secondary (slave) DNS server -- Setting up an internet gateway -- Keeping your clock in sync with NTP -- Summary -- Questions -- Further reading -- Chapter 8: Sharing and Transferring Files -- File server considerations -- Sharing files with Windows users via Samba -- Setting up NFS shares -- Transferring files with rsync -- Transferring files with scp -- Mounting remote directories with SSHFS -- Summary -- Questions -- Further reading -- Chapter 9: Managing Databases -- Preparations for setting up a database server -- Installing MariaDB -- Understanding the MariaDB configuration files -- Managing MariaDB databases -- Setting up a slave database server -- Summary -- Questions -- Chapter 10: Serving Web Content -- Installing and configuring Apache -- Installing additional Apache modules -- Securing Apache with SSL -- Installing and configuring NGINX -- Setting up failover with keepalived -- Setting up and configuring Nextcloud -- Summary -- Questions -- Further reading -- Chapter 11: Learning Advanced Shell Techniques -- Understanding the Linux shell -- Understanding Bash history.
Learning some useful command-line tricks -- Redirecting output -- Understanding variables -- Writing simple scripts -- Putting it all together: Writing an rsync backup script -- Summary -- Questions -- Further reading -- Chapter 12: Virtualization -- Setting up a virtual machine server -- Creating virtual machines -- Bridging the virtual machine network -- Simplifying virtual machine creation with cloning -- Managing virtual machines via the command line -- Summary -- Questions -- Further reading -- Chapter 13: Running Containers -- What is containerization? -- Understanding the differences between Docker and LXD -- Installing Docker -- Managing Docker containers -- Automating Docker image creation with Dockerfiles -- Managing LXD containers -- Summary -- Questions -- Further reading -- Chapter 14: Automating Server Configuration with Ansible -- Understanding the need for configuration management -- Why Ansible? -- Creating a Git repository -- Getting started with Ansible -- Making your servers do your bidding -- Putting it all together - Automating web server deployment -- Using Ansible's pull method -- Summary -- Questions -- Further reading -- Chapter 15: 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 -- Questions -- Further reading -- Chapter 16: Troubleshooting Ubuntu Servers -- Evaluating the problem space -- Conducting a root cause analysis -- Viewing system logs -- Tracing network issues -- Troubleshooting resource issues.
Diagnosing defective RAM -- Summary -- Questions -- Chapter 17: Preventing and Recovering from Disasters -- Preventing disasters -- Utilizing Git for configuration management -- Implementing a backup plan -- Replacing failed RAID disks -- Utilizing bootable recovery media -- Summary -- Questions -- Further Reading -- Appendix A: Using the Alternate Installer -- Obtaining the Alternate Installer -- Installing via the Alternate Installer -- Setting up software RAID -- Summary -- Appendix B: Assessments -- Chapter 1 - Deploying Ubuntu Server -- Chapter 2 - Managing Users -- Chapter 3 - Managing Storage Volumes -- Chapter 4 - Connecting to Networks -- Chapter 5 - Managing Software Packages -- Chapter 6 - Controlling and Monitoring Processes -- Chapter 7 - Setting Up Network Services -- Chapter 8 - Accessing and sharing files -- Chapter 9 - Sharing and Transferring Files -- Chapter 10 - Serving Web Content -- Chapter 11 - Learning Advanced Shell Techniques -- Chapter 12 - Virtualization -- Chapter 13 - Running Containers -- Chapter 14 - Automating Server Configuration with Ansible -- Chapter 15 - Securing Your Server -- Chapter 16 - Troubleshooting Ubuntu Servers -- Chapter 17 - Preventing and Recovering from Disasters -- Other Books You May Enjoy -- Index.
Ubuntu is a Debian-based Linux distribution with versions available for both desktops as well as servers. The Server edition, Ubuntu Server, has set the industry standard for Linux in the data center as well as the cloud. Organizations, inventors, and hobbyists alike will benefit from its flexible configuration, fast deployment, and a plethora.
Description based on publisher supplied metadata and other sources.
Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2024. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
There are no comments on this title.