ST.NORBERT COLLEGE

CS460 SENIOR CAPSTONE EXPERIENCE IN COMPUTER SCIENCE

SPRING 2001

PROJECT PRESENTATION

UNIX ADMINISTRATION PROJECT

Igor Abramovich

http://sncuw.snc.edu/cs460/abraig

Part 1: Project Description

A. Definition and Requirements
I started the project with two main objectives:

Improve UnixWare server administration (SNCUW):
Make the user (add/edit/delete) account administration easier for the faculty. Possibly use the college’s administrative database(s) to get class/user information, create a menu-driven GUI administration utility.

Purchase necessary components and setup a Linux lab (advanced lab):
Purchase a Linux distribution (best for our purposes), purchase second hard drives for the advanced lab (best for our purposes), cooperate with SNC Computer Services to install the new drives, install the new Linux distribution on all the new drives (including all possible compilers, etc. for academic use), setup a central authentication server (possibly use sncuw), setup remote/easy authentication for the new linux lab (use authentication and security protocols best for our purposes).

B. Solution(s)

Status of the project 4 months later:

Purchase certain components and setup a Linux lab (advanced lab):

o  Purchased “RedHat 7.0 Deluxe Workstation” from St.Norbert College Bookstore

o  Purchased nine new 10Gb hard drives through St.Norbert College Computer Services

o  Installed the new hard drives into the selected workstations in the advanced lab in Cofrin Hall.

o  Installed full distribution of RedHat 7.0 on the new drives in workstations w/o disturbing the Windows ’95 installation and DeepFreeze (make linux boot with floppies).

o  Created a central authentication server in JMS-104 running RedHat 7, LDAP (Lightweight Directory Access Protocol), SysLog (remote logging), ftp, telnet, smtp, http.

o  Chose LDAP for remote authentication of Cofrin workstations, created a working database of users.

C. Exceptions

Some of the things I could have done given more time:

-  Perl scripts and utilities to make user administration on SNCUW easier and faster.

-  Better and faster LDAP explorer which is used as a GUI tool for user administration (right now have a slower Java-based GUI).

D. Methodology

Methods, techniques, designs:

-  In the beginning I consulted with industry professionals, internet and literature resources on the issues (LDAP vs. NIS, remote logging, what Linux distribution to commit to, etc.)

-  I did a lot of internet research on hardware prices and configurations

-  A lot of pure experimentation to realize pros/cons of different protocols

Part 2: Demonstration

During the demonstration I will show the communication between a workstation and the server. I will create a new account for the workstation via a remote LDAP explorer, and then telnet to a workstation using that new account. After the login I will run a program off the server’s /app directory which is mounted by all workstations at boot time.

I will also demonstrate the remote logging of the workstations – my telnet login to the workstation will show up in the server’s log. I will also discuss the importance of the location of the logs (hacker attacks).

The latter part of the demonstration will probably address security of the lab and the server and what improvements could be made by my successors.

Part 4: Learning and Development Process

A. Strategies

-  I think during this project I did most of my learning by searching and reading on the web after professionals’ tips. Most useful websites were www.redhat.com, www.linuxdoc.com. Searching engines most heavily used were www.yahoo.com, www.metacrawler.com.

-  Of course the most productive times were when I sat down in the advanced lab and actually experimented with the workstations and the server. Those chunks of time (mostly >5hrs) generated a lot of journal entries because of the great exciting stuff I usually stumbled upon during my experimentations with Linux OS.

B. Knowledge

I think my project was designed specifically for me by the instructor, since he knew that I had experience and interest in the area of Linux OS setup/administration. The course that was most helpful to me out of SNC Computer Science program was probably CS370 (operating systems) where we examined some of the functions and behaviors of the Linux kernel and where I have set up a Linux lab for the students.

C. Extensions

Recommended future enhancements:

-  Buy enough hard drives to cover AT LEAST all of the advanced lab machines.

-  Install SSH (secure shell) on the server and the workstations, which makes all the telnet and ftp sessions to and from the workstations and the server securely encrypted. The downside to that is: to telnet or ftp to the client or server, the user would have to use a special client software (Ewan or WS-FTP would not work).

-  Definitely work on making user administration on Sncuw easier for the instructors. Definitely use the SNC LDAP server (ldap.snc.edu) to determine if a student account is to be deleted (I have browsed through that server, all the current students are there, now it’s just the matter of writing Perl scripts to hit that server to get expired accounts).

-  Put a fresh distribution of Solaris on Sncuw.

D. Advice

My advice to next year seniors would be not to be afraid of setting high goals in their projects if they are really interested in them. I learned that as little as one afternoon of enthusiastic experimentation can turn the project from seeming impossible to a piece of cake!

D. Overall Experience

My overall experience was definitely positive. I learned a lot about the Linux operating system, networking, client/server model, remote authentication/logging, timely documentation and much more. Vague initial requirements and having to deal with hardware (interactions with Computer Services, etc.) definitely made the project unique. However, down the stretch, when I got to actual discovery, design and implementation “phases”, it got really exciting – especially being able to see it all come together and WORK PROPERLY.

I think a project of this sort is definitely an improvement for the program and the department. These projects give a lot of positive experience to the students and the instructors as well as better the program by letting the instructors use the project results in the classroom.