Linux Essentials for Cybersecurity, 1st edition By William Rothwell
Email: Richard@qwconsultancy.com
INSTRUCTOR’S GUIDE TO ACCOMPANY LINUX ESSENTIALS FOR CYBERSECURITY CHAPTER 1 DISTRIBUTIONS AND KEY COMPONENTS CHAPTER OBJECTIVES When students have finished reading this chapter and completing the exercises, they will be able to do the following: • • • •
Describe the various parts of Linux Identify the major components that make up the Linux operating system Describe different types of Linux distributions Identify the steps for installing Linux
CHAPTER OVERVIEW In this first chapter, you learn about some of the essential concepts of Linux. You discover what a distribution is and how to pick a distribution that best suits your needs. You are also introduced to the process of installing Linux, both on a bare-metal system and in a virtual environment.
CHAPTER OUTLINE 1.
2.
Introducing Linux a. Linux Distributions b. Shells c. GUI Software Installing Linux a. Which Distro? b. Native or Virtual Machine? c. Installing a Distro
SUGGESTED CLASS STRUCTURE During class, lead a discussion of the chapter’s concepts using the PowerPoint presentation provided in the instructor materials. The PowerPoint slides provide some basic facts and topics, but you will want to supplement this information with information from the textbook and other resources and with stories from your own experience. End with the Key Terms review, the Review Questions quiz, and one or more of the corresponding lab exercises.
TEACHING NOTES AND TIPS PER TOPIC 1.
Introducing Linux
Teaching Note: This section introduces Linux by providing some basic information about its structure and interfaces. It includes a discussion of command-line shells and GUI interfaces. Review the descriptions of each component on page 5. Teaching Tip: Use Figure 1-1 as a starting point for discussing the components that make up Linux and their relationship to the kernel. Point out that not all the components in Figure 1-1 are essential. Teaching Tip: Differentiate between the common distribution types using the bulleted list on page 6, including commercial, home/amateur, security-enhanced, and live. Ask students to name some other types of distros. These could include education, young learners, beginners, gaming, and older computers. Teaching Note: Even though technically a shell can be any user interface, in Linux it typically refers to a command-line interface, or CLI. Some of the most popular shells are BASH and Bourne. Note that BASH is the shell used in this book in most cases. 2.
Installing Linux Teaching Note: This section guides students through the process of selecting a distro, deciding where to install it, and performing the installation. Teaching Tip: Note that many of the most popular distros fall into one of two categories: Red Hat-based or Debian-based. Ask students to name as many different distros in each of these categories as they can, making a list on the board. Teaching Tip: Discuss whether or not virtual machines are more secure than bare-metal installations. The Security Highlight box on page 9 brings up some points for conversation. Teaching Tip: If students are going to create VMs for multiple versions of Linux for this class, walk them through the process of setting up VirtualBox and installing their first VM; then have them create the additional VMs they need for this class on their own.
ACTIVITIES FOR CLASS I.
Discussion Topics Question 1: What are the advantages and disadvantages of a CLI? Answer 1: Advantages: more powerful, more commands and functions. Easier and quicker for experienced users. Can be more secure. Consumes fewer system resources. Disadvantages: Higher learning curve for newer users, not as enjoyable to use for most people. Question 2: When studying Linux, as you will do in this book, what are the pros and cons of using a VM vs a native installation? Answer 2: A VM may be a better choice for study because you can have several different distros and switch between them easily. However, if it is a very old computer without much CPU and RAM, the strain of running a hypervisor and a VM may make it run more slowly than if you installed Linux natively.
II.
Exercises and Activities Lab Exercises: Assign one or more of the following lab exercises: 1.1 Installing CentOS
1.2 Installing Ubuntu 1.3 Installing Kali Web Search Exercise: The textbook mentions that using a GUI can pose a security risk. Why is this so? One reason is that every time you add more software to the system, you add a potential security risk. Find some articles that discuss this topic and write a summary of the opinions and reasonings you discover. Review Key Terms: Review these terms from the chapter. If desired, you can create a matching exercise from these words, matching the terms to their definitions. • • • • • • • • • • •
Kernel Shell File system Kernel modules Libraries Distribution Distro CLI GUI Virtual machine VM
WEB RESOURCES DistroWatch: https://distrowatch.com VirtualBox: https://www.virtualbox.org CentOS download: https://www.centos.org/download Fedora download: https://getfedora.org Red Hat Enterprise Linux: https://www.redhat.com/en/technologies/linux-platforms/enterprise-linux Ubuntu download: https://ubuntu.com/download Kali download: https://www.kali.org/downloads Mint download: https://linuxmint.com/download.php Debian download: https://www.debian.org/distrib
uCertify If you are using the uCertify course and labs product, be sure to review the associated online labs for this chapter. Students can do these labs as homework or during class time for hands-on practice to reinforce core learning objectives.
INSTRUCTOR’S GUIDE TO ACCOMPANY LINUX ESSENTIALS FOR CYBERSECURITY CHAPTER 2 WORKING ON THE COMMAND LINE CHAPTER OBJECTIVES When students have finished reading this chapter and completing the exercises, they will be able to do the following: •
Manage files and directories
•
Use shell features such as shell variables
•
Be able to re-execute previous commands using the shell feature called history
•
Identify regular expressions and know how to use them with commands like find, grep, and sed
•
Manage file-compression utilities
CHAPTER OVERVIEW The goal of this chapter is to introduce you to some of the more essential command-line utilities. You learn commands used to manage files and directories, including how to view, copy, and delete files. You also learn the basics of a powerful feature called regular expressions, which allows you to view and modify files using patterns. This chapter introduces some of the more commonly used file-compression utilities, such as the tar and gzip utilities.
CHAPTER OUTLINE 1.
2.
File Management a. The Linux Filesystem b. Command Execution i. The pwd Command ii. The cd Command iii. The ls Command iv. File Globbing v. The file Command vi. The less Command vii. The head Command viii. The tail Command ix. The mkdir Command x. The cp Command xi. The mv Command xii. The rm Command xiii. The rmdir Command xiv. The touch Command Shell Features