2. laboratorijska naloga: VPN / Lab assignment #2: VPN

Odprto: petek, 3. december 2021, 00.00
Rok za oddajo: nedelja, 16. januar 2022, 23.59

Naloga je sestavljena iz treh sklopov. Rešite lahko poljubne naloge iz enega ali večih sklopov. Pri vsaki nalogi je zapisano število točk in ime datoteke, v kateri opišete rešitev. Za maksimalno oceno morate zbrati vsaj deset točk.

VPN

Cilj je v skupini sestaviti čim večje navidezno zasebno omrežje (angl. virtual private network oz. VPN) z uporabo OpenVPN. Najprej postavite CA (certifikatno agencijo), s katero podpišite certifikate za strežnik in odjemalce VPN. Vsaj ena povezava pri vsakem študentu mora uporabljati OpenVPN. Poleg tega lahko vsak študent postavi še poljubno število nadaljnjih VPN povezav, pri čemer je vsaka nova tehnologija vredna eno dodatno točko.

  • 0 - network.svg: Slika vašega omrežja (vektorska). Obvezno.
  • 1 - routing.txt: Opis tega, kako ste nastavili usmerjevalne tabele.
  • 2 - members.txt: Seznam članov VPN. Datoteka naj vsebuje 3 stolpce: IP vsakega računalnika; ime in priimek lastnika; državo, iz katere je lastnik. Stolpci naj bodo ločeni z vejicami. Največ 2 točki, glej spodaj.
  • 2 - keys.txt: Opis tega, kako ste ustvarili CA (tudi, če ne teče na vašem računalniku), ključe in certifikate.
  • 1 - vpn.txt: Opis tega, kako ste vzpostavili VPN z OpenVPN.
  • 4 - othervpn.txt: Opis tega, kako ste postavili VPN z drugo tehnologijo, 1 točka/tehnologijo, največ 4 točke.

Dve točki (pod members.txt) dobi skupina, ki bo postavila največji VPN (zbrala največ pik za velikost). Vrednotenje velikosti VPN bo sledeče:

  • 1 pika: največje (število računalnikov / število študentov).
  • 2 pika: največje število študentov.
  • 3 pika: največje (število podomrežij / število študentov).
  • 4 pika: največje število različnih narodov, ki jih mreža povezuje.

Strežniki

Za ta sklop dobite dodatno točko, če strežniki tečejo na navideznem omrežju, ki ste ga naredili v prvem sklopu.

Postavite HTTP strežnik, ki bo omogočal dostop do več zvočnih ali video datotek. Iste datoteke naredite dostopne še prek FTP, NFS in SMB. Poleg HTTP lahko naredite vsebine dostopne tudi prek HTTPS. Dostop do datotek lahko tudi zaščitite z uporabniškim imenom in geslom.

  • 2 - http.txt: Opis tega, kako ste postavili strežnike SMB, HTTP, FTP in NFS (1 točka za dva strežnika, 2 točki za vse štiri strežnike).
  • 1 - https.txt: Opis tega, kako ste nastavili strežnik HTTPS.
  • 2 - auth.txt: Opis tega, kako ste poskrbeli za preverjanje uporabniških imen in gesel na strežnikih, ki so v omrežju.

Streaming

Za ta sklop dobite dodatno točko, če strežniki tečejo na navideznem omrežju, ki ste ga naredili v prvem sklopu.

Preko mreže predvajajte video vsebine. Poskrbite lahko še za to, da bodo vsebine dostopne prek razpošiljanja (angl. multicast). Na omrežju lahko (na skrivaj) predvajate tudi IP TV signal, ki ga sicer dobivate na dom. Poleg tega lahko vse uporabnike shranite na enem mestu. Lahko jih celo shranite v podatkovno bazo, po možnosti dostopno prek LDAP.

  • 1 - streaming.txt: Opis vzpostavitve predvajanja "TV programa".
  • 1 - dlna.txt: Opis vzpostavitve predvajanja vsebin na sodobnih domačih napravah (TV).
  • 3 - multicast.txt: Opis nastavitev, potrebnih za multicast streaming.
  • 3 - iptv.txt: Opis postavitve sistema za prepošiljanje IPTV signala.
  • 2 - radius.txt: Opis vzpostavitve centralnega strežnika za avtentikacijo.
  • 3 - ldap.txt: Opis postavitve skupne baze s podatki o uporabnikih.

Oddaja

Datoteke zapakirajte tako, kot ste jih za prejšnjo nalogo, z eno razliko – namesto podimenika files naj bo v njej podimenik hosts, v podimeniku hosts pa nadaljnji podimeniki, po en za vsak računalnik, ki ste ga nastavili. Oddana datoteka naj ne bo večja od 1 MB. Za napačno obliko oddane naloge boste izgubili 3 točke.

Veliko sreče pri reševanju!


The second laboratory assignment consists of three parts. You can solve any number of subtasks from one or more parts. Describe each solved task in the specified. For the maximum grade you must receive at least ten points.

VPN

The goal is to create (in a group) a VPN as large as possible using OpenVPN. First create a CA (Certificate Authority) which will sign certificates for VPN server and clients. Each student must configure at least one VPN link using OpenVPN. Each student may also set up additional VPN links using other technologies and get an additional point for each technology.

Describe how you completed the tasks above in the following files:

  • 0 - network.svg: A schematic (picture) of your network in a vector format. Required.
  • 1 - routing.txt: A description of how you set up the routing tables.
  • 2 - members.txt: A list of VPN members. The file should contain three columns: the IP of each computer; the name and surname of the computer's owner; the country that the computer's owner is a citizen of. The columns should be separated by commas. Maximum 2 points, see below.
  • 2 - keys.txt: How you created the CA (even if it is running on someone else’s computer), keys and certificates.
  • 1 - vpn.txt: How you set up the VPN network using OpenVPN.
  • 4 - othervpn.txt: How you set up a VPN using other technologies, 1 point per technology, maximum 4 points.

Two points (for members.txt) will be awarded to the group which sets up the largest network. The size of the network will be judged as follows:

  • 1 point for the network with the largest (number of computers / number of students).
  • 2 points for the network with the largest number of students.
  • 3 points for the network with the largest (number of subnets / number of students).
  • 4 points for the network with the largest number of connected nations.

Servers

Set up an HTTP server that serves multiple audio and video files. Make the same files also available over FTP, NFS and SMB. You can also set up HTTPS. Additionally, you can protect the files with username-and-password authentication.

  • 2 - http.txt - How you set up the SMB, HTTP, FTP and NFS servers (1 point for two servers, 2 points for all four servers).
  • 1 - https.txt - How you set up the HTTP server.
  • 2 - auth.txt - A description of how you configured authorization on servers in the network.

Streaming

Broadcast a video stream over the network. Additionally, you can ensure the content is available over multicast. You can also retransmit the IPTV signal that gets sent to your home over the network. You can make authentication data available to all the servers in the network (e.g. through radius). Furthermore, authentication data may be stored in a database - preferably accessible over LDAP.

  • 1 - streaming.txt: How you set up video streaming.
  • 1 - dlna.txt: How you set up a multimedia server for modern appliances (TVs).
  • 3 - multicast.txt: How you set up multicast.
  • 3 - iptv.txt: How you set up IP, terrestrial or satelite TV forwarding.
  • 2 - radius.txt: How you set up authentication for all servers.
  • 3 - ldap.txt: How you set up a common authentication database.

Submission

You must pack the files in the same manner as you did for the first lab assignment, with one difference – instead of creating a sub-directory called files, create a sub-directory called hosts, and under that a further sub-directory for each host on your network. Submitted file must not be larger than 1 MB. In the case of improper formatting, 3 points will be deducted from your score.

Good luck!