CEN 223 Unix Operating System & Networks

A complete coverage of the UNIX operating system, including shells, utilities, x-windows, and networking.

Credits

4

Prerequisite

Prerequisite: CEN 222

See Course Syllabus

Course Number and Title:

CEN 223 Unix Operating System & Networks

Campus Location

  • Dover

Prerequisites

Prerequisite: CEN 222

Course Credits and Hours

4 credit(s)

3 lecture hours/week

2 lab hours/week

Course Description

A complete coverage of the UNIX operating system, including shells, utilities, x-windows, and networking.

Additional Materials

USB flash drive for lab work and broadband internet access

Required Text(s)

Obtain current textbook information by viewing the campus bookstore - https://www.dtcc.edu/bookstores online or visit a campus bookstore. Check your course schedule for the course number and section.

Core Course Performance Objectives (CCPOs)

  1. Demonstrate an understanding of Linux, including hardware and environmental considerations for server design, installing popular server-grade distributions, installing and managing software from prepackaged binaries and source code, installing and managing software popular package managers, compiling from source code and installing GNU software, and the characteristics of open source software and public licenses. (CCC 1, 2, 3, 5, 6; PGC 1, 2, 3)
  2. Demonstrate how to perform single-host administration, including managing users, the Unix/Linux command line and utilities, booting and shutting down including boot loaders, file systems, core system services, compiling the Linux kernel, and managing the /proc directory and the SysFS. (CCC 1, 2, 3, 5, 6; PGC 1, 2, 3)
  3. Demonstrate an understanding of Linux security and networking, including TCP/IP for system administrators, configuration of modules and network interfaces, Linux firewall (Netfilter), mitigating risks and hardening local system security, and TCP/IP and network security and tools. (CCC 1, 2, 3, 5, 6; PGC 1, 2, 3)
  4. Demonstrate an understanding of Internet Services, including the mechanics of and installing and configuring of domain name system DNS services, file transfer protocol (FTP) services, Apache web server, simple mail transfer protocol (SMTP) and Postfix mail services, internet message access protocol (IMAP) and post office protocol (POP) mail services, and public key cryptography and secure shell (SSH) and utilities. (CCC 1, 2, 3, 5, 6; PGC 1, 2, 3)
  5. Demonstrate an understanding of Intranet services, including the mechanics of and installing and configuring of network file system (NFS) services, network information system (NIS) services, sever message block (SMB) services, lightweight directory application protocol (LDAP) services, network printing (CUPS) services, dynamic host configuration protocol (DHCP) services, Linux virtualization services and guests, and backup services. (CCC 1, 2, 3, 5, 6; PGC 1, 2, 3)
  6. Demonstrate the theoretical and practical knowledge necessary to successfully take the current CompTIA Linux+ (LX0-101 and LX0-102) and the Linux Professional Institute Junior Level Administration (LPIC-1) and Advanced Level Administration (LPIC-2) certification examinations. (CCC 1, 2, 5, 6; PGC 1, 5)

See Core Curriculum Competencies and Program Graduate Competencies at the end of the syllabus. CCPOs are linked to every competency they develop.

Measurable Performance Objectives (MPOs)

Upon completion of this course, the student will:

  1. Demonstrate an understanding of Linux, including hardware and environmental considerations for server design, installing popular server-grade distributions, installing and managing software from prepackaged binaries and source code, installing and managing software popular package managers, compiling from source code and installing GNU software, and the characteristics of open source software and public licenses.
    1. Demonstrate an understanding of the hardware and environmental considerations for server design.
    2. Demonstrate installing server-grade Fedora and Ubuntu Linux distributions.
    3. Demonstrate installing and managing software installed from prepackaged binaries and source code.
    4. Demonstrate an understanding of what is open source software and public licenses.
    5. Demonstrate an understanding of the differences between Microsoft Windows and Linux operating systems.
    6. Demonstrate installing and managing software using the Debian and RPM package manager.
    7. Demonstrate compiling from source code, build and install GNU software.
  2. Demonstrate how to perform single-host administration, including managing users, the Unix/Linux command line and utilities, booting and shutting down including boot loaders, file systems, core system services, compiling the Linux kernel, and managing the /proc directory and the SysFS.
    1. Demonstrate an understanding of what constitutes a user and where user information is located.
    2. Demonstrate an understanding of user management including creating, managing, and deleting users using command-line utilities and GUI tools.
    3. Demonstrate a fundamental understanding of the pluggable authentication modules (PAM), including configuring and troubleshooting.
    4. Demonstrate a fundamental understanding of the Unix/Linux command line and utilities.
    5. Demonstrate a fundamental understanding of the Bash shell including job control, environment variables, pipes, and redirection.
    6. Demonstrate a fundamental understanding of the shell command-line shortcuts including filename expansion, environment variables as parameters, multiple commands, and backticks.
    7. Demonstrate a fundamental understanding of the shell command-line document tools including the man command and textinfo system.
    8. Demonstrate an understanding of files, file types, file ownership, and file permissions, including normal files, directories, hard and symbolic links, block devices, character devices, named pipes, change ownership (chown), change group (chgrp), and change mode (chmod).
    9. Demonstrate an understanding of file management and manipulation including copy files (cp), move files (mv), link files (ln), find a file (find), file compression (gzip and bzip2), create a directory (mkdir), remove a directory (rmdir), show present working directory (pwd), tape archive (tar), concatenate files (cat), display a file one screen at a time (more), disk utilization (du), show the directory location of a file (which), locate a command (whereis), disk free (df), and synchronize disks (sync).
    10. Demonstrate an understanding of manipulating processes, including listing processes (ps), show an interactive list of processes (top), and send a signal to a process (kill).
    11. Demonstrate an understanding of Unix/Linux editors, including vi/vim, emacs, joe, and pico/nano.
    12. Demonstrate an understanding of booting and shutting down, including boot loaders, GRUB, LILO, and bootstrapping.
    13. Demonstrate an understanding of the init process, including using and writing rc scripts.
    14. Demonstrate an understanding of enabling and disabling services.
    15. Demonstrate an understanding of booting and shutting down related utilities, including fsck, and booting into single-user (recovery) mode.
    16. Demonstrate an understanding of the makeup of Linux file systems including i- nodes, superblocks, ext3 and ext4 and ReiserFS.
    17. Demonstrate an understanding of managing Linux file systems, including mounting and unmounting local disks and using fsck.
    18. Demonstrate an understanding of adding a new disk, including partitions, traditional disk- and partition-naming conventions, volume management, creating partitions and logical volumes, and creating file systems.
    19. Demonstrate an understanding of the Linux core system services.
    20. Demonstrate an understanding of the init daemon, including upstart (die init and die now) and the /etc/inittab file.
    21. Demonstrate an understanding of xinetd and inetd, including the /etc/xinetd.conf file, creating a simple service entry, and enabling/disabling a service.
    22. Demonstrate an understanding of the logging daemon, including invoking rsyslogd.
    23. Demonstrate configuring the logging daemon including log message classifications and format of /etc/rsyslog.conf.
    24. Demonstrate configuring the cron program, including the crontab file and editing the crontab file.
    25. Demonstrate an understanding of functionality of the Linux kernel.
    26. Demonstrate locating the kernel source code including obtaining the correct kernel version and unpacking the kernel source code.
    27. Demonstrate building the kernel, including preparing to configure the kernel, kernel configuration, compiling the kernel, installing the kernel, and booting the kernel.
    28. Demonstrate patching the kernel including downloading and applying patches.
    29. Demonstrate an understanding of what is inside the /proc directory and how to configure files inside of /proc to improve server performance and reliability.
    30. Demonstrate an understanding of the virtual file system Sysfs including how to manage and configure Sysfs.
  3. Demonstrate an understanding of Linux security and networking, including TCP/IP for system administrators, configuration of modules and network interfaces, Linux firewall (Netfilter), mitigating risks and hardening local system security, and TCP/IP and network security and tools.
    1. Demonstrate an understanding of the Internet suite of protocols (TCP/IP) and open system interconnect (OSI) model.
    2. Demonstrate an understanding and the use of TCP/IP related tools such as ARP.
    3. Demonstrate an understanding and application of subnetting, masks, static and dynamic routing.
    4. Demonstrate an understanding and application of IPv4 and IPv6 addresses.
    5. Demonstrate an understanding and configuration of networking modules and simple routing.
    6. Demonstrate an understanding and configuration of Linux firewalls.
    7. Perform an installation and configuration of Netfilter.
    8. Demonstrate an understanding and configuration of local host security using best practices.
    9. Demonstrate an understanding of common sources of risk and how to monitor a local host using best practices.
    10. Demonstrate an understanding of network security and how to harden network assets using best practices.
    11. Demonstrate how to monitor network assets using best practices and tools such as nmap, tcpdump, and Wireshark.
  4. Demonstrate an understanding of Internet Services, including the mechanics of and installing and configuring of domain name system DNS services, file transfer protocol (FTP) services, Apache web server, simple mail transfer protocol (SMTP) and Postfix mail services, internet message access protocol (IMAP) and post office protocol (POP) mail services, and public key cryptography and secure shell (SSH) and utilities.
    1. Demonstrate an understanding of DNS.
    2. Perform an installation and configuration of a DNS server and clients including the BIND database.
    3. Demonstrate an understanding of FTP.
    4. Perform an installation and configuration of a vsftpd server and clients.
    5. Demonstrate an understanding of Apache web server.
    6. Perform an installation and configuration of a Apache web server.
    7. Demonstrate an understanding of SMTP and Postfix mail services.
    8. Perform an installation and configuration of SMTP and Postfix mail services.
    9. Demonstrate an understanding of IMAP and POP mail services.
    10. Perform an installation and configuration of UW-IMAP and POPv3 mail services.
    11. Demonstrate an understanding of SSH.
    12. Perform an installation and configuration of OpenSSH server and client and use secure utilities to copy files.
  5. Demonstrate an understanding of Intranet services, including the mechanics of and installing and configuring of network file system (NFS) services, network information system (NIS) services, sever message block (SMB) services, lightweight directory application protocol (LDAP) services, network printing (CUPS) services, dynamic host configuration protocol (DHCP) services, Linux virtualization services and guests, and backup services.
    1. Demonstrate an understanding of NFS services.
    2. Perform an installation and configuration of NFS server and client.
    3. Demonstrate an understanding of NIS services.
    4. Perform an installation and configuration of NIS server and client.
    5. Demonstrate an understanding of SMB services.
    6. Perform an installation and configuration of SAMBA server and client.
    7. Demonstrate an understanding of LDAP services.
    8. Perform an installation and configuration of OpenLDAP server and client.
    9. Demonstrate an understanding of CUPS services.
    10. Perform an installation and configuration of CUPS server and client.
    11. Demonstrate an understanding of DHCP services.
    12. Perform an installation and configuration of DHCP server and client.
    13. Demonstrate an understanding of virtualization services.
    14. Perform an installation and configuration of virtualization hosts and guests.
    15. Demonstrate an understanding of backup services.
    16. Perform an installation and configuration of backup server and client.
  6. Demonstrate the theoretical and practical knowledge necessary to successfully take the current CompTIA Linux+ (LX0-101 and LX0-102) and the Linux Professional Institute Junior Level Administration (LPIC-1) and Advanced Level Administration (LPIC-2) certification examinations.
    1. Demonstrate an understanding of the exam's design and scoring criteria.
    2. Demonstrate an acceptable score using approved test simulation and practice software.

Evaluation Criteria/Policies

The grade will be determined using the Delaware Tech grading system:

90-100 = A
80-89 = B
70-79 = C
0-69 = F
Students should refer to the Catalog/Student Handbook for information on the Academic Standing Policy, the Academic Integrity Policy, Student Rights and Responsibilities, and other policies relevant to their academic progress.

Program Graduate Competencies (PGCs are the competencies every graduate will develop specific to his or her major)

  1. Apply techniques, skills and usage of modern tools of a Computer Network Engineering Technician.
  2. Apply analysis tools and problem-solving methods learned in the mathematics, sciences and electrical/electronics courses to conduct, interpret and analyze experiments.
  3. Use critical thinking in the design or improvement of quality systems, components or processes.
  4. Employ oral and written communication techniques as an integral member of a multidisciplinary work team.
  5. Adhere to professional, ethical, and social issues in a diverse workplace.
  6. Perform basic management and leadership skills, which will include time management and organization in the Computer Engineering Technology.

Core Curriculum Competencies (CCCs are the competencies every graduate will develop)

  1. Apply clear and effective communication skills.
  2. Use critical thinking to solve problems.
  3. Collaborate to achieve a common goal.
  4. Demonstrate professional and ethical conduct.
  5. Use information literacy for effective vocational and/or academic research.
  6. Apply quantitative reasoning and/or scientific inquiry to solve practical problems.

Students in Need of Accommodations Due to a Disability

We value all individuals and provide an inclusive environment that fosters equity and student success. The College is committed to providing reasonable accommodations for students with disabilities. Students are encouraged to schedule an appointment with the campus Disabilities Support Counselor to request an accommodation needed due to a disability. The College's policy on accommodations for persons with disabilities can be found in the College's Guide to Requesting Academic Accommodations and/or Auxiliary Aids Students may also access the Guide and contact information for Disabilities Support Counselors through the Student Resources web page under Disabilities Support Services, or visit the campus Advising Center.

Minimum Technology Requirements

Minimum technology requirements for online, hybrid, video conferencing and web conferencing courses.