Assignment title: Information


csc8512 Assignment 1 Semester 1, 2016

Due Date: 11:55PM 28 March 2016, AEST This assignment consists of 4 questions each of equal value. They consist of common tasks required of a system administrator—tasks I have had to do at some time in the past. Clear Layout It is vitally important that your assignment is clearly laid out with questions and parts of questions clearly defined. It must be a straight forward matter for the examiner to determine that you have completed each exercise satisfactorily. We want quality not quantity. Poorly organised submissions will be rejected or receive a poor mark.

A text file or PDF/A document typeset using vanilla L ATEX are preferred over a document produced by a word-processor. If you must use Microsoft Word please export your document as PDF/A1 not PDF. Command Output When answering these questions you will have to run commands under

Linux—whenever a command is run you will need to: a. explain in your own words the purpose of the command in the context of the assignment question. (Please do not just copy the

"Description" section from the man page!) Also, you need to explain in your own words all terminology used—as if you were explaining to an average user! (Please show you understand what you are doing!) b. show that the command worked—either from its output or the

output from another command. For example prompt> dd if=/dev/zero of=Crypt.fs bs=1M count=32

32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 0.109063 s, 308 MB/s 1 PDF/A is an archival format of PDF that embeds all fonts used in the document within the PDF file. To ensure PDF/A format in Word check "ISO-19005-compliant (PDF/A)" under "Options" when saving a file as PDF. L ATEX produces PDF/A by default. prompt> ls -l Crypt.fs

-rw-r--r-- 1 user user 33554432 2014-02-25 10:18 Crypt.fs

c. To capture text output from programs you will have to redirect the output to a file or use the command script. If you are using the command script turn off the tty escape sequences that change the colour of console text—the escape sequences will appear in output file and make it impossible to read. Late Submission of Assignments

Students can apply for an extension of time to submit an assignment at any time up to the deadline. Students are advised to make a request for an extension as soon as their need becomes apparent. Delay in making a request involves the risk of losing marks if the request is refused.

The examiner may grant a short extension of the deadline for submission of an assignment. Extensions are usually granted only in cases of Compassionate and Compelling Circumstances in accordance with the Assessment of Compassionate and Compelling Circumstances Procedure. Generally, extensions will be limited to a maximum of five University Business Days. A Student requiring an extension for a period of time in excess of this should consider applying for a Deferred Assessment as per section 4.4 of the assessment procedure. Applications for extensions must be made via email or USQAssist to the

examiner together with accompanying documentation as specified in the Assessment of Compassionate and Compelling Circumstances Procedure. An assignment submitted after the deadline without an approved extension of time will be penalised. The penalty for late submission without a pre-approved extension is a reduction by 5% of the maximum mark applicable for the assignment, for each University Business Day or part business day that the assignment is late. An assignment submitted more

than ten University business days after the deadline will have a Mark of zero recorded for that assignment. The Examiner may refuse to accept assignments for assessment purposes after marked assignments and/or feedback have been released. Please consult the USQ Assessment Procedure for the complete USQ policy on assessment.

Non-submission of Assignments As per the USQ Assessment Procedure — for a student who has failed to achieve a passing final grade by 5% or less of the total weighted marks, the Examiner, in agreement with the Moderator, will consider recommending to the Board of Examiners the undertaking of Supplementary Assessment by the Student. This offer will normally only be made if the Student has undertaken all of the required Summative Assessment

2 Items for the Course—that is, submitted all of the assignments! Student Responsibilities

The assessment procedure also outlines the following student responsibilities: • If requested, Students must be capable of providing a copy of Assignments submitted. Copies should be despatched to the University within 24 hours of receipt of a request being made. • Students are responsible for submitting the correct Assignment. • Assignment submissions must contain evidence of student effort to address the requirements of the Assignment. In the absence

of evidence of Student effort to address the requirements of the assignment, no Mark will be recorded for that Assessment Item. • A Student may re-submit an Assignment at any time up to the deadline. A request to re-submit after the deadline is dealt with in accordance with section 4.4 'Deferred, Supplementary and Varied

Assessment and Special Consideration' of these procedures. Academic Misconduct Academic misconduct is unacceptable and includes plagiarism, collusion and cheating: plagiarism : involves the use of another person's work without full and clear referencing and acknowledgement;

cheating : involves presenting another student's work as your own; collusion : is a specific type of cheating, that occurs when two or more students fail to abide by directions from the examiner regarding the permitted level of collaboration on an assessment. All are seen by the University as acts of misconduct for which you can

be penalised. For further details go to the Library's site on What is Plagiarism. 3 Question 1 (marks 25) On modern networked computers, maintaining the correct time on each

machine is important. Computers on a LAN or WAN with different times can cause problems. In about a page and in your own words explain why it is important for computers to maintaining the correct time and more importantly explain how do they do it. In your explanation make certain to include discussions on the following linked topics:

• The computer's hardware clock (also called the Real Time Clock or RTC) • The computer's software clock (also called the kernel or system clock) and why this can be inacurate. • In Linux, how they are synchronised and why do they need to be synchronised? Why can the Linux software clock be so inaccurate?

• What is NTP and what are "clock strata"? • What is UTC and why is it used? (UTC: Coordinated Universal Time, or Temps Universel Coordonné, and if you want—you can

explain what is going on with the acronym!) Notes: a. The topics above are linked to each other and the question, they

are not independent of each other. They are provided as a minimal guide only. Do not simply write an unconnected paragraph on each without linking the concepts together.

b. The question being asked is "…why is it important for computers to maintaining the correct time…" please be certain to answer this question. c. List all resources used in answering this question.

d. Please do not cut and paste slabs of text from a Wikipedia article. The question explicitly says in your own words! e. Please do not fall into the trap of answering the question by using unexplained technical terms—you must explain all technical terms used especially if they have not been used anywhere else in the course. 4 Question 2 (marks 25)

A user comes to you and explains that she needs some form of encrypted file system to store sensitive information on a Flash drive. The Flash drive will be used to transport the sensitive data between work and home and she is worried about losing the drive and having the data

stolen. Both machines, the one at home and the one at work, use the same Linux OS. She has the following requirements: • She does not want to encrypt individual files as she has to deal

with a large number of files. • She wants it to be as transparent as possible. • She thinks she will only need about 128MB at most. • She wants to also use the flash disk for transporting unencrypted

files. Files that can be read on machines apart from her work and home machines. A 128MB file that contains an encrypted file system, stored on the Flash

drive would appear to be ideal— a. (5 marks) Write a brief description how a file can be treated as if it where a hardware disk under Linux. b. (7 marks) Create a 128MB encrypted file system in a file on a Flash drive so that it can be used with the cryptmount command. Document and explain in your own words every command you use (plus any command line options) and any configuration files

you modify or create. Your descriptions of each operation need to show you understand the purpose of the operation. Note: If you are uncertain why a particular command or command line option is required—ask! There is at least one step and command line option that you cannot understand from the information in the man page alone. For example, what does it mean to "prepare" and "release" the file and why is it done?. It will require some research and reading up on loop devices and the device mapper. c. Things you must also address and explain:

• (6 marks) how to ensure that the Flash drive has exactly the same mount point each time it is used on different machines. If it does not have the same mount point then how do you

configure the hardwired cryptmount paths? 5 Hint: Experiment with "labelled" file-systems (see the command e2label or dosfslabel) or UUIDs in conjunction with the file /etc/fstab d. (7 marks) Write an instruction sheet for the user so that she can

make the modifications to her home machine so that she can access the file on the flash drive containing the encrypted file system. Also explain how she would use the filesystem in her dayto-day work. Make certain to explain why the encryption key is not not to be stored with the encrypted file system (where should it be stored?) You may assume that she has root access to be able to configure her home machine so she can mount the encrypted file-system.

Notes: a. Do not use the tool cryptmount-setup or the tool installed by the package cryptsetup. b. Manually create files and configuration files.

c. Follow the steps outlined in the cryptmount man page— explaining the purpose of every step! d. List all resources used in answering the question. e. Do not explain how you installed the cryptmount package—it should already be installed on the Virtual Debian.

6 Question 3 (marks 25) You have been asked to install an SVN repository on a server. The SVN

will be remotely accessed using the svnserve dæmon that is supplied with SVN (please note that this is not the most secure way to access an SVN repository) Install the distributed revision control system subversion from the

Debian package of the same name. After installation you will need to configure subversion to be usable. Tasks that will need to be done:

a. (5 marks) Write a brief paragraph explaining what a revision control system is in general, what SVN is in particular and how it is used by remote clients. b. Install the subversion package.

c. (6 marks) Write and install a systemd service file to automatically start and stop svnserve (the subversion server) at boot/shutdown (in dæmon mode— do not use inetd mode, do not use an ssh encrypted tunnel). Show using systemctl that you can successfully start and stop

the service. d. Create an SVN repository at /var/repository/ e. (4 marks) Configure the repository and define the repository

usernames and passwords. f. (4 marks) Implement configuration and runtime options that increase security—explaining why your choices increase security. g. (6 marks) Test your configuration, repository and running server by creating a project in the repository. Show that you can check in and check out documents from the repository. (Note: this is

supposed to be a remote repository so all tests must be done via a network connection.)

Notes: a. Explain in your own words each operation you needed to perform to get the Subversion system working. Your descriptions of each operation need to show you understand the purpose of the operation.

b. Access to the repository must be via the networked server. This means that the URL must begin svn://localhost/ or if you

are on the host machine using the guest machine's IP number. The SVN client can access the repository directly from the filesystem—but that does not demonstrate that the server is up and running and is useless for distributed revision control. 7

c. Do not explain how you installed packages! d. List all resources used in answering the question. 8

Question 4 (marks 25) Authentication under modern Unix systems is handled by the Pluggable Authentication Module (PAM) system. In about a page and in your own

words explain the PAM system and why it was introduced. Using the login service file found in the course virtual machine (see /etc/pam.d/login) as an example, explain a service is configured and discuss the implications of each configuration line. Your explanation should include discussions on the following: • what is the module-type parameter, • what is the control flag, • what does it mean that the service file is a stack, • what is a pam module. Notes:

a. The topics above are linked to each other and the question, they are not independent of each other. They are provided as a minimal guide only. Do not simply write an unconnected paragraph on each without linking the concepts together.

b. List all resources used in answering this question. c. Please do not cut and paste slabs of text from a Wikipedia article. The question explicitly says in your own words!

d. Please do not fall into the trap of answering the question by using unexplained technical terms—you must explain all technical terms used especially if they have not been used anywhere else in the course. 9