Exercises

 

Exercises som bør være udført

Exercises som udføres i denne uge

 Exercises som ikke er udført endnu


 

 Exercise 0

 EMNE: Linux-introduktion


KLARGØRING TIL ANVENDELSE AF UBUNTU LINUX, TCPDUMP, WIRESHARK ETC.

1. Installer WMware Player på din computer.


2. Installer Ubuntu Linux 10.04.1 på din computer.


3. Konfigurer Linux til dansk keyboard og opret mulighed for at blive root (superuser).

 

4. Udfør et login som root på en Linux-PC og konfigurer ethernet-port #1 (eth1) og browser (Mozilla), så det bliver muligt at tilgå Campusnettet. Her kan Exercise 1, 2, osv. findes på gruppelink’et ”Exercises”

5. Download fra http://www.tldp.org/guides.html denne fil:
    "Introduction to Linux - A Hands on Guide" i .pdf-format

6. Gem filen på et USB-Memory-Stick.

7. Opret en terminal og afprøv en række basale Linux-kommandoer (ls, pwd, cp, mv, cd, mkdir, rmdir etc.) og et par netværkskommandoer (ifconfig, ping, host etc.).


8. Prøv at eksperimentere med terminal-applikationen "tcpdump" og den grafiske applikation "wireshark". Hvis wireshark ikke er installeret anvendes kommandoen ”apt-get install wireshark”

(NB - Exercise 0 skal IKKE beskrives i en journal. Formålet er udelukkende at introducere Linux som værktøj til LAN1-kursets netværks-eksperimenter).

 

 Exercise 1

 EMNE: Flere hosts på
 1 LAN-segment


OPSÆTNING AF EN KOMMUNIKATIONSLINJE MELLEM 2 DIREKTE FORBUNDNE HOSTS

1. Konfigurer et mini-netværk bestående af 2 hosts (H1 og H2), forbundet via et LAN-segment.

2. Verificer at H1 og H2 kan kommunikere, dels ved test med Linux-kommandoer - og dels v.h.a. sniffing tools
    ( tcpdump og/eller eller wireshark ).
    ( relevante Linux-kommandoer er: tcpdump, arp, ping og ifconfig )

3. Analyser relevante hændelser på LAN-segmentet v.h.a tcpdump og/eller wireshark - gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til eksamen ).


 Exercise 2
 EMNE: Routing, basalt


OPSÆTNING AF ROUTER (FORWARDER), PART 1

1. Konfigurer et inter-netværk bestående af en host (H1) på et LAN-segment, som via en router skal kunne kommunikere med en host (H2) på et andet LAN-segment.

2. Verificer at de 2 hosts på hver sit LAN-segment kan kommunikere indbyrdes, dels ved test med Linux-kommandoer - og dels v.h.a sniffing tools (tcpdump og/eller eller wireshark).( nye relevante Linux-kommandoer er: route og traceroute )

3. Analyser relevante hændelser på LAN-segmentet v.h.a tcpdump og/eller wireshark - gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til eksamen ).
 

 Exercise 3
 EMNE: Routing, detaljeret


OPSÆTNING AF ROUTER (FORWARDER), PART 2

DEL-EMNE "Method 1 - manual configuration":

1. Konfigurer et inter-netværk bestående af en host (H1) på et LAN-segment (SEG1), som via to routers (R1 og R2) skal kunne kommunikere med en host (H3) på LAN-segment (SEG3). De to routers er indbyrdes forbundet med et segment (SEG2), hvorpå der er tilsluttet en host (H2).
H2's routertabel skal manuelt konfigureres til at "kende" H1's LAN-segment og H3's LAN-segment.

2. Verificer at alle 3 hosts (på hver sit LAN-segment) kan kommunikere indbyrdes, dels ved test med Linux-kommandoer - og dels v.h.a sniffing tools (tcpdump og/eller eller wireshark). ( relevante Linux-kommandoer er: route og traceroute )

3. Analyser relevante hændelser på LAN-segmentet v.h.a tcpdump og/eller wireshark - gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til eksamen ).



DEL-EMNE "Method 2 - using ICMP-redirection":

4. Konfigurer et inter-netværk bestående af en host (H1) på et segment, samt to routers (R1 og R2) på samme segment. Afprøv ICMP redirection (styret af R1), så det blive muligt at "pinge" en host på et segment (SEG2), som ligger "bag" R2.

5. Analyser relevante hændelser på LAN-segmentet v.h.a tcpdump og/eller wireshark - gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til eksamen ).



DEL-EMNE "Subnets"
(Denne del af øvelsen er nedprioriteret pga. problemer med leverance af USB-USB-kabler)

6. Konfigurer et netværk bestående af et segment (SEG1) med tre routers R1, R2 og R3. "Bag" R2 og R3 skal anbringes to subnets (SEG2 og SEG3) med en  passende opdeling af SEG1's IP-adresse-område. Anbring en host på hvert subnet. (SEG2 kan f.eks. være "administrationsafdelingen" og SEG3 kan f.eks. være "udviklingsafdelingen" i et firma).

7. Verificer at de 2 hosts (på hver sit LAN-segment) kan kommunikere indbyrdes, dels ved test med Linux-kommandoer - og dels v.h.a sniffing tools (tcpdump og/eller eller wireshark).( relevante Linux-kommandoer er: route og traceroute )

8. Analyser relevante hændelser på LAN-segmentet v.h.a tcpdump og/eller wireshark - gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til eksamen ).

 

 Exercise 4
 EMNE: DNS - client


ANVENDELSE AF FORSKELLIGE DNS CLIENTs

1. Forbind en host til IHA's LAN.

2. Afprøv kommandoerne host og nslookup.

3. Analyser relevante hændelser på LAN-segmentet v.h.a tcpdump og/eller wireshark - gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til eksamen ).

 


 Exercise 5
 EMNE:
DNS - server

 


OPSÆTNING AF DNS SERVER

Forberedelse: Installer DNS-server pakken ”bind9”
Setup-hints: Web appendix 9: (Se "Fildeling")


1. Konfigurer et inter-netværk bestående af en host (H1) på et LAN-segment, som via en router skal kunne kommunikere med en host (H2) på et andet LAN-segment. Kommunikationen skal kunne verificeres v.h.a. ping-kommandoen "ping h2". ( dvs. at der også skal konfigureres en lokal DNS-server ).

2. Verificer DNS-serverens funktionalitet, dels ved test med Linux-kommandoer - og dels v.h.a. sniffing tools ( tcpdump og/eller wireshark ).

3. Analyser relevante hændelser på LAN-segmentet v.h.a tcpdump og/eller wireshark - gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til eksamen ).

  

 Exercise 6
 EMNE: telnet og netcat
 (TCP-connection)


OPRETTELSE AF TCP-CONNECTIONS, EKSEMPLER PÅ ANVENDELSE

Installer en telnet server* [apt-get install postfix] i en host (H1).

Anvend via et LAN-segment telnet-serveren fra en telnet-client (H2).

Analyser relevante hændelser ( herunder oprettelse og nedlukning af TCP-connection ) på LAN-segmentet v.h.a tcpdump og/eller wireshark - gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til eksamen ).

Installer en daytime server i en host (H1)

Anvend via et LAN-segment daytime-serveren fra en telnet-client (H2).

Analyser relevante hændelser ( herunder oprettelse og nedlukning af TCP-connection ) på LAN-segmentet v.h.a tcpdump og/eller wireshark - gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til eksamen ).

Opret en virtuel TCP-server, der lytter på port 345 i en host (H1) vha. netcat.

Anvend via et LAN-segment den virtuelle TCP-server fra en telnet-client (H2).

Analyser relevante hændelser ( herunder oprettelse og nedlukning af TCP-connection ) på LAN-segmentet v.h.a tcpdump og/eller wireshark - gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til eksamen ).

  *) Telnet-server:
Der er "by default" ikke installeret en telnet server i Ubuntu 10.04.1.
telnet-server'en er en del af et "bundt" af små servere som tilhører service inetd.

 Exercise 7
 EMNE: e-mail
 (SMTP-/POP3-protokollen)


OPSÆTNING AF ET E-MAIL-SYSTEM

1. Installer en SMTP-server (postfix, [apt-get install postfix]) i en host H1
    
2. Konfigurer SMTP-serveren, så det bliver muligt at oprette en telnet-forbindelse til SMTP-serveren på localhost (H1) og at sende en mail fra en bruger til en anden, eksempelvis fra root til ”standardbruger” (tg, frede, sonja etc.).

3. Konfigurer SMTP-serveren, så det bliver muligt at sende en mail fra en bruger (root) til en anden bruger (tg, frede, sonja etc.) – mellem forskellige (virtuelle) maskiner - over netværket.

Dvs. SMTP-serveren, som kører i H1 skal kunne anvendes fra andre hosts (H2, H3,…)

4. Analyser relevante hændelser vha. tcpdump/wireshark. Gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til eksamen ).

5. Noter de væsentlige ændringer som blev indført i SMTP-serverens konfigurationsfil.

- - - - -


6. Installer en POP3-server (dovecot, [apt-get install dovecot-pop3d])) i H1.

7. Konfigurer POP3-serveren, så det bliver muligt at oprette en telnet-forbindelse til POP3-serveren på localhost (H1) og hente en modtaget mail, der er blevet sendt fra root til en”standardbruger” (tg, frede, sonja etc.) (anvend i første omgang ikke SSL).

Problem: Når dovecot genstartes vha. kommandoen ”service dovecot restart” bør et
POP3 login kunne udføres således:
#telnet localhost pop3 (eller #telnet 127.0.0.1 110 eller #nc 127.0.0.1 110)
+OK Dovecot ready.
user tg
pass kaffekop

i stedet for et vellykket login smides brugeren af POP3-serveren, det er ikke umiddelbart
muligt at udføre et login.

En udskrift af syslog (#tail –f /var/log/syslog) viser følgende:

Oct  4 05:11:24 ubuntu dovecot: POP3(tg): mail_location not set and autodetection failed: Mail storage autodetection failed with home=/home/tg

HINT: I dovecot-konfigurationsfilen /etc/dovecot.conf sættes variablen mail_location således:
          mail_location = mbox:~/mail:INBOX=/var/mail/%u

Herefter bør dovecot kunne anvendes uden problemer.

8. Konfigurer POP3-serveren, så det bliver muligt at for en standardbruger at hente en mail fra POP3-serveren i H1 - over netværket, dvs. fra H2, H3... (Mail’en kan f.eks. være afsendt fra root)

9. Analyser relevante hændelser vha. tcpdump/wireshark. Gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til eksamen ).

10. Noter de væsentlige ændringer som blev indført i POP3-serverens konfigurationsfil.

- - - - -

11. Installer en grafisk Email Client, (f. eks Claws Mail 3.7.4. [apt-get install sylpheed-claws-gtk2]) I H2, H3…

12. Konfigurer Email Client’en, så der kan skrives/hentes mail til en SMTP-/POP3 server, som kører på en anden (virtuel) maskine (H1). Anvend i første omgang ikke SSL

13. Analyser relevante hændelser vha. tcpdump/wireshark. Gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til eksamen ).

14. Noter de væsentlige ændringer som blev ændret i email Client’ens setup.

- - - - -

15. Tilføj en ny SMTP-server i en ny (virtuel) maskine (f.eks. i H3), så det bliver muligt at forwarde en mail fra en SMTP-server (H1) til en anden SMTP-server (H3).

16. Analyser relevante hændelser vha. tcpdump/wireshark. Gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til eksamen ).

17. Noter de væsentlige ændringer som blev indført i SMTP-serverens konfigurationsfil.

Exercise 8
 EMNE: HTTP-protokollen

Foreløbig udgave:

OPSÆTNING AF WEB-SERVER, ANVENDELSE AF HTTP-CLIENT’s

1. Installer en web-server (apache 2.2) på en PC (H1). Opret en hjemmeside med 3 .jpg billeder i H1.

2  Etabler en LAN-forbindelse mellem serveren (H1) og en host (H2), der skal fungere som http-client.

3. Lad H2 hente hjemmesiden fra H1 v.h.a. protokollerne: http 0.9, http 1.0 og http 1.1.
Dels vha. TELNET/NETCAT/NC, dels vha. en browser.

4. Analyser relevante hændelser på LAN-segmentet v.h.a tcpdump og/eller wireshark. Undersøg specielt den TCP-mæssige forskel på forløbet ved anvendelse af non-persistent connection og persistent connection.

5. Gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til eksamen ).
 

 Exercise 9
 EMNE: DHCP-protokollen
 

 

OPSÆTNING AF DHCP-SERVER, ANVENDELSE AF DHCP-CLIENT’s
   
VIGTIGT:  I denne exercise SKAL jeres eksperiment-netværk adskilles FULDSTÆNDIGT fra IHA's LAN !!!

1. Opret en LAN-forbindelse mellem
en host (H1) og en server (S1).

 

2. Installer en DHCP-server (dhcp3) i S1 og konfigurer denne til at fungere således:
     DHCP-serveren skal automatisk kunne "aflevere" følgende DHCP-data til den ”ydre” host
    (H1) på segmentet når denne starter op:
     - en IP-adresse
     - en net-mask
     - IP-adressen på default gateway
     - et domæne-navn
     - IP-adressen på en DNS-server.

3. Afprøv DHCP-funktionaliteten i H1 for hhv. ”first startup of interface” og ”renew”.
   (hhv. 4-trins forløb: DHCPDISCOVER, DHCPOFFER, DHCPREQUEST, DHCPACK
   og 2-trins forløb: DHCPREQUEST, DHCPACK).

4. Analyser relevante hændelser på LAN-segmentet v.h.a tcpdump og/eller wireshark.

 

5. Gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise
  ( anvendes til eksamen ).


 Exercise 10
 EMNE: echo-, daytime-,
 chargen protokollerne -
 og FTP-protokollen


OPSÆTNING AF TEST-SERVER, ANVENDELSE AF TEST-CLIENT
OPSÆTNING AF FTP-SERVER, ANVENDELSE AF FTP-CLIENT

1. Konfigurer et netværk bestående af en host (H1) og en "alsidig" server (S1).
2. Opret daytime-server funktionalitet i S1 og afprøv denne funktionalitet fra H1.
3. Opret echo-server funktionalitet i S1 og afprøv denne funktionalitet fra H1.
4. Opret chargen-server funktionalitet i S1 og afprøv denne funktionalitet fra H1.
5. Opret FTP-server funktionalitet i S1 og afprøv denne funktionalitet fra H1.
    FTP-serveren vsftpd anvendes. Som client anvendes terminal-kommandoen ftp
    og/eller en grafisk client (f.eks. gftp).
    Det er interessant at undersøge FTP-protokollen i både active og i passive mode.
    Default login/password for FTP-serverens login-directory skal være "anonymous" efterfulgt af
    et vilkårligt password.
    Konfigurer FTP-serveren så login/password bliver restriktiv.
    Konfigurer FTP-serveren så det både bliver muligt at downloade og uploade filer.
    Prøv at logge ind på FTP-serveren med et brugernavn og et password som matcher med et
    bruger-login på S1. Lander vi i samme directory som tidligere i denne øvelse?
6. Analyser relevante hændelser på LAN-segmentet v.h.a tcpdump og/eller wireshark.
    Gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise
    ( anvendes til eksamen ).

 

 Exercise 11
 EMNE: Firewall og NAT


OPSÆTNING AF FIREWALL
OPSÆTNING AF NAT (Network Address Translation)

 Firewall:

1. Klargør en echo-server og en daytime-server i en host (H1), som er tilsluttet et segment (SEG1).
2. Anvend denne echo-server fra en Linux-PC (H2) på et andet segment (SEG2).
3. De to segmenter er forbundet via en Router (R)
4. Tilret en Firewall (iptables) i R, så det nu bliver umuligt at tilgå echo-serveren i H1 fra H2.
    Det skal stadig være muligt at tilgå daytime-serveren i H1 fra H2.
5. Analyser relevante hændelser på LAN-segmentet v.h.a tcpdump og/eller wireshark.
    Gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til
    eksamen ).


 
hint: www.sslug.dk - Linux bøger - stikord F-> firewall


 NAT (Network Address Translation)
 
1.
Opret to hosts, H1 og H2.
2. Opret NAT-funktionalitet (port translation, one-to-one NAT) og router-funktionalitet i host R.
3. Opret en server-funktionalitet i host S, som kan opretholde en persistent TCP-connection.
    F.eks. vha. nc (netcat).

    H1 -------------!               
    10.0.0.1        !
                    !------------ R -------------------- S
                    !  10.0.0.254   10.1.1.254   10.1.1.1 
    H2 -------------!
    10.0.0.2


4. H1's og H2's Net-Id/Netmask skal være 10.0.0.0/24. Deres default gateway skal være
   10.0.0.254, dvs. adressen på R's ene interface.
5. R's andet interface skal have adressen 10.1.1.254, og R skal forbindes til serveren,
    som skal have IP-adressen 10.1.1.1. Netmask for segmentet mellem R og S skal være /24.
6. Analyser relevante hændelser på LAN-segmentet v.h.a tcpdump og/eller wireshark.
    Gem relevante hændelser i en fil, som kan indgå i journalen for denne exercise ( anvendes til
    eksamen ).
 
 hint:
www.sslug.dk - Linux bøger - stikord N-> NAT
 

 Exercise 12
 EMNE: Virtual Private
 Network, VPN

OPSÆTNING AF VPN-TUNNEL (HOSt-TO-HOST)

1. Opret to hosts, H1 og H2.

2. installer ipsec-funktionalitet i begge vha. kommandoen ”apt-get install openswan”

3. opret en VPN-tunnel mellem de to hosts vha. denne ”HOWTO”
http://wiki.openswan.org/index.php/Openswan/Tutorial

4.
verificer vha. tcpdump/wireshark at data mellem de hosts nu er krypteret i ESP-pakker.
Til verifikation kan der overføres nogle data, som uden anvendelse af VPN er ”synlige”
f.eks. overført vha. telnet-protokol eller echo-protokol.

5.
Gem relevante hændelser (en ukrypteret dialog mellem de to hosts og en krypteret dialog mellem de hosts) i en fil, som kan indgå i journalen for denne exercise ( anvendes til
eksamen ). 


BEMÆRK.: Når ping anvendes til verifikationaf ipsec-funktionaliteten ses ESP-pakker
vha. tcpdump/wireshark.
MEN: der ses stadig – ukrypteret – ICMP-pakker (ping-pakker) i den ene retning.
Dette må antages at være en fejl i OpenSwan’s ipsec, da øvrig trafik er krypteret i
ESP-pakker. (indtil det modsatte er bevist).
Dvs. øvelsen er fuldført tilfredsstillende hvis I kan eftervise at øvrige pakker er
ESP-indkaplede.

 

 Exercise 13
 EMNE: WiFi

UNDERSØGELSE AF WiFi-PERFORMANCE
UNDERSØGELSE AF WiFi-HANDOVER

Sted: Netværkslaboratorium (610) og ”radiodødt” rum (609)

Udstyr: Dell-laptop i lokale 610 med KWiFiManager installeret.
(KWiFiManager viser aktuel transmissionshastighed, MAC-adresse på anvendt accesspoint
og historik over signalstyrke.
Nye WiFi-applikationer, som kan installeres i en Ubuntu 10.0.4.1 kan ikke vise
samtlige af disse data vigtige data).

Part 1 - Performance:

1. Etabler med en bærbar Linux-laptop en WiFi-forbindelse til et ZComax 9100 accesspoint i
    lokale 610.
    IP-adresse/netmask for dette accesspoint er 192.168.1.1/24.
    SSID er "NETLAB".
    Der anvendes ikke kryptering
    Der er via ethernetkabel tilsluttet en FTP-server til dette accesspoint.
    IP-adresse/netmask for FTP-serveren er 192.168.1.3/24.
    Login er "ftp" og password er "12345678".
    Download en stor fil fra denne server og konstater hvilken teoretisk transmissionshastighed
    filen er download'et med (54 Mbit/sec., 48 Mbit/sec. ...).
    Beregn den reelle transmissionshastighed og beskriv hvilke faktorer der har indvirkning på
    forskellen mellem den teoretiske transmissionshastighed og den reelle transmissionshastighed.
    Hvad sker der med den reelle transmissionshastighed hvis flere FTP-clients
    downloadersamtidigt via accesspoint'et?
    Hvad sker der når radiosignalet skal passere døre/mure? Når afstanden øges? Er det muligt
    at genoptage den igangværende FTP-overførsel hvis WiFi-forbindelsen mistes kortvarigt?

Part 2 - Handover:

2. I lokale 610, netværkslaboratoriet, anbringes et ZComax-accesspoint, som har
    IP-adressen 192.168.1.1/24.
    I lokale 609, som er et "radiodødt" rum, anbringes et andet ZComax-accesspoint, som har
    IP-adressen 192.168.1.2/24.
    SSID i de to accesspoints er det samme: "NETLAB".
    Der anvendes ikke kryptering i de to accesspoints.
    Der oprettes en kablet LAN-forbindelse mellem de to accesspoints via et 30 m langt kabel.

3. Etabler med en bærbar Linux-laptop en WiFi-forbindelse til access-point i lokale 610.
    Check forbindelsen vha. ping.
    Aflæs MAC-adresse på det aktuelt anvendte accesspoint og den aktuelt anvendte
    transmissionshastighed.
    Gå langsomt fra netværkslaboratoriet til det radiodøde rum (husk at lukke den skærmede
    dør til det radiodøde rum, når I er indenfor).
    Noter hvad der sker undervejs i "vandringen" mellem de to lokaler - og hvad der sker i lokalerne.
    (Betragt output fra KWiFiManager, ping-response-tider og aktuel teoretisk hastighed.

4. Gentag punkt 3, men denne gang skal ping-testen erstattes af en langvarig
    TCP-connection, f.eks.
     i form af en FTP-download af en stor fil > 100 Mbyte).
     (Der "kører" en FTP-server på IP-adresse 192.168.1.3/24. Login er "ftp" og
     password er "12345678"
     Overvåg forløbet mht. til transmissionshastighed.
     Kan TCP-forbindelsen holde til et handover?
     Hvor lang tid er de to access-points (ca.) om at blive enige om et handover?

Beskriv forløbet i en journal, der anvendes som udgangspunkt for en eksamination i IT-LAN1.