Chapter 1: Distributions and Key Components
• Distro Watch (www.distrowatch.com) Reviews Linux distributions, keeps track of which distros are popular, and provides links to distribution web sites.
• What is Linux? (https://www.linux.com/what-is-linux) A tutorial that provides useful information about the components that make up the Linux OS.
• Techradar Pro (https://www.techradar.com/news/best-linux-distro) Evaluation of several distributions to aid in user selection.
• Linux.com (https://www.linux.com/blog/learn/intro-to-linux/2018/1/best-linux-distributions-2018) Identifies the “best” Linux distributions for 2018.
• Penguin Tutor (http://www.penguintutor.com/linux/basic-shell-reference) Linux basic shell reference guide.
Chapter 2: Working on the Command Line
• FOSSBYTES (https://fossbytes.com/a-z-list-linux-command-line-reference/) A huge list of Linux commands with a brief summary of each command.
• Regular Expressions Tutorial (https://www.regular-expressions.info/tutorial.html) A tutorial for regular expressions.
• RegExr (https://regexr.com/) A regular expression testing tool.
• Regex Crossword (https://regexcrossword.com/) A regular expression game.
Chapter 3: Getting Help
• die.net (https://linux.die.net/man/) Linux man pages available online. Sometimes easier to search for or filter the command help you are searching for.
• The Linux Documentation Project (https://www.tldp.org/) A variety of Linux documents, how-to’s, and guides. Although some of these guides are out of date, there are some very good resources as well. The “Advanced Bash-Scripting Guide” is a great reference.
• Linux Forums (http://www.linuxforums.org) A place where you can ask questions and experienced Linux users will provide answers.
• GNU Software Foundation (https://www.gnu.org/software/gzip/manual/gzip.html) An excellent user guide for GNU software.
• How-To Geek (https://www.howtogeek.com/108890/how-to-get-help-with-a-command-from-the-linux-terminal-8-tricks-for-beginners-pros-alike/) Tips for beginners and pros to find help with the Linux terminal.
• Computer Hope (https://www.computerhope.com/unix/uhelp.htm) Linux help command in depth.
• Linux.com (https://www.linux.com/learn/intro-to-linux/2017/10/3-tools-help-you-remember-linux-commands) Three tools to help you remember Linux commands.
Chapter 4: Editing Files
• The vi Lovers Home Page (http://thomer.com/vi/vi.html) A source for vi and vim manuals, tutorials and cheat sheets.
• Vi Reference Card (https://pangea.stanford.edu/computing/unix/editing/viquickref.pdf) A printable reference card for using vi editor.
• Glaciated (http://glaciated.org/vi/) A no-frills reference to the commands in vi.
• GNU Emacs Manuals Online (https://www.gnu.org/software/emacs/manual/) A series of emacs user guides.
• gedit Text Editor (https://help.gnome.org/users/gedit/stable/) Documentation for the gedit editor.
• The KWrite Handbook (https://docs.kde.org/trunk5/en/applications/kwrite/index.html) Documentation for the kwrite editor.
• Joe’s Own Editor (https://joe-editor.sourceforge.io/4.5/man.html) The primary site for the joe editor.
Chapter 5: When Things Go Wrong
• Bugzilla (www.bugzilla.org) A site that is used to track issues or problems on your systems.
Chapter 6: Managing Group Accounts
• Arch Linux (Users and Groups; https://wiki.archlinux.org/index.php/users_and_groups) A good overview of Linux users and groups.
• linode (Linux Users and Groups; https://www.linode.com/docs/tools-reference/linux-users-and-groups/) A good article that covers accounts and basic permissions.
• User Private Groups (https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/4/html/Reference_Guide/s1-users-groups-private-groups.html) A discussion about user private groups (UPGs).
• YoLinux (http://www.yolinux.com/TUTORIALS/LinuxTutorialManagingGroups.html) Managing group access.
Chapter 7: Managing User Account
• Arch Linux (Users and Groups; https://wiki.archlinux.org/index.php/users_and_groups) A good overview of Linux users and groups.
• linode (Linux Users and Groups; https://www.linode.com/docs/tools-reference/linux-users-and-groups/) A good article that covers accounts and basic permissions.
• The Linux-PAM Guides (http://www.linux-pam.org/Linux-PAM-html/) Documentation for Pluggable Authentication Modules.
• YoLinux (http://www.yolinux.com/TUTORIALS/LinuxTutorialManagingGroups.html) Managing group access.
Chapter 8: Develop an Account Security Policy
• Ubuntu (User Management; https://help.ubuntu.com/lts/serverguide/user-management.html) Contains some essential security considerations for user and group accounts.
• UpCloud (Managing Linux User Account Security; https://www.upcloud.com/support/managing-linux-user-account-security/) A good tutorial that includes some key security policies and features.
• Sans.org (https://www.sans.org/reading-room/whitepapers/policyissues/preparation-guide-information-security-policies-503) A preparation guide to information security policies.
Chapter 9: File Permissions
• Archlinux (File permissions and attributes; https://wiki.archlinux.org/index.php/File_permissions_and_attributes) A good overview of Linux permissions.
• SELinux (https://wiki.centos.org/HowTos/SELinux) A how-to guide on SELinux.
Chapter 10: Manage Local Storage: Essentials
• Archlinux (File systems; https://wiki.archlinux.org/index.php/file_systems) A good overview of Linux file systems.
• Archlinux (Partitioning; https://wiki.archlinux.org/index.php/partitioning) A guide on Linux partitions.
• An Introduction to Storage Terminology and Concepts in Linux (https://www.digitalocean.com/community/tutorials/an-introduction-to-storage-terminology-and-concepts-in-linux) Article on Linux storage devices.
• An introduction to Linux filesystems (https://opensource.com/life/16/10/introduction-linux-filesystems) An article on Linux filesystems.
• Learn IT Guide (http://www.learnitguide.net/2016/05/disk-management-in-linux-basic-concepts.html) Disk management in Linux; understanding basic concepts.
Chapter 11: Manage Local Storage: Advanced Features
• How to Add a New Disk to an Existing Linux Server (https://www.tecmint.com/add-new-disk-to-an-existing-linux/) A quick step-by-step guide.
• A Beginner’s Guide to LVM (https://www.howtoforge.com/linux_lvm) A quick guide to logical volume management.
• Funtoo (https://www.funtoo.org/Learning_Linux_LVM,_Part_1) Learning Linux logical volume management.
Chapter 12: Manage Network Storage
• Samba Documentation (https://www.samba.org/samba/docs/) The main website for Samba documentation.
• Network File System (NFS; https://help.ubuntu.com/lts/serverguide/network-file-system.html) User guide for NFS on Ubuntu.
• iSCSI Storage: A Beginner’s Guide (http://blog.open-e.com/iscsi-storage-a-beginners-guide/) A good overview of iSCSI.
• FreeNAS (http://www.freenas.org/) Download and documentation.
Chapter 13: Develop a Storage Security Policy
• Linux Backup Types and Tools Explored (https://blog.storagecraft.com/linux-backup-types-tools-explored/) Describes different backup types and available tools.
• Sans.org (https://www.sans.org/reading-room/whitepapers/policyissues/preparation-guide-information-security-policies-503) A preparation guide to information security policies.
Chapter 14: Crontab and At
• Linux Cron Guide (https://linuxconfig.org/linux-cron-guide) A guide for using and administering cron.
• CronHowto (https://help.ubuntu.com/community/CronHowto) A how-to guide for cron on Ubuntu.
• Admin’s Choice (http://www.adminschoice.com/crontab-quick-reference) Crontab quick reference.
• Computer Hope (https://www.computerhope.com/unix/ucrontab.htm) Linux crontab command.
Chapter 15: Scripting
• Advanced Bash-Scripting Guide (http://tldp.org/LDP/abs/html/) A great guide for scripting.
• Linux Command (http://linuxcommand.org/lc3_resources.php) A collection of tools, tips, and templates for BASH shell scripts.
• TechMint (https://www.tecmint.com/command-line-tools-to-monitor-linux-performance/) Twenty command-line tools to monitor Linux performance.
• Make Tech Easier (https://www.maketecheasier.com/online-resources-for-learning-the-command-line/) A collection of online resources for learning the command line.
Chapter 16: Common Automation Tasks
• Singer’sScripts (ftp://ftp.cs.duke.edu/pub/des/scripts/INDEX.html) A collection of useful scripts.
• John Chambers’ directory of useful tools (http://trillian.mit.edu/~jc/sh/) A collection of useful scripts.
• Cameron Simpson’s Scripts (https://cskk.ezoshosting.com/cs/css/) A collection of useful scripts.
• Carlos J. G. Duarte’s Scripts (http://cgd.sdf-eu.org/a_scripts.html) A collection of useful scripts.
• Linux Academy (https://linuxacademy.com/howtoguides/posts/show/topic/14343-automating-common-tasks-with-scripts) Automating common tasks with scripts.
• Tec Mint (https://www.tecmint.com/using-shell-script-to-automate-linux-system-maintenance-tasks/) Using shell scripts to automate Linux system maintenance.
Chapter 17: Develop an Automation Security Policy
• Google’s Shell Style Guide (https://google.github.io/styleguide/shell.xml) A good guide to show you how to style your scripts.
• Sans.org (https://www.sans.org/reading-room/whitepapers/policyissues/preparation-guide-information-security-policies-503) A preparation guide to information security policies.
Chapter 18: Networking Basics
• Request For Comments (https://www.rfc-editor.org) Description of RFCs.
• Subnet calculator (https://www.adminsub.net/ipv4-subnet-calculator) A subnet calculator.
• The Internet Protocol Stack (https://www.w3.org/People/Frystyk/thesis/TcpIp.html) A description of the primary protocols.
• Commotion (https://commotionwireless.net/docs/cck/networking/learn-networking-basics/) Learning network basics.
Chapter 19: Network Configuration
• Network setup (https://www.debian.org/doc/manuals/debian-reference/ch05) A guide for setting up networking on Debian-based systems.
• Configure IP Networking (https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/ch-configure_ip_networking) A guide for setting up networking on Red Hat–based systems.
• Open Source (https://opensource.com/life/16/6/how-configure-networking-linux) How to configure networking in Linux.
Chapter 20: Network Service Configuration: Essential Services
• The BIND 9 Administrator Reference Manuals (https://www.isc.org/downloads/bind/doc/) The main website for BIND documentation.
• Postfix Documentation (http://www.postfix.org/documentation.html) The main website for Postfix documentation.
• Procmail Documentation Project (http://pm-doc.sourceforge.net/) Provides links to Procmail documentation.
• Dovecot Documentation (https://www.dovecot.org/documentation.html) The main website for Dovecot documentation.
• Linode (https://www.linode.com/docs/tools-reference/linux-system-administration-basics/) Linux administration basics.
Chapter 21: Network Service Configuration: Web Services
• Apache HTTP Server Documentation (https://httpd.apache.org/docs/) The main website for Apache HTTP documentation.
• Squid Documentation (http://www.squid-cache.org/Doc/) The primary website for Squid Proxy server documentation.
• Digital Ocean (https://www.digitalocean.com/community/tutorials/how-to-configure-the-apache-web-server-on-an-ubuntu-or-debian-vps) How to configure Apache Web Server on an Ubuntu or Debian VPS.
• Apache HTTP Server project (https://httpd.apache.org/docs/trunk/getting-started.html) A “getting started” tutorial.
Chapter 22: Connecting to Remote Systems
• Open LDAP documentation (http://www.openldap.org/doc/) The primary website for Open LDAP documentation.
• vsftpd (https://help.ubuntu.com/community/vsftpd) Ubuntu’s documentation page for the vsftpd server.
• Open SSH (https://www.openssh.com/) The main web page for the Open SSH project.
• Colorado State University (https://www.engr.colostate.edu/ens/how/connect/serverlogin-linux.html) How to connect to a remote Linux server.
Chapter 23: Develop a Network Security Policy
• Kernel parameters (https://www.kernel.org/doc/Documentation/admin-guide/kernel-parameters.txt) A text document that provides a list of kernel parameters along with brief descriptions.
• TCP Wrappers (https://www.centos.org/docs/5/html/Deployment_Guide-en-US/ch-tcpwrappers.html) A tutorial on how to implement TCP Wrappers and xinetd. Was created for CentOS 5, but content is still valid.
• NTP documentation (http://www.ntp.org/documentation.html) The main site for all documentation related to the Network Time Protocol.
• Sans.org (https://www.sans.org/reading-room/whitepapers/policyissues/preparation-guide-information-security-policies-503) A preparation guide to information security policies.
Chapter 24: Process Control
• How to Manage Processes from the Linux Terminal: 10 Commands You Need to Know (https://www.howtogeek.com/107217/how-to-manage-processes-from-the-linux-terminal-10-commands-you-need-to-know/) An introduction to processes on Linux.
• 30 Useful ‘ps Command’ Examples for Linux Process Monitoring (https://www.tecmint.com/ps-command-examples-for-linux-process-monitoring/) An article that provides more details about using the ps command.
• Geeks for geeks (https://www.geeksforgeeks.org/process-control-commands-unixlinux/) Process control commands in Unix and Linux.
Chapter 25: System Logging
• Overview of Syslog (https://www.gnu.org/software/libc/manual/html_node/Overview-of-Syslog.html) Syslog essentials.
• systemd-journald.service (https://www.freedesktop.org/software/systemd/man/systemd-journald.service.html) Describes the journald service.
• Tutorials Point (https://www.tutorialspoint.com/unix/unix-system-logging.htm) Unix and Linux system logging.
Chapter 26: Red Hat–Based Software Management
• Installing and Managing Software (https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_guide/part-installing_and_managing_software) The official Red Hat manual for installing and managing software.
Chapter 27: Debian-Based Software Management
• DebianPackageManagement (https://wiki.debian.org/DebianPackageManagement) A resource for managing packages on Debian-based systems.
Chapter 28: System Booting
• Kernel documentation (https://www.kernel.org/doc) A source for information about kernel parameters used during the boot process.
• GRUB Documentation (https://www.gnu.org/software/grub/grub-documentation.html) Official GRUB documentation.
• systemd System and Service Manager (https://www.freedesktop.org/wiki/Software/systemd/) A page that contains links to many useful resources for systemd.
Chapter 29: Develop a Software Management Security Policy
• Common Vulnerabilities and Exposures (CVE; http://cve.mitre.org) A system designed to provide a single location where you can learn about security-related software issues.
• Red Hat Security Advisories (https://access.redhat.com/security/updates/advisory) Site that provides information from Red Hat about security issues.
• Sans.org (https://www.sans.org/reading-room/whitepapers/policyissues/preparation-guide-information-security-policies-503) A preparation guide for information security policies.
Chapter 30: Footprinting
• Nmap documentation (https://nmap.org/docs.html) A reference that provides a lot of uses of the nmap utility.
• Ehacking (https://www.ehacking.net/2011/03/footprinting-information-gathering.html) Footprinting and information-gathering tutorial.
• Nmap (https://nmap.org/) Free network scanner nmap.
Chapter 31: Firewalls
• Archlinux (iptables; https://wiki.archlinux.org/index.php/iptables) A guide for configuring iptables.
• TecMint (https://www.tecmint.com/open-source-security-firewalls-for-linux-systems/) Ten useful open source firewalls for Linux.
Chapter 32: Intrusion Detection Systems
• The Best Open Source Network Intrusion Detection Tools (https://opensourceforu.com/2017/04/best-open-source-network-intrusion-detection-tools/) An article that provides an overview of intrusion detection as well as descriptions of several tools.
• SNORT (https://www.snort.org) Snort free download and documentation.
Chapter 33: Additional Security Tasks
• BugTraq (www.securityfocus.com) This service is an email-based program that is sponsored by Security Focus.
• Computer Emergency Response Teams (www.cert.org) Provides a variety of features, including vulnerability analysis tools, a knowledgebase of vulnerability notes, and coordination with private and governmental organizations regarding security issues.
• US-CERT (www.us-cert.gov) U.S.-specific CERT.