Linux System and Network Administration

https://course.ucsc-extension.edu/modules/shop/index.html?action=section&OfferingID=5586985

Class Structure

Description

This is a foundation course on building and maintaining a server for Linux professionals and system administrators. The focus is on basic network configuration, networking services security, remote access configuration and administration of Linux server. The course covers system logging, inter-networking and services security, which are designed to help administrators ensure that their systems are secure. Students perform basic administrative tasks such as adding and managing users, creating and maintaining file systems, imposing a security policy, maintaining shell, installing and supporting network facilities such as NFS, DNS and DHCP. Instruction includes hands-on lab exercises.

By the end of this course, participants will be able to administer and manage networked services on Linux-based platforms in a business environment.

Learning Outcomes
At the conclusion of the course, you should be able to:

  • Master the Linux distributions/installation and package management
  • Describe how to configure and use Linux network capabilities
  • Explain Linux Network Security
  • Determine how to do data backup under Linux
  • Illustrate how to setup Web, NFS, SAMBA server service and print server
  • Create shell scripts and adapt them to manage servers

1. Introduction

  • VirtualBox and Debian/Ubuntu Installation
  • Review class structure
  • Operating System Fundamentals: Linux, Mac, POSIX, RTOS
  • Homework: Operating Systems and POSIX

2. CLI Tools

  • Introduction to all commands
    • Piping, redirecting etc.
  • Modern approach to "manpages"
  • SSH and password-less login
  • System Monitoring: top, df

3. Package Management

  • Standard Packages
  • Custom Packages (apt install)
  • Dependency management
  • Introduction to Ansible, Puppet or Chef

4. Networking

  • TCP/IP
  • UDP
  • DHCP
  • DNS
  • Firewall

5. Networking Hands-on

  • nc (netcat) tool
  • Wireshark tool
  • Experiment with UDP communication
  • Experiment with TCP communication
  • Homework: HTTP client using TCP/IP

6. Midterm

  • Review Questions
  • Feedback
  • Exam

7. Shell Scripting

  • History of Shell Scripts
  • Shells: ohmyzsh
  • Modern approach to shell scripts
    • Python
    • Ruby/Perl
  • Sample scripts

8. User Management and Security

  • Sudo
  • Create users and privileges
  • File Systems (FAT/NFS etc.)
  • Setup disk quotas

9. Setup Services

  • Web Server
  • File Servers
    • FTP
    • Samba
  • Database Servers
    • MySQL, NoSQL
  • System Backups
  • Bootloaders

10. Final Examination

  • Review Questions
  • Collect Feedback
  • Exam