CS615 -- Aspects of System Administration

Course Overview:

In a networked environment, the need for a skilled system administrator has become increasingly obvious, but what exactly does a System Administrator do? Traditionally, the System Administrator's job has not had a precise definition; in some places they are referred to as Systems Engineers, Site Reliability Engineers, or perhaps Web Operations. Elsewhere, the boundaries between traditional "dev" and "ops" are being torn down, yielding a collaborative culture of "DevOps".

In this class, some of the most essential aspects of system administration and the rather broad skillset required in this profession will be covered, giving students the opportunity to develop the skills necessary to architect solutions for as well as analyze and troubleshoot problems arising in every day usage of complex networks and large-scale installations.

Some of the topics covered include: hardware configuration, operating system installation, shell programming, security policies, backup deployment and disaster recovery, network design, software installation and maintenance, and configuration management.

Students are expected to be comfortable operating in a UNIX-like environment on a user level and have a solid understanding of TCP/IP networking and Operating System concepts.

If you have questions about this class, please email jschauma@stevens.edu and (this is important to escape the spam filters) include "[CS615]" in the subject line.

Cloud Computing

In this class, we will make use of Amazon's Elastic Compute Cloud for all homework assignments; this will give students the chance to gain valuable experience in new technologies currently in high demand in the industry (cloud computing, IPv6) and also provide a possibility for students to gain superuser access to a number of operating systems otherwise not available at Stevens.


Time, Date & Place:

Spring 2015: Mondays, 18:15-20:45, McLean 106

Instructor:

Jan Schaumann [jschauma@stevens.edu]

Resources:


Textbooks:

This class does not have any strictly required textbooks. However, there are two books which are recommended, if only as a reference throughout the semester. These are:

Other suggested reading:

Grading:

There will (probably) be:
  • course participation
  • a number of homework assignments of varying complexity, possibly including, but not limited to: programming, OS installation, OS security, capture-the-flag-style cracking, security principles
  • a group project towards the end of the semester
  • some extracurricular activities
  • no curve
Letter grades will be given as follows:
  • 90% - 100% of total points => A
  • 80% - 89.99% => B
  • 70% - 79.99% => C
  • 0 - 69.99% points => F
Within each letter grade, there are +/- grades given at the discretion of the instructor. (Exception: there is no A+)

Plagiarism, Cheating and other ways to get an F

This really should not be necessary, but just to preempt any complains that I did not make myself clear:
Students are responsible for their own work. It is unethical (and in some cases illegal) to present as one's work the ideas, words or representations of another without the proper indication of the source. Therefore, it is the student's responsibility to give credit for any quotation, idea or data (such as statistical data or source code) borrowed from an outside source.

Failure to do so constitutes plagiarism, may imply copyright infringement and license violations and is viewed as cheating in this class, yielding a failing grade.

Homework Assignments:


Syllabus:

Lecture slides and other supporting material listed here is from the Spring 2014 semester and may be updated/changed throughout the Spring 2015 semester. Updated materials will be uploaded here after each class.
Date Topic Suggested Reading Material Course Material
2015-01-19 Martin Luther King Day -- No class
2015-01-26 Snowpocalypse -- No class
2015-02-02 Another Snow Day -- No class
2015-02-09 Introduction, Policies, Overview, UNIX history and basics Frisch: Preface
Nemeth et al: Chap. 1
Burgess: Chap. 1, 2, 14
Limoncelli & Hogan: Preface, 26
SAGE Job Descriptions for System Administrators
Pre-class questionnaire
Lecture 01 slides
HW#1
2015-02-16 President's Day -- No class
2015-02-17 Filesystems and Disks Frisch: Chap. 10
Nemeth et al: Chap. 5, 8
Note: Tuesday class!

Pre-class questionnaire
Lecture 02 slides
2015-02-23 Software Installation Concepts Limoncelli & Hogan: Chap. 23 (in first edition) or Chap. 28 (in second edition)
Burgess (Principles): Chap. 4.6 - 4.8
Frisch: Parts of Chap. 3
Pre-class questionnaire
Lecture 03 slides
boot sequences for different OS
Exercise: Package Management basics

HW#2
2015-02-25 Field trip to Peer1 Hosting
2015-03-02 Got root? Multi-user basics, politics, policies and ethics Frisch: Chap. 6
Burgess: Chap. 5
Nemeth et al: Chap. 3, 6, 27
Lecture 04 slides
System Administrators' Code of Ethics
Exercise: adding users
2015-03-09 Automating Administrative Tasks I / Shell Essentials Frisch: Chap. 14, Append. A
Nemeth et al: Chap. 9
Lecture 05 slides
HW#3: ifconfig output parsing
shell basics
2015-03-16 Spring Break -- No class
2015-03-23 Networking Frisch: Chap. 5
Nemeth et al: Chap. 13, 15, 20
Burgess: Chap. 3, 10
Limoncelli & Hogan: Chap. 18
Lecture 06 slides
HW#4: Traceroute Explained

telnet strace
EC2 script output
EC2 binary tcpdump output
tcpdump DNS lookup over IPv6
tcpdump DNS lookup over IPv4
tcpdump ping and traceroute
tcpdump TCP port 80 over IPv6
tcpdump TCP port 80 over IPv4
2015-03-30 Datacenter Design
Backup and Disaster Recovery
Frisch: Chap. 11
Nemeth et al: Chap. 10
Burgess: Chap. 12.1 - 12.4
Limoncelli & Hogan: Chap. 8, 21
SAGE Booklet: Backups and Recovery
Guest Lecturer: Doug Hughes (Periscope Replay)

Know a Unix Command: tar(1)
Lecture 07 slides (Periscope Replay)
HW#5: EC2 Backup
2015-04-06 Distributed Computing
DNS
Frisch: Chap. 9
Nemeth et al: Chap. 16, 19, 22
Burgess: Chap. 9
Limoncelli & Hogan: Chap. 19
Guest lecturer: Thomas A. Limoncelli
(video)

Lecture 08 slides
(video)
2015-04-13 SMTP, HTTP Frisch: Chap. 9
Nemeth et al: Chap. 16, 19, 22
Burgess: Chap. 9
Limoncelli & Hogan: Chap. 19
Lecture 09 slides
2015-04-20 High Performance Computing / Configuration Management with Chef   Guest lecturers:
Prentice Bisbal (video)
Julian C. Dunn (video)


2015-04-27 SSH, SNMP, Monitoring Frisch: Chap. 9
Nemeth et al: Chap. 16, 19, 22
Burgess: Chap. 9
Limoncelli & Hogan: Chap. 19
Guest Lecturer: Richard E. Silverman (video)
Lecture 10 slides
2015-05-04 System Security Frisch: Chap. 7
Nemeth et al: Chap. 21
Burgess: Chap. 11, 12
Limoncelli & Hogan: Chap. 7
Lecture 12 slides

Capture the Flag!

Misc. Topics are done based on interest and time available. They may also be used as a presentation topic. They include: cloud computing, virtualization, IPv6 migration, heterogenous networks / multiple OS, automated installation, server room basics, cooling issues, racking etc. clustering, spam...