Syllabus

IS624 Web Servers & System Software

Winter 2005

Professor Asad Khailany, D. Sc.

Prerequisites: IS 510             Credit Hours: 3          CRN:22313-200520   Section # : 0   

Meeting Days: Monday & Wednesday                      Time:  5:00 PM - 6:10 PM     Room: 102 Owen

Office: 501 Owen       Office Phone: (734) 487 4339            CIS Department Phone: (734) 487 2454

Office hours:

            Monday:         11:15 AM - 2:30 PM ;

Wednesday:   11:15 AM - 2:30 PM & 5:45 PM to 6:30PM

            Six hours by appointment.

Texts:

Following textbooks are recommended:

1.  Unix System Administrator's Edition   
 
               
Publisher: SAMS publishing ISBN: 0-672-30952-1
Authors: Robin Burk and David Horvath, CCp, et al
 
  2.PERRL HOW TO 
      PROGRAM 
Introducing CGI and Python 
      Publisher: Prentice Hall - ISBN 0-13-028418-1 
      Authors : Deitel, Deitel, Nieto, and  
Mcphie
 
   3. Linux+ Guide to Linux 
Certification.Shell Script 
Programming
               
Publisher: Thompson Course Technology - 
               ISBN 0-619-13004-0 
 
Authors: Jason W. Eckert  and M. John Schitka
 
4.  
dministrating Web Servers, Security, & 
Maintenance
       Publisher: Prentice Hall - ISBN 0-13-022534-7
   Authors: Eric Larson & Brian  Stephens

OBJECTIVES OF THE COURSE:

The specific objectives of this course are:

1. To teach some general concepts of operating systems such as memory management, procedure management, device and data management.

2. To teach the basic commands and principles of  Linux & Unix Operating Systems.

3. To teach Shell Programming in C-shell, T-shell, Bourn, Bourn Again shell, Korn shells and Perl Shell..

4. Every student is required to become familiar with Linux and Windows 2000, & Windows XP operating systems.

5.  Administrating Web servers, Security, & maintenance. All students are required to install apache server in their Unix area. See Khailany- instructions on how to install apache server.

To install the latest version of apache server on your PC computer visit http://www.apache.org/

 

COURSE CONTENT

 

The course is divided into four sections:

1. Computer Operating Systems in general, Unix  & Linux commands and their utilities.

2. Shell programming.

3. Perl and Cgi programming and if we have time Python programming will also be introduced.

4. Administrating Web Sever, Security, & maintenance.

I. Computer Operating Systems in general and Unix Commands and its utilities.

The first part of the course provides an overview of the fundamental concepts of computer operating systems. Basic commands of Unix & Linux are discussed. Two text editors vi and pico are covered.  Different mail facilities such as pine, elm, Mail, mail, mailx are presented. Immediately you have to print out and execute the commands that are discussed in my Unix Tutorial. in my web site Professor Khailany

 

Text 1: chapters 1, 2,3,4,5,6 & 7.

Text 3: chapters 1, 2,3,4,5,6 & 7.

Reference 16: chapters 1, 2, 3, & 4.

 

II. Shell programming & System administration.

 

Shell programming material can be found in:

Text 1: chapters 8, 9, 10, 11, 12 & 13.

Text 3: chapters 8, 9, 10, 11, 12, 13, 14,& 15

Reference 16: chapters 5,  6, 7,  8, 9, 10 & 11.

 

This section of the course covers C shell family programming and Bourn shell family programming. Also  awk, and  sed programming languages are discussed. Most of the shell programming examples you will be downloading from my area. You need to organize your disk space into directories to make easy for you to recall examples that you downloaded from my area. For example, to download all read examples from my read_examples subdirectory in my home directory follow the following two steps (do not wait do it immediately):

1. First create a directory in your area (your home directory) by typing command: mkdir read_examples

2. Second copy all files from my read_examples directory to your read_examples directory by typing the following command:

 

cp /usr/users/cis/khailany/read_examples/* read_examples

 

Notice: Notice my home directory is /usr/users/cis/khailany in Unix tilda character .~. is also used for the home directory. In other words the above command to copy everything from subdirectory read_examples in my home directory to your subdirectory read_examples in your home directory you could type the command:

 

cp ~khailany/read_examples/* read_examples

 

In the previous command * mean everything and cp is copy command.

 

Now create the following directories:

 

while_examples , awk_examples, perl_examples, args, c_examples, array_examples, functions_examples, monitor_examples, menu_test, python_examples, and rolo_example.

Follow the above procedure to copy all files from my directories to your directories.

 

III. Perl and Cgi programming and if we have time Python programming will also be introduced.

In this  section of the course perl and Cgi  programming are discussed. Since you already know C++, or C#  Perl will be an easy language for you.  For perl examples in my area visit Perl Examples and  More Perl Examples .

Text 2: chapters 1, 2, 3, 4, 5, & 6.

For cgi we cover the materials of Text 2: chapters 7, 8, 9, 10, 11, 12, 13  & 14

 

Notice that Text 2 contains good chapters on XML, python and cookies.

 

IV. Administrating Web Servers, Security, & Maintenance.

The material of the recommended textbook 4 is very important and essential for students of computer information systems. This textbook is organized as lab assignment. We will discuss some of these lab assignments regarding Web servers, security, and maintenance. The remaining items of the recommended textbook are assigned as reading materials.

Specific References:

I. Tutorials:

Currently web technology provides tutorial on any topic you want. You are strongly recommended to use search engine to get tutorial for topics you desired. For example I used   search engine Google and seaerced for  .Tutorial on installing Linux server.. Following are the first four sites among many thousands of such sites.

 Debian Linux Tutorial - Guide On How To Install Linux Software for ...
Step-by-Step Guide & Tutorial Pages Have an old system ... of fact, as you will see on
the guide pages, its ... years and makes it easier to also learn how to work with ...
www.aboutdebian.com/ - 25k - Dec 21, 2004 - Cached - Similar pages

TrinityOS: A Guide to Configuring Your Linux Server for ...
... The documents also guide the user in other advanced ... 24.22 How to acquire an Internet
Domain Name. ... Downloading and either compiling or installing Sendmail from ...
www.ecst.csuchico.edu/~dranch/ LINUX/TrinityOS/cHTML/TrinityOS-c.html - 26k - Cached - Similar pages

Counter-Server - The Official Counter-Strike Server Admin Resource ...
... Cause this guide isn't updated every day it's possible ... keep things simple and make
this tutorial applicable for ... There are many tutorials here that can help you ...
server.counter-strike.net/ server.php?cmd=howto&show=linux - 31k - Cached - Similar pages

PHP: Installing Apache Web Server + PHP 4 on Linux Tutorial - PHP ...
... This tutorial will show you how to setup an Apache + PHP ... At the time of writing this
tutorial, Apache 2 and ... I started out with the tutorials which were always ...
www.phpfreaks.com/tutorials/12/0.php - 37k - Cached - Similar pages

II. Some text books:

1. Unix for Programmers and Users - A Complete Guide      Publisher: Prentice Hal                           Authors : Graham Glass 1993 

2. Unix System Security                         Publisher: Addison Wesley - 1992         Authors : David Curry

3. Student Guide to Unix                        Publisher: Mcgraw Hill                           Author: Harley Han . 1996

4. Teach yourself Unix In A Week         Publisher: SAMS Publishing - 1994        Author: Dave Taylor 

5.Unix System V Primer                        Publisher: SAMS Publishing - 1992        Authors: Mitchell Waite, Stephen Prata and Donald Martin 

6. UNIX Shell Programming   Publisher: Hayden Books 1988              Authors: Stephen G. Kochan and Patrick Wood 

7. Advanced Programming in the Unix Environment                              Publisher: Addison Wesley                     Author: W. Richard Stevens

8. The Design of the UNIX Operating System       Publisher: Prentice-Hall 1986  Author: Maurice J. Bach

9. Unix Power Tools                              Publisher: OReilly Associates Inc. 1993                 Authors: Jerry Poelt, Tim OReilly and Mike Lookides

10. Programming Perl                            Publisher: O'Reilly & Associates Inc.      Author: Larry Wall, Tom Christiansen & Randal L. Schwartz

11. Perl For System Administration        Publisher: O'Reilly & Associates Inc.      Author: David Blank-Edelman

12.  Moving To Linux                            ISBN: 0-321-15998  Publisher: Addison-Wesley. Author: Marcel Gagne

13. Guide to Linux Networking and Security         ISBN: 0-619-00094-5 Publisher: Thompson Course Technology               Author: Nick Wells

14. Guide to Linux Installation & Administration    ISBN: 0-619-13095-4  Publisher: Thompson Course Technology               Author: Nick Wells

15. Course ILT: SAIR Apache Web Server        ISBN: 0-619-21468-6            Publisher: Thompson Course Technology  

 16. Shell Script Programming Publisher: Thompson Course Technology - ISBN 
0-619-15920-0 Authors: Todd  
Meadors

 

Here are some links on Perl tutorials:

Found 'Perl tutorial'

 

1.    Perl Programming Training on Video

2.     Perl Generator!

3.     Perl Builder - Visual Perl Programming

4.     Perl Tutorial

5.     Perl Tutorial - Carlton University Civil Engineering

6.     Perl Tutorial - Super-Basics

7.     Perl Tutorials, Downloads, and Tips

8.     Perl Tutorials, Manuals, and References

9.     University of North Carolina - Perl Basics

10.  Stylusinc.com - CGI and Perl Script Installation Tutorial

11.  Grobgeld, Dov - Tutorial for Perl GIMP Users

12. Perl Tutorial

13.   Choosing the Right Database System 

 Notes:

1. Your are required to install apache server in your Unix area. See  how to install apache  in my web site.

2. Try to install Linux as soon as possible on one of your computers.

3. It is good idea to know JavaScript, or and VBScript.

4. Make sure that you know at least the following items about HTML.

To get some on-line tutorial lessons on Java Script, HTML, Java, Unix, Latex, and C,  click here.

HTML :

The following Tags are discussed:

Comment are written between <!-- and -->

Structured Tags:

<HTML> .</HTML> Encloses the entire HTML document. Can include <head> and <body>

<HEAD>.</HEAD> Encloses the head of HTML document. Can include <title> <isindex> <base> <nextid> <link> <meta>

<BODY>.</BODY>

Encloses the body (text and tags) of the HTML document

Attributes:

Background, bgcolor, text, link, alink, vlink

Can include <h1.> <h2> <h3> <h4> <h5> <h6> <p> <ol> <ul> <Dir> <menu>

<DL> <pre> <blockquote> <form> <idindex> <hr> <address>

<BASE> allowed inside <head>

<ISINDEX> allowed inside <head> <body> <blockquote.<DD> <form> <LI>

<LINK> allowed inside <head>

Attributes:

HREF="." NAME="." REL="." REV="."

URN="." TITLE="." METHOD="."

<META> allowed inside <head>

HTTP.EQUIV="." NAME=. Content=.

<NEXTID> allowed inside <head> <body> <blockquote.<TD> <form> <TH> <address>

<Script Language = "JavaScript"> To identify the language of the script </Script>

<PRE>To tell the systems to keep my format, PRE stands for pre fprmat </PRE>

GRADING SYSTEM

ITEM

POINTS

date

First exam

200

Wednesday, February 16, 2005

Second exam

200

Wednesday, April 20 , 2005

Term Paper

100

Due date :  4/6/2006 Term Paper

Home works & quizzes

500

 To be announced

 Total

1000

 

GRADING SCALE

Points

Grade

More than 950

A

Between 910 and 949

A-

Between 860 and 909

B+

Between 820 and 859

B

Between 790 and 819

B-

Between 750 and 789

C+

Between 700 and 749

C

Between 600 and 699

C-

Less than 600

E

To get handouts, and home works or announcement visit Professor Khailany.s web site, then click 624, after that click links and go down to see what are you looking for.

POLICIES OF THE COURSE:

  1. MAKE-UP EXAMS:

No make-up exams are permitted. In the case of emergency, such as a death in the family, the student must present written proof of the death. In the case of sickness, the student must present written proof from a physician. Also in case of judicial court appointments, the student must present written proof from the court. Based on this document, the instructor makes the decision regarding the make-up exam.

B. CLASS ATTENDANCE

Attendance per se is not required. However, each student is responsible to know everything covered in every class meeting including announcements. If you are unable to attend a meeting, it is your responsibility to obtain the material from other students.

C. Warning.

All works are expected to be an INDIVIDUAL EFFORT. Any program or homework or exam that is judged to be a copy or not your own work will be given a grade of zero. The right to further penalties is reserved and the University's policies with respect to the integrity of Scholarship and Grades, as stated in the Academic Catalog will be followed. Assignments must be completed prior to the class session for which t