You are previewing Mastering Linux Network Administration.
O'Reilly logo
Mastering Linux Network Administration

Book Description

Master the skills and techniques that are required to design, deploy, and administer real Linux-based networks

About This Book

  • Master the art of using Linux and administering network services for enterprise environments

  • Perform hands-on activities to reinforce expert-level knowledge

  • Get full coverage of both the CentOS and Debian systems, including how networking concepts differ for each

  • Who This Book Is For

    Mastering Linux Network Administration is recommended for those who already understand the basics of using Linux and networking, and would like to push those skills to a higher level through real-world Linux networking scenarios. Whether you intend to run a home office consisting of Linux nodes or a rollout of a Linux network within your organization, this book is a great fit for those that desire to learn how to manage networked systems with the power of Linux.

    What You Will Learn

  • Install and configure the Debian and CentOS systems

  • Set up and configure file servers

  • Administer networked nodes remotely

  • Discover how to monitor system performance for peak health

  • Configure network services such as DNS and DHCP

  • Host HTTP content via Apache

  • Troubleshoot Linux networking issues

  • In Detail

    Linux is everywhere. Whether you run a home office, a small business, or manage enterprise systems, Linux can empower your network to perform at its very best. Armed with the advanced tools and best practice guidance of this practical guide, you'll be able to mold Linux networks to your will, empowering your systems and their users to take advantage of all that Linux-based networks have to offer.

    Understand how Linux networks function and get to grips with essential tips and tricks to manage them - whether you're already managing a networks, or even just starting out. With Debian and CentOS as its source, this book will divulge all the details you need to manage a real Linux-based network. With detailed activities and instructions based on real-world scenarios, this book will be your guide to the exciting world of Linux networking.

    Style and approach

    This practical guide will walk you through all the core concepts required to manage real Linux-based networks.

    Downloading the example code for this book. You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the code file.

    Table of Contents

    1. Mastering Linux Network Administration
      1. Table of Contents
      2. Mastering Linux Network Administration
      3. Credits
      4. About the Author
      5. About the Reviewers
      6. www.PacktPub.com
        1. Support files, eBooks, discount offers, and more
          1. Why subscribe?
          2. Free access for Packt account holders
      7. Preface
        1. What this book covers
        2. What you need for this book
        3. Who this book is for
        4. Conventions
        5. Reader feedback
        6. Customer support
          1. Downloading the example code
          2. Downloading the color images of this book
          3. Errata
          4. Piracy
          5. Questions
      8. 1. Setting up Your Environment
        1. Getting started
        2. Distributions to consider
        3. Physical machines versus virtual machines
        4. Setting up and configuring VirtualBox
          1. Acquiring VirtualBox
          2. Downloading and installing the Extension Pack
        5. Acquiring and installing Debian 8
        6. Acquiring and installing CentOS 7
        7. Summary
      9. 2. Revisiting Linux Network Basics
        1. Understanding the TCP/IP protocol suite
        2. Naming the network device
        3. Understanding Linux hostname resolution
        4. Understanding the net-tools and iproute2 suites
        5. Manually managing network interfaces
        6. Managing connections with Network Manager
        7. Summary
      10. 3. Communicating Between Nodes via SSH
        1. Using OpenSSH
        2. Installing and configuring OpenSSH
          1. Connecting to network hosts via openssh-client
        3. The OpenSSH config file
        4. Understanding and utilizing scp
          1. Transferring files to another node via scp
          2. Tunneling traffic via SSH
        5. Generating public keys
        6. Keeping SSH connections alive
        7. Exploring an alternative to SSH – utilizing Mosh (mobile shell)
        8. Summary
      11. 4. Setting up a File Server
        1. File server considerations
        2. NFS v3 versus NFS v4
          1. Setting up an NFS server
        3. Learning the basics of Samba
          1. Setting up a Samba server
        4. Mounting network shares
        5. Automatically mounting network shares via fstab and systemd
        6. Creating networked filesystems with SSHFS
        7. Summary
      12. 5. Monitoring System Resources
        1. Inspecting and managing processes
        2. Understanding load average
        3. Checking available memory
        4. Using shell-based resource monitors
        5. Scanning used storage
        6. Introduction to logging
        7. Maintaining log size with logrotate
        8. Understanding the systemd init system
        9. Understanding the systemd journal
        10. Summary
      13. 6. Configuring Network Services
        1. Planning your IP address layout
        2. Installing and configuring a DHCP server
        3. Installing and configuring a DNS server
        4. Setting up an internal NTP server
        5. Summary
      14. 7. Hosting HTTP Content via Apache
        1. Installing Apache
        2. Configuring Apache
        3. Adding modules
        4. Setting up virtual hosts
        5. Summary
      15. 8. Understanding Advanced Networking Concepts
        1. Dividing your network into subnets
        2. Understanding the CIDR notation
        3. Implementing Quality of Service
        4. Routing TCP/IP traffic
        5. Creating redundant DHCP and DNS servers
        6. Summary
      16. 9. Securing Your Network
        1. Limiting the attack surface
        2. Securing OpenSSH
        3. Configuring the iptables firewall
        4. Protecting system services with fail2ban
        5. Understanding SELinux
        6. Configuring Apache to utilize SSL
        7. Deploying security updates
        8. Summary
      17. 10. Troubleshooting Network Issues
        1. Tracing routing issues
        2. Troubleshooting DHCP issues
        3. Troubleshooting DNS issues
        4. Displaying connection statistics with netstat
        5. Scanning your network with Nmap and Zenmap
        6. Installing missing firmware on Debian systems
        7. Troubleshooting issues with Network Manager
        8. Summary
      18. Index