Unformatted text preview:

Course Outline for Computer Science 48CTOPICS IN LINUX SYSTEMS ADMINISTRATIONChabot College Fall 2002Removed Fall 2006Course Outline for Computer Science 48CTOPICS IN LINUX SYSTEMS ADMINISTRATIONCatalog Description: Computer Science 48C - Topics in Linux Systems Administration 2 unitsSelected topics in Linux systems and network administration. Managing users and groups, the helpdesk. Shell scripting and automating systems administration tasks, overview of perl, python, otherscripting tools. Configuring the kernel and tuning the system. Prerequisite: Computer Science 48Band Computer Science 14 (both completed with a grade of C or higher). 1.5 hours lecture, 1.5 hourslaboratory.Prerequisite Skills:Before entering the course the student should be able to:1. describe the TCP/IP layers and IP addressing (address classes, classless addresses,subnetting);2. describe basic networking devices (cards, cables, hubs, switches, types of media);3. configure an ethernet interface;4. describe the basic ideas in routing internet traffic;5. configure name services under Linux (DNS, BIND, NIS, others);6. configure sharable resources under Linux (print and file services);7. configure and use network monitoring tools properly;8. integrate Linux and Windows NT machines on one network;9. configure and run Samba;10. integrate Linux and other non-Windows-NT machines on one network;11. install and configure system services, and choose which services to offer;12. install and configure electronic mail systems;13. set up FTP and anonymous FTP on Linux machines, and discuss legal and security issues ofallowing files to be transferred onto and off from machines;14. install and configure the Apache Web server;15. set up Web server logging; and describe when logging is needed, as well as what type oflogging is needed;16. describe other Web servers (Squid, Roxen Challenger, Boa, others);17. set up and configure a news service and clients;18. set up and configure Internet telephony and conferencing;19. determine security needs for a system;20. describe the types of attacks an attacker may use against a computer;21. configure a system to protect against those attacks;22. describe a "good" password or "pass-phrase" and check on user's passwords;23. set up password and security policies for a system;24. set up the "standard" defenses against attackers;25. set up security monitoring;26. set up and configure a firewall under Linux;27. set up proxy services;28. configure the kernel to operate a firewall;29. build and operate a security administrator toolbox;30. recover from being hacked;31. follow the procedures used in the appropriate college computer laboratory to sign in and out,and to write, edit, compile, run and debug programs;32. demonstrate an elementary understanding of modern computational systems and their use;33. demonstrate an elementary understanding of what steps are involved in programdevelopment;34. use simple C++ data types in programs and understand how they are represented in themachine;Chabot College Page 2Course Outline for Computer Science 48CTopics in Linux Systems AdministrationFall Semester 2002Prerequisite Skills: continued35. form C++ expressions using selected operators, and understand the rules of precedenceused in their evaluation;36. use the structured programming constructs: sequence, selection and iteration;37. perform elementary interactive input and output operations;38. code void and value-returning functions with value and reference parameters and use themin a program;39. define and use the structured C++ data types: array, string, struct in applications drawn frommathematics, the sciences, and other areas;40. use text files to record and retrieve information in elementary applications;41. produce well-documented, user-friendly programs of short to medium length.Expected Outcomes for Students:Upon completion of the course the student should be able to:1. manage users and groups, add users to the system, grant permissions to users;2. delete a user account, and know when to do so;3. demonstrate effective use of groups to manage different types of users;4. demonstrate effective interaction with users;5. write shell scripts for the bash and tcsh shells to automate system administration tasks;6. write perl scripts to automate system administration tasks;7. demonstrate the effective use of other shell languages (e.g., python) in a limited manner, and beaware of compiler-based programming tools under Linux;8. demonstrate effective use of the cron daemon to schedule maintenance tasks, and debug cronjobs;9. tune the behavior of the Linux kernel, if needed in a particular environment.Course Content:1. Users and groupsa. Adding users to the systemb. Granting permissions to usersc. Establishing groupsd. The /etc/passwd, /etc/group, /etc/shadow and /etc/gshadow filese. Adding and deleting user accounts, when to delete an accountf. Using groups effectivelyg. Group permissionsh. The newgrp command and other user and group commands2. Dealing with usersa. Establishing system and user policiesb. Training usersc. Developing a help desk, using WREQ to manage the desk3. Shellsa. Overview of Linux shellsb. Wildcards, aliases, command-line completionc. Pipes and I/O redirectiond. Command history, command-line editinge. Job controlf. Quoting with \ ' and "g. Shell variablesChabot College Page 3Course Outline for Computer Science 48CTopics in Linux Systems AdministrationFall Semester 2002Course Content (continued):4. Shell scriptinga. The bash shell and scriptingb. Using perlc. Other scripting languagesd. Brief overview of programming tools (e.g., C, C++ and Java -- optional)5. Automating administration tasksa. Types of tasks to automate -- one-time tasks and regular tasksb. Using the 'at' utility for one-time jobsc. Using the 'cron' utility for regularly scheduled jobs6. Tuning Linuxa. What can be tuned: the CPU, I/O, RAM paging and related disk I/Ob. Bottlenecks, finding them, local (in the machine) and remote (network) bottlenecksc. Costs and benefits of tuningd. Measuring performance, both locally and on the networke. RAM and swap spacef. Tuning the kernel in /proc7. Customizing the kernel (optional as time permits)a. Overview of kernel source, where you can get itb. Patching the kernel sourcec. Kernel loadable modulesd. Building customized kernels8. Hacking (optional as time permits)a. Basic hacking methodsb. Overview of hacking


View Full Document

Chabot CSCI 48C - Course Outline

Download Course Outline
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Course Outline and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Course Outline 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?