Exam 2

Groups
In order to keep people from having to spend time figuring out what group they want to be in, I have assigned (by alphabetical order) the groups. If you want to switch groups, you have to find someone in another group that will switch with you. Both people need to tell me that they want to switch:

Groups from Section 1

Groups from Section 2
Exam Each group will take 1 Linux machine (11 will be set aside after class Wednesday of 9th week). Each group will divide up the following tasks (one person, one task):

NIS server/client Create an NIS domain called "SXGY" where X is your section (1 or 2) and Y is your group number (1-4 or 1-7). In this domain, make the file /etc/passwd.nis your NIS passwd map, and /etc/group.nis your NIS group map. Add the users `foo' and `bar' with the passwords `foo#123' and `bar#123', respectively. Make their home directories /homes/foo, /homes/bar (but don't make the directories, let the NFS person take care of that), and their shells /bin/bash. Start their UIDs at 10000 (ie uid 10000 and 10001). Make the NIS groups `users' and `staff' (starting the gids at 10000 [ie 10000 and 10001]). Make foo's primary group `users' and bar's primary group `staff'. Put `bar' into the NIS group `users' too. Make the machine bind to its own NIS domain. Put `foo' into the netgroup `staff' and use netgroups to make it so that users in the netgroup `staff' can use the machines, but everyone else has the shell `/bin/noshell'. Write a script that explains that the machine is only for staff use and put it in /bin/noshell.

DNS server/client Resolve names for the domain `foo.com' and provide reverse lookup (IP addresses resolving to domain names) for IP addresses in the range of 128.135.11.0 through 128.135.11.255. Add the following hosts: www.foo.com (ip address .11.10), mail.foo.com (ip address .11.20), ftp.foo.com (ip address .11.30), and bar.foo.com (ip address .11.30). Make the CNAMES w3 (www), mailhost (mail), smtp (mail). For each host add a HINFO record ("iX86", "linux"), and a TXT record (for example, for mail, the record should be "mail server". In the /etc/hosts file add entry for ns1.foo.com refering to the local machine. Configure the machine to only look in the domain foo.com and to use itself as a nameserver. Have it look to its local files first, then to its nameserver, then to NIS.

NFS, automount server/client When installing the machine, make a separate partition `/u1'. Export this filesystem only to the local machine (export it read/write). Add the directories /u1/foo and /u1/bar. Make the directory /homes an automount point (using AMD) and have it read the map describing /homes from /etc/amd.homes. Make sure it is NFS mounting the filesystems (don't just use a direct map). Have the /homes directory be `browsable' --- ie you can see all of the entries that can be mounted when you do a `ls /homes' (even if /homes/foo or /homes/bar aren't already mounted).

Tripwire and Logging Have tripwire watch all of the relevant files on the machine. Don't watch users home directories and only watch the directories where files are bound to change (ie /tmp). Watch everything under /dev, but limit which statistics you record depending on whether or not they should change on a day to day basis (this may take some experimenting). You don't want any reports concerning anything a user might do (through regular use), but you do want to know if someone adds software to the machine. Do the most thorough job you can and describe why you chose not to watch certain directories. Have syslog log everything over the info level to /var/log/syslog.


Everyone will be responsible for their own, short writups (half a page [11pt font, 1" margins, single spaced]). Excess documentation will count against you. The writup should explain the procedure to make the machine a client and server for whatever service you selected. This should include whatever special you needed to do in the installation (briefly), and the files you needed to edit (brief description of the edit [for example 'I added account foo to /etc/passwd.nis']). Section 1 finals will be due in class Monday 10th week, section 2 Wednesday 10th week. The exam should only take 3 hours (per person) to do and to document.