Course Description

Course Number / CSCI 4113
Course Title / Unix System Administration
Semester Hours / 3
Course Coordinator / Chris Schenk
Course URL / http://www.cs.colorado.edu/courses/csci4113.html

Current Catalog Description

Introduces the internals of UNIX, trouble shooting system and network problems, hardware and software configuration and installation, and security aspects of hosts on the Internet. Offers students hands-on experience on dedicated laboratory workstations. Prereqs., CSCI 2270 or instructor consent. Recommended prereq., CSCI 3308.

Textbook

Linux Administration Handbook (2nd Edition) – Nemeth, Snyder, and Hein – Prentice Hall PTR, Nov. 9, 2006.

References

Many different web-based materials are used in the class to cover different topics (firewalls, DNS, email, etc) and are credited appropriately.

Instructors (for the last 3 years: Fall 2006 — Spring 2009)

Chris Schenk: Spring 2006 – Spring 2009

Meeting Times (Number and Duration of Sessions per Week)

9:30-10:45am Tues/Thurs

Course Outcomes

Upon completion of Unix System Administration, students will:

·  Be able to navigate a unix filesystem and gain a fluency in command-line utilities, editing key system files, and reading system log files and the ability to debug problems with this knowledge,

·  Know basic scripting in Bash, Perl and PHP and database interaction with MySQL,

·  Understand networking, security concepts, and ethics,

o  TCP/IP model network layers, NAT, packet types

o  Encryption, cryptographic hashes, message authentication codes, SSL, SSH

o  SQL Injection, SSH brute force attacks

o  Federal law and statues, monitoring and ethical use of tools and utilities

·  Understand essential system and network services and concepts therein with practical application:

o  DNS using BIND

o  Email using Postfix (SMTP) and Dovecot (IMAP)

o  Firewalling using Linux IPTables

o  Web server using Apache

o  User management with LDAP

Relationship between Course Outcomes and Program Outcomes

Outcomes / A.
Apply Knowledge / B.
Computing Requirements / C.
Design System / D.
Team Work / E.
Professional Issues / F.
Communicate Effectively
Outcome 1 / ü / ü / ü
Outcome 2 / ü / ü / ü / ü
Outcome 3 / ü / ü / ü / ü
Outcome 4 / ü / ü / ü / ü
Outcomes / G.
Analyze Impacts / H.
Professional Development / I.
Current Techniques / J.
Design Tradeoffs / K.
Design & Development
Outcome 1 / ü
Outcome 2 / ü / ü / ü
Outcome 3 / ü / ü / ü / ü
Outcome 4 / ü / ü / ü

Prerequisites by Topic

CSCI 2270: Computer Science 2: Data Structures

Major Topics Covered in the Course

·  System configuration, maintenance, analysis, debugging and forensics

·  Basic networking and data abstraction

·  General-purpose scripting and programming

·  Configuration of essential system and networking services

·  Analysis of security issues and pitfalls of bad design and configuration choices

Assessment Plan for the Course

Students work in groups of two. Labs and are assigned weekly to students which are due one week following and require the turn-in of a lab report. Small quizzes are given periodically in class. Take-home tests are given for more in-depth investigation of topics. All labs, quizzes, and exams are graded. Class participation is assessed through the use of the University of Colorado’s CUClicker system and counts toward a portion of the students’ final grades.

Topics in the course are assumed to be cumulative, and all labs, quizzes and exams review old material as well assess knowledge on new material.

How is Data from this Course used to Assess Program Outcomes?

The instructor retains copies of student labs, quizzes and exams rated as below average, average, and above average. These materials are reviewed by the department’s external advisory board for examples that demonstrate fulfillment of the program’s outcomes.

Curriculum Category Content (Semester Hours)

Area / Core / Advanced
Algorithms
Data Structures / 0.25
Computer Organization and Architecture / 1.75
Software Design / 0.75
Concepts of Programming Languages / 0.25