User Tools

Site Tools


cs471:cs_471_assignments

CS 471 Assignments

Assignment 4 - Software management, chroot

Due: Friday, 3/23/2018, 11:59pm

Write your answers in a plain text file or Google doc, and dropbox the text file (or link to a Google doc). Make sure your name appears in what you submit.

1. On your Linux systems (VM and container), is the firefox web browser a package that can be installed using the apt package management system? How did you arrive at your answer?

2. On your Linux systems (VM and container), run 'apt-get update' and then 'apt-get upgrade'. Follow the prompts to download and install software upgrades. What packages were upgraded on your 2 systems? Include output from 'apt-get upgrade' that indicates the packages that were upgraded.

3. See information on the AppImage package format. Download an AppImage from the list of available AppImages, and run it on any Linux system (root privileges are not required). Identify the AppImage that you downloaded and ran, and detail the steps that were required to run the AppImage. Include a screenshot of the running AppImage.

4. An OS container is akin to a chroot jail. On your Linux container system, follow the tutorial at https://linuxconfig.org/how-to-automatically-chroot-jail-selected-ssh-user-logins to automatically chroot jail selected ssh user logins. You will need to create the tester user to complete the tutorial. For user tester, use the password unixfool. I will login to your container to verify completion.


Assignment 3 - Sudo, run levels, passwords

Due: Friday, 2/16/2018, 11:59pm

Write your answers in a plain text file or Google doc, and dropbox the text file (or link to a Google doc). Make sure your name appears in what you submit.

1. On your VM, configure the sudo tool to allow the user jchung to perform package management tasks using the commands /usr/bin/apt-get, /usr/bin/dpkg and /usr/bin/aptitude. Write the details of sudo configuration as your answer (include contents of the sudo config /etc/sudoers). Also add the same details to your admin journals.

Sudo should be configured so that jchung can run only those three commands (apt-get, dpkg and aptitude) as root.

Links:

2. Login to your VM using either rdesktop or the virtualbox GUI and become root (Don't use ssh to login). Answer the following questions:

  a) How do you force the system into run level 1 (single-user mode)?

  b) When your system is in single-user mode, can a normal user login using ssh?
  
  c) Can your system be pinged when it's in single-user mode?
  
  d) How do you force the system into run level 2 (multi-user mode)?
  
  e) What happens when you try to force your system to enter run level 5?

3. On your VM, which configuration file specifies the encryption method (cryptographic hash function) used for user passwords? (The encryption method should be SHA512.) HINT: Find the file under the /etc directory that contains the string “SHA512” or “sha512”. A recursive grep command would probably find it.


Assignment 2 - System data, cron

Due: Friday, 2/2/2018, 11:59pm

Write your answers in a plain text file or Google doc, and dropbox the text file (or link to a Google doc). Make sure your name appears in what you submit.

1. See p. 1057 of the book (“Commands for systems monitoring”). Using some of the commands on that page, provide the following information about your systems, including command output:

  • Percentage of the root (/) partition's disk space that your system is using
  • The sizes in megabytes (MB) or gigabytes (GB) of the /etc, /usr and /var system directories
  • The amount of free and used memory, as well as the total amount of swap space (virtual memory); all numbers must be in MB

2. See the information about the grep command on p. 197 of the book and elsewhere. Using grep, find at least 3 files in the /etc system directory whose contents contain the hostname you chose for your system. List the files that you find.

3. Install the mlocate package (mentioned on p. 21 of the book) on your systems. Using the /usr/bin/updatedb and /usr/bin/locate commands from the mlocate package, list all the filenames on your system that contain “ssh_host”.

4. The mlocate system updates its file system database daily (See the /etc/cron.daily/mlocate shell script and the system crontab in the /etc/crontab file). At approximately what time does mlocate update its database?


Assignment 1 - Start journaling

Due: Thurs, 1/25/18, 11:59pm

Create an electronic journal of your system administration activities. You'll have to keep this journal updated through the semester.

To give you an idea of what a sysadmin journal might look like, see an old portion of my sysadmin log at

 http://rockhopper.monmouth.edu/~jchung/cs471/admin.notes.sample.txt

The journal should ideally be a plain text file, but you can use other formats such as word processor, google doc, etc. The journal name should correspond with the name of the system that you are administrator of. You can keep a written journal in a notebook, but it should eventually be transferred to electronic format.

In your newly-created journal, in as much detail as you can, write about the installation of Linux that we began, what your system's hardware is, what your system is called, where it is physically located. DO NOT write what your passwords are. The quality of your journal is an indication to me of how much you understand about your system and about the administration tasks you are asked to perform.

Your first journal entries should be for 1/16/18 and should include the following:

  • What you installed Linux on
  • What hardware is part of the computer: type of CPU, how much RAM, size and type of hard drive
  • What distribution of Linux you installed
  • How you partitioned the hard drive, the size and types of the partitions
  • What file system types you formatted your partitions with
  • Any pitfalls or problems during and after the install
  • How the network interface is configured
  • What your computer's hostname is
  • What services you enabled and tested
  • What users you added
  • What additional packages you installed
  • Other details that you think are important

Dropbox the file containing your journal or provide a link if your journal can be accessed via the web.


cs471/cs_471_assignments.txt · Last modified: 2018/03/22 15:30 by jchung

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki