PV090 - UNIX-seminář ze správy systému

Organizace výuky | Jak má vypadat referát | Úkoly | Způsob hodnocení | Obsazení počítačů | Přiřazení referátů | Probíraná témata | Archív referátů


Organizace výuky

Každá hodina má předem stanovené téma. Studenti pracují na přidělených virtuálních strojích Na začátku hodiny je referát z daného tématu a diskuse. Následuje práce na vyřešení úkolu z daného tématu. Zároveň s tím vyučující kontrolují vyřešení úkolu z minulé hodiny.

Dotazy k úkolům pište nejlépe mailem na adresu pv090 zavináč fi.muni.cz.


Jak má vypadat referát


Úkoly

Úkolem bývá typicky vyzkoušet v praxi věc, o které byl tu hodinu referát. Toto lze většinou stihnout v hodině, přinejhorším dokončit v průběhu týdne. Do místnosti PV090 je přístup po celý týden. Na začátku následující hodiny se provede kontrola a přidělení bodů. Při vypracování úkolů se vám budou hodit různé systémové nástroje.


Způsob hodnocení

Referát

0 až 10 bodů - až 2 body za písemnou podobu, až 3 za ústní projev a 5 za znalosti a schopnost reagovat na dotazy. Za neomluvenou neúčast na hodině kdy máte mít referát nebo nepřipravení referátu je -10 bodů.

Úkol

V případě omluvené neúčasti se doba pracovní neschopnosti nezapočítává do časového limitu.

Požadavky na ukončení:


Plán semestru, referáty

# Téma (1. / 2. skupina) Čtvrtek
1. Instalace systému
2. Jádro systému Filip Škola
3. Virtualizace Martin Hatina
4. DNS Sebastián Kunec
5. Elektronická pošta Dávid Šimanský
6. HTTP a WWW servery Jiří Daněk
7. SNMP a monitoring sítě
8. Databáze uživatelů, PAM a LDAP
9. Kerberos, synchronizace času po síti Tomáš Babej
10. Zálohování Ján Pekľanský

Obsazení počítačů

Středa
proto01 Martin Hatina
proto02 Filip Škola
proto03 Jiří Daněk
proto04 Tomáš Babej
proto05 Ján Pekľanský
proto06 Dávid Šimanský
proto07 Sebastián Kunec
proto08
proto09
proto10

Probíraná témata


Instalace systému

Obsah:
Instalace UNIXového systému: rozdělení disků, základní konfigurace sítě IPv4 a IPv6, firewall, vzdálený přístup přes SSH. (vysvětlit zásady konf.firewallu).
Úkol:

Nainstalujte na svůj počítač UNIXový systém (Linux, *BSD, ...).

Nakonfigurujte síť podle následující topologie. V případě IPv4 a IPv6 použijte statickou konfiguraci a nenechte se zmást tím, co vám kdo po síti nabízí za adresy a cesty :-)

topologie 1

Nakonfigurujte firewall (např. iptables) tak, aby přístup z vašeho stroje ven nebyl omezený a přístup zvenku na váš stroj zahrnoval pouze již otevřená spojení, plus přístup na službu SSH minimálně ze stroje erigona. Konfigurace firewallu by se měla aktivovat vždy po startu systému.

Povolte přístup na službu SSH na uživatele root z počítače erigona s následujícím veřejným SSH klíčem:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCvYYt4wHYXTIsFJ/duLysy272jBQGFHwcZGr/sEMpHIIGPdaw0p4iPKKO/T4guVnXofqMwhnAADGASgPsOwJnrBOs5KyF0zx7vjEAV/MRd9YGElwxzUsJRqCHQ+tXVJVPjy30iHT65ZpFcNd3C8KcUW2vpUrwfJfvspMB1LC0UkXxNSnQTgJBVxtbf8pU7fwcm8eS7Cf0BuDurY9epOHChV5ILCPE2YAPJmimZ+5DSCg5nsWq8DFFf7e/axmjd0CbtfN8cO/k/FtINBK2unZOPnSpteSbife2TVjCUbBNwNJNECdkHUIoFlee5wGWfCl5XjGbgtXCJIh0Mge51fSkm8GfwBIQnwIzsfyVVkBs5PzJ4dpDeoUT/Q2J2Jf8zq6VJFXixZTZ4IpCZ72lLpH7Y2u7RdKN6ozrsvMYGXw/Mbt1SH9z915SimdEZB22rrgCHE4pcdC/9jc622sE5lP1QZtk+0SQCFq1z0zs+QJdn7TOOziSc1WTKZ73zmYfcQ5aGWLjex8IJITg+gWtIywEZd8xYMIN1CxCmNuEUSMGPdYnG0czK2xPodsKlN4XBbrXHw5ZvbepGSH9SATy6eVjj1wGbnRbtXCzhvAnqoQOPpePUmiFdPn4KuTe8dZ3C+hiayN4oGSdGidSyByAUmHEjanB+YfS2XggJ/2gGneEfcw== pv090@erigona

Nainstalujte následující programy, které se pak budou využívat například pro kontrolu úloh:

  • tcpdump
  • ip
  • host
  • ssh, scp
  • ping, ping6

Hodnocení:
  • základní část:
    • běžící systém
    • nainstalované výše požadované programy
    • funkční IPv4 včetně ping
    • fungující přihlášení z erigony se SSH klíčem
    • nmap z erigony by měl ukazovat jen port 22/tcp
  • hodnocená část:
    • 2 body: ssh na erigonu bez prodlevy
    • 2 body: IPv6 včetně směrování a SSH (hint: zkoušejte ping6 na veřejnou IPv6 adresu erigony)
    • 2 body: funkční FW pro IPv6 (včetně povolení ping)
  • bonusová část:
    • 2 body: šifrovaný filesystém (použijte heslo "pv090pv090"). POZOR: musí zůstat funkční po celý zbytek semestru!

Jádro systému

Obsah:
Odkud se jádro bere, způsob vývoje. Zjištění informací o HW (lspci, lsusb, ...). Konfigurace (make config/xconfig/menuconfig/oldconfig), soubor .config. Principy fungování modulů, mapování modulů na PCI ID, USB ID a podobně. Instalace nového jádra, initrd a jeho generování (např. dracut), soubor System.map. Parametry jádra při startu.
Úkol:
Stáhněte si poslední verzi jádra z kernel.org, zjistěte HW konfiguraci svého počítače, nakonfigurujte jádro na míru tomuto počítači (typ a počet procesorů, velikost paměti, architektura, atd.). Zaměřte se na to, aby v konfiguraci byly do jádra přímo zakompilovány ty části, které se na běžícím systému budou používat vždy, jako moduly byly zkonfigurovány ty ovladače a další části, které mohou být někdy na počítači použity, a vypnuty ty části jádra, které jistě s tímto počítačem nikdy nepoužijete (nekompatibilní/neexistující HW, exotické filesystémy, atd.). Výsledné jádro nainstalujte do systému a nabootujte. Pro snazší kontrolu zapněte volbu CONFIG_IKCONFIG_PROC=y (konfigurace jádra je pak dostupná jako /proc/config.gz). Toto jádro budete používat v semináři i nadále.
Hodnocení:
  • základní část:
    • systém nabootuje vlastní jádro
    • konfigurace je dostupná v /proc/config.gz
  • hodnocená část:
    • 3 body: správně nastavené všechny globální volby které mají významný vliv na efektivitu výsledného jádra (např. typ a počet procesorů, přístup k paměti, atd)
    • 1 bod: správně zvolené ovladače použitých souborových systémů a návazné konfigurační volby (NLS)
    • 3 body: vypnuté ovladače a subsystémy, které se na daném počítači nepoužijí
    • 2 body: vše výše uvedené a navíc prázdný seznam načtených modulů po rebootu

Virtualizace

Obsah:
Proč virtualizace? Úrovně virtualizace: kontejnery (chroot(2), BSD jail(2), VServer, OpenVZ/Virtuozzo, ...), emulace HW (Qemu), paravirtualizace (user-mode Linux, lguest, XEN, VMware), plná virtualizace (KVM, XEN 3, VMware). Porovnání teoretického výkonu. Virtualizace I/O zařízení, zpřístupnění fyzického HW dovnitř virtuálního stroje. Formáty virtuálních disků, prostředky pro vysokou dostupnost a migraci. Připojení virtuálních strojů do sítě. Systémy pro správu virtuálních strojů.
Úkol:

Nakonfigurujte na svém fyzickém stroji některý virtualizační systém a v něm vytvořte virtuální stroj. Do virtuálního stroje nainstalujte operační systém podle zadání úlohy 1 (Instalace systému) Použijte následující topologii sítě:

topologie 2

Nakonfigurujte korektně statické směrování IPv4 i IPv6, včetně cest k virtuálním strojům ostatních počítačů v laboratoři.

Virtualizační nástroj nastavte tak, aby se virtuální počítač aktivoval automaticky po startu systému, a při jeho vypínání se buďto správně vypnul nebo hibernoval.

Hodnocení:
  • základní část:
    • běží VM, lze ping i ping6 z erigony, lze SSH z erigony
  • hodnocená část:
    • 3 body: viz úloha 1
    • 2 body: statické směrování IPv4 i IPv6
    • 1 bod: korektní vypnutí/zapnutí VM při vypnutí/zapnutí fyz. stroje
    • 1 bod: správná konfigurace FW na fyzickém stroji (zakázáno vše co nebylo požadováno dosavadními úkoly)
  • bonusová část:
    • 2 body: správně nakonfigurovaná sériová konzola na VM, přístupná z fyzického stroje.
    • 1 bod: sériová konzola funkční i pro výběr jádra a další ovládání bootloaderu VM.

DNS

Obsah:
Údaje v DNS. Základní typy záznamů. Resolver a jeho konfigurace. DNS servery (BIND, případně další). Reverzní DNS v IPv4 a IPv6. Zóna versus subdoména, delegování subdomén na jiné servery. Základní vlastnosti DNS serverů, instalace, konfigurace. Zabezpečení přenášených dat a DNSSEC.
Úkol:

Nainstalujte na oba své stroje DNS servery s těmito vlastnostmi (týká se vždy IPv4 a IPv6):

Pro kontrolu je třeba povolit u všech autoritativních zón přenos zóny (zone transfer) z erigony. Vygenerovat si DNSSEC klíče a mít všechny své zóny podepsané (včetně delegace subdomény u reverzního DNS). Validovat DNS odpovědi přes DNSSEC (viz www.rhybar.cz). Při změně dat na primárním nameserveru korektně notifikovat sekundární. Umožnit reload a další ovládání nameserveru na obou strojích vzdáleně ze strojů alpha a erigona nástrojem rndc. Pro erigonu použijte rndc klíč "/HEXWwRK8joztvL3fdGUrg==".

Názvy zón pro které mají být některé vaše nameservery autoritativní (viz výše) jsou tyto:

Hodnocení:
  • základní část:
    • běží dva DNS servery, komunikují na IPv4 i IPv6
    • smysluplně odpovídají na dotazy na jména z lab.fi.muni.cz (A i AAAA) a na reverzní záznamy (PTR), například při dotazu z erigony nebo z vašich vlastních strojů
    • smysluplně překládají jména na adresy a naopak pro adresy mimo laboratoř
    • funguje zone transfer při přístupu z erigony (IPv4 i IPv6 pro všechny autoritativní zóny daného nameserveru)
  • hodnocená část:
    • 3 body: korektní obsah zónových souborů
    • 1 bod: přeposílání neznámých dotazů podle zadání
    • 1 bod: delegace reverzních subdomén
    • 2 body: notifikace a zone transfer na sekundární DNS při změně dat
    • 1 bod: korektní nastavení firewallu (odchozí provoz, 53/tcp, 53/udp, rndc port)
  • bonusová část:
    • 1 bod: rndc
    • 2 body: DNSSEC validace (pro ověření je třeba mít nainstalovaný program drill na obou strojích)
    • 3 body: DNSSEC podpisy (drill -SD, drill -TD)

Elektronická pošta

Obsah:
Princip fungováni SMTP (obálka, zpráva), DNS MX záznamy versus A/AAAA záznamy. Formát zpráv (RFC 2822, MIME). Způsob ukládání zpráv (mailbox, maildir, ...). Příklad komunikace přes SMTP. Problém spamu (relaying, open relay, black-listy, delayed bounce, greylisting, antispamové filtry, SPF, DKIM, ...). Poštovní klienti (IMAP, POP3). Princip fungování konkrétniho SMTP serveru (sendmail, postfix, exim, ...) - základní konfigurace, kontrola relayingu, "doménový koš", ...
Úkol:
Nasimulujte typickou konfiguraci s jedním přeposílacím SMTP serverem a jedním doručovacím "vnitřním" SMTP serverem.
  • alpha (přeposílací SMTP server):
    • na portu SMTP/TCP přijímat spojení odkudkoli.
    • poštu pro user@cokoli.lab.fi.muni.cz (i pro prázdné "cokoli.") převzít od kohokoli a přeposlat na počítač beta.
    • poštu pro ostatní adresy převzít jen z počítače beta nebo od sebe sama a přeposlat na relay.fi.muni.cz.
  • beta (vnitřní SMTP server):
    • na portu SMTP/TCP přijímat spojení odkudkoli.
    • poštu pro user@cokoli.lab.fi.muni.cz (i pro prázdné "cokoli.") převzít jen od počítače alpha a od sebe sama, doručit ji lokálně příslušnému uživateli.
    • poštu pro ostatní adresy převzít jen od počítače alpha a od sebe sama, přeposlat ji na počítač alpha.
    • poštu pro lokálního uživatele pv090 přesměrovat na adresu pv090@fi.muni.cz (přeposláním na stroj alpha, viz výše).
    • poštu doručenou lokálním uživatelům zpřístupnit protokolem IMAP a POP3.
Hodnocení:
  • základní část:
    • Mail poslaný na adresu pv090@lab.fi.muni.cz z erigony na port SMTP počítače alpha přijde na adresu pv090@fi.muni.cz s očekávanou cestou v hlavičkách Received:
    • Mail poslaný na adresu test@lab.fi.muni.cz z erigony na port SMTP počítače alpha projde na počítač beta a je možno jej vyzvednout protokolem IMAP nebo POP3 (použijte login test a heslo pv090)
    • Na firewallu povolit příslušné porty (SMTP/SMTPs na obou strojích, POP3/POP3S a IMAP/IMAPS na počítači beta).
  • hodnocená část:
    • 3 body: výše uvedené je funkční i pro adresu pv090@protoXY.lab.fi.muni.cz, resp. test@protoXY-beta.lab.fi.muni.cz i pro XY jiné než vaše číslo.
    • 1 bod: funkční IMAP i POP3.
    • 2 body: oba počítače nefungují jako open relay (například při pokusu o poslání zprávy na adresu pv090@fi.muni.cz z erigony na port SMTP příslušného počítače)
    • 1 bod: správně nakonfigurované SPF záznamy na vašem DNS serveru
  • bonusová část:
    • 1 bod: greylisting na počítači alpha, pro snadnější kontrolu s timeoutem jen 2 minuty.
    • 1 bod: SSL pro POP3 nebo IMAP se self-signed certifikátem, znějícím na správné jméno.
    • 1 bod: SSL pro SMTP se self-signed certifikátem, znějícím na správné jméno.

WWW, HTTP servery

Obsah:
Protokol HTTP (příklad komunikace, metoda GET, metoda POST). HTTP server Apache. Konfigurace, moduly, virtuální servery. SSL vrstva (certifikáty, problém s virtuálními servery). CGI skripty. Alternativní HTTP servery. Problém detekce kódování a jazyka, multiviews, HTTP hlavičky versus HTTP-EQUIV v HTML, nastavení v konkrétním HTTP serveru. Autentizace (basic autentizace, cookies). Moderní rozšíření protokolu HTTP (SPDY). Range request. HTTP proxy cache servery (princip fungování, vazba na SSL).
Úkol:
Na počítači alpha zprovoznit HTTP server, který bude poskytovat následující dokumenty:
  • Na adrese http://protoXX.lab.fi.muni.cz/test.html bude podle preference klienta zobrazen tento český nebo tento anglický dokument. Server bude v HTTP hlavičkách poskytovat korektní informaci o jazyce a kódování. Česká varianta dokumentu musí navíc být dostupná v kódováních UTF-8 a ISO 8859-2 podle preferencí klienta. Anglická stačí jen v UTF-8.
  • Na adrese https://protoXX.lab.fi.muni.cz/secure/ bude při použití basic autentizace s přihlašovacím jménem pv090 a heslem test dostupný tento dokument (bez basic autentizace nikoliv). Server by měl mít self-signed certifikát znějící na správné jméno (viz URL).
  • Na adrese http://protoXX-alpha.lab.fi.muni.cz/test.html bude tento dokument, zpřístupňěný se správnými HTTP hlavičkami ohledně jazyka a kódování.
  • Na adrese http://protoXX.lab.fi.muni.cz/datum.cgi bude dostupný dokument typu text/plain obsahující aktuální čas od epochy jako jedno celé číslo na jednom řádku.
  • URL tvaru http://protoXX.lab.fi.muni.cz/alpha/zbytek_url budou trvale přesměrována (permanent redirect) na adresu http://protoXX-alpha.lab.fi.muni.cz/zbytek_url.
Hodnocení:
  • základní část:
    • Na adrese http://protoXX.lab.fi.muni.cz/ (IPv4 i IPv6) poslouchá HTTP server a odpovídá na dotazy.
    • Na adrese https://protoXX.lab.fi.muni.cz/ (IPv4 i IPv6) poslouchá HTTPs server a odpovídá na dotazy
  • hodnocená část:
    • 1 bod: výběr jazyka podle preferencí klienta funguje na testovacím dokumentu dle zadání.
    • 1 bod: výběr kódování podle preferencí klienta funguje na testovacím dokumentu dle zadání.
    • 1 bod: basic autentizace funguje podle zadání.
    • 1 bod: HTTPs server má správný certifikát.
    • 1 bod: adresa http://protoXX-alpha.lab.fi.muni.cz/test.html funguje podle zadání (funkční virtuální server).
    • 1 bod: přesměrování je funkční podle zadání.
    • 1 bod: dynamická stránka datum.cgi funguje podle zadání.
  • bonusová část:
    • 2 body: nainstalovat a rozchodit webový přístup k elektronické poště uživatele pv090 s heslem test (viz zadání úkolu o elektronické poště včetně odesílání pošty.

SNMP a monitoring sítě

Obsah:
Protokol SNMP. Strom MIB-2, OIDs a jejich překlad na jméno. Autentizace v SNMP (v1, v2c, v3). Metody SNMP (get, set, getBulk ...). SNMP trap. Konfigurace SNMP démona (například net-snmp) včetně autentizace. Generování grafů na základě SNMP veličin (například program MRTG). Obecné generování grafů (RRDtool a jeho nadstavby, např. Cacti nebo Torrus). Sledování chybovosti sítě pomocí SmokePing. Software pro monitorování síťových služeb (například Nagios, Zabbix, netdisco). Další nástroje: arpwatch, ndpmon.
Úkol:

Na počítač alpha nainstalujte SNMP agenta tak, aby poskytoval pod komunitou public odkudkoli jen tyto informace:

  • informace o systému (strom system.*)
  • informace o provozu vnějšího síťového rozhraní (toho s adresou v 10.0.0.0/24, resp. fd00:dead:beef::/64)
  • informace o třech naposledy přihlášených uživatelích (login, terminál, hostname, čas přihlášení, čas odhlášení ve stejném formátu, jako vypisuje program last(8)) na OID s názvem NET-SNMP-EXTEND-MIB::nsExtendOutLine."lastuser".1..."lastuser".3

Z erigony a z počítače alpha samotného pod komunitou pv090 zpřístupněte vše výše uvedené a navíc informace o všech síťových rozhraních počítače alpha.

Nakonfigurujte na stroji alpha Nagios nebo podobný monitorovací systém s následujícími vlastnostmi:

  • sledování SSH a DNS na všech strojích v laboratoři (včetně Erigony)
  • upozornění na výpadek e-mailem na adresu root@...-beta.lab.fi.muni.cz
  • webový front-end s autentizací jménem pv090 a heslem test, běžící na adrese https://protoXX.lab.fi.muni.cz/monitoring
  • přes webový front-end umožnit uživateli pv090 zadávat akce jako například plánování výpadku nebo explicitní vyžádání kontroly
  • evidovat korektní topologii sítě a z ní plynoucí závislosti mezi jednotlivými počítači v laboratoři (například virtuální stroj závisí na jeho fyzickém stroji)

Software pro kreslení grafů síťového provozu (např. MRTG) tak, aby kreslil grafy obou rozhraní počítače alpha a všech vnějších rozhraní ostatních strojů alpha v laboratoři. Grafy nechť jsou dostupné na adrese https://protoXX.lab.fi.muni.cz/grafy.

Hodnocení:
  • základní část:
    • Z erigony funguje SNMP přístup s komunitou public a zobrazuje aspoň strom system
    • Na požadovaném URL běží webový front-end k monitorovacímu systému, ve kterém je aspoň jedna monitorovaná služba
    • Beží software pro kreslení grafů síťového provozu a kreslí aspoň jeden graf
  • hodnocená část:
    • 1 bod: SNMP agent poskytuje informace o posledních třech přihlášených uživatelích podle zadání
    • 1 bod: SNMP agent zobrazuje s komunitou public z erigony vše podle zadání a nic navíc
    • 1 bod: SNMP agent zobrazuje s komunitou pv090 z erigony vše podle zadání a nic navíc
    • 1 bod: monitorovací software obsahuje všechny sledované stroje a služby podle zadání
    • 1 bod: v monitorovacím software jsou správně nastaveny závislosti mezi stroji (topologie sítě)
    • 1 bod: funguje zadávání příkazů přes autentizovaný webový front-end
    • 1 bod: při výpadku služby (například SSH na stroji beta se pošle informační mail
    • 1 bod: software pro kreslení grafů obsahuje všechny požadované grafy
  • bonusová část:
    • 1 bod: pod uživatelem pv090 a heslem testtest zpřístupněte protokolem SNMPv3 totéž co má komunita pv090
    • 2 body: informace o síťovém provozu zpřístupněte i s 64-bitovými počítadly a tato využijte při kreslení grafů

Databáze uživatelů, PAM a LDAP

Obsah:
Autentizace v UNIXu, soubory passwd a shadow, ukládání hesel. Systém PAM (napojení dalších autentizačních mechanismů, konfigurace, zpětná kompatibilita). Vybrané zajímavé PAM moduly. Další autentizační systémy: jednorázová hesla (OPIE, S/Key, Google Authenticator), dvoufázová autenziace (HW klíče, otisky prstů).
NSSwitch a alternativní zdroje dat pro systémové databáze (LDAP, SQL, NIS, ...). Cachování dat (nscd, nsd, sssd).
Co je to LDAP. Directory services. Jak vypadá a co je to: strom objektů, LDAP Schema. Nástroje na práci s LDAP (ldapsearch, ldapadd, ...). OpenLDAP, základní nastavení (konfigurační soubory versus LDAP objekty). Unixoví uživatelé v LDAPu (PosixAccount, ShadowAccount). MigrationTools. Spolupráce se SASL. Přístupová práva k jednotlivým objektům LDAP serveru, replikace. LDAP a ukládání hesel.
Úkol:

Nakonfigurujte na počítači alpha PAM tak, aby vždy po přihlášení měl uživatel nastavenou proměnnou prostředí PV090 na hodnotu test.

Na počítači alpha nakonfigurujte LDAP server.

  • Vytvořte strom objektů se suffixem dc=lab,dc=fi,dc=muni,dc=cz.
  • V podstromu ou=PeoplePV090 vytvořte objekt uid=pv090ldap, popisující UNIXový účet; jako heslo nastavte "LDAP090".
  • LDAP server musí odpovídat i na anonymní dotazy z erigony.

Na obou počítačích nakonfigurujte NSSwitch tak, aby bral informace o uživatelích z lokálních tabulek i z LDAPu a umožněte přihlášení uživatele pv090ldap, který bude zaveden jenom v LDAPu.

Zprovozněte některý nástroj na cachování informací z LDAPu.

Na počítači beta zprovozněte záložní LDAP server a nakonfigurujte replikaci dat z počítače alpha.

V případě zájmu vyzkoušejte konfiguraci jednorázových hesel (jako dvoufaktorovou autentizační metodu).

Hodnocení:
  • základní část:
    • Na stroji alpha běží LDAP server a obsahuje objekt uid=pv090ldap,ou=PeoplePV090,dc=lab,dc=fi,dc=muni,dc=cz
    • Ve výpisu programu ls -l se korektně překládá UID u souborů vlastněných uživatelem pv090ldap na jeho login
  • hodnocená část:
    • 1 bod: na stroji alpha má uživatel po přihlášení nastavenou proměnnou prostředí PV090 podle zadání
    • 1 bod: funguje přihlášení uživatele pv090ldap s heslem ze zadání
    • 1 bod: funguje cachování dat, získávaných z LDAPu
    • 1 bod: LDAP server je dostupný po IPv4 i IPv6
    • 1 bod: monitoring dostupnosti LDAP serveru v monitorovacím systému
  • bonusová část:
    • 1 bod: funguje replikace databáze LDAPu
    • 2 body: LDAP server je dostupný jen jako LDAPS a klienti fungují včetně ověřování certifikátu LDAP serveru
    • 1 bod: fungují jednorázová hesla podle zadání

Kerberos, synchronizace času po síti

Obsah:
Kerberos: princip fungování třístranné autentizace. Základní pojmy (realm, principal, lístek, stash, KDC, TGT, single sign-on). Komunikační protokol (co je v které fázi kam zasíláno, závislost na přesném čase). Implementace (MIT, Heimdal a jejich kompatibilita). Replikace dat, vazba na DNS, cross-realm trust. Uživatelské utility. Udržování přesného času v síti: dostupné protokoly (NTP, time/rdate), hardware pro přesný čas, NTP pool.
Úkol:

Zajistěte pro oba své stroje synchronizaci systémového času (použijte například protokol NTP a časový server time.fi.muni.cz nebo 1.cz.pool.ntp.org).

Na stroji alpha zprovozněte KDC pro realm PROTOxx.LAB.FI.MUNI.CZ.

  • Do databáze hesel zaveďte uživatele pv090 s heslem "T26k0Heslo".
  • Jako lokální heslo (v shadow) nastavte tomuto uživateli "L0calPa33".
  • Nakonfigurujte SSH tak, aby se uživatel pv090 na počítači alpha mohl bez hesla (jen za použití TGT) přihlásit pod stejným jménem i na počítač beta.

Na obou strojích umožňěte přihlášení tohoto uživatele přes SSH a změnu jeho kerberos hesla příkazem passswd (poznámka: kpasswd nestačí).

Na stroj beta nainstalujte KDC a replikujte na něj databázi kerbera ze stroje alpha pro váš realm. Pozor - obvyklý problém bývá s použitím správného hostname v principalu pro synchronizaci: měl by to být hostname, na který se mapuje příslušná IP adresa, ze které přichází požadavek na replikaci.

Hodnocení:
  • základní část:
    • Na stroji alpha běží KDC pro správný realm a je možno příkazem kinit získat lístek pro uživatele pv090.
    • Oba stroje mají systémový čas, který se liší od erigony o nejvíce 5 vteřin.
  • hodnocená část:
    • 1 bod: na obou strojích běží NTP démon, je nakonfigurován a je synchronizován s nakonfigurovanými servery (viz příkaz peers uvnitř programu ntpdc)
    • 1 bod: je možno se přihlásit přes SSH jako uživatel pv090 s kerberovým heslem i s lokálním heslem
    • 1 bod: je možno uživateli pv090 změnit kerberové heslo příkazem passwd a následně se i s novým heslem přihlásit
    • 1 bod: uživatel pv090 se umí mezi počítači alpha a beta přihlašovat bez hesla, jen s pomocí TGT
  • bonusová část:
    • 1 bod: funguje replikace databáze kerbera aspoň z příkazové řádky
    • 1 bod: funguje automatická inkrementální replikace při změně hesla
    • 1 bod: v DNS jsou korektní informace o nastavení Kerbera pro váš realm a klienti tyto informace používají

Klasifikace provozu sítě

Obsah:
Klasifikace provozu na síti. Prioritizace datových toků. QoS v IPv4 a IPv6. Fronty packetů (RED/WRED, CBQ, TBF, HTB, SFQ, WFQ, Prio), jejich základní vlastnosti a konfigurační parametry. Bufferbloat - co to je, možná řešení (adaptive queue management). Problematika omezení šířky pásma na vstupním rozhraní. Rozdělení zátěže přes více rozhraní. Modelování síťové zátěže a způsoby monitorování okamžitého průtoku dat (iftop, iptraf, ...).
Úkol:

Na počítači alpha nakonfigurujte omezení propustnosti linky k počítači beta na 1 Mbps (Mbps = megabit za sekundu). V rámci této šířky pásma nastavte priority provozu následovně:

  • Z počítače erigona na počítač beta bude mít provoz nejvyšší prioritu, ale bude omezený na 0.5 Mbps.
  • Z počítače ftp.fi.muni.cz dejte nižší prioritu než provozu z erigony a omezte jej na 768 kbps.
  • Ostatnímu provozu nechte nejnižší prioritu bez dalšího omezení.

Požadovanou konfiguraci uložte do samostatného init-skriptu podle použité distribuce.

Poznámka: všimněte si, že kapacity výše uvedených datových toků dávají v součtu více, než je celková požadovaná kapacita linky. Zajistěte, aby při kombinaci více datových toků byl dodržen i tento celkový limit.

Příklad rozdělení šířky pásma, pokud každý z aktivních toků bude ochoten vysílat libovolně velkou přidělenou rychlostí:

Přidělená šířka pásma [kbps]
Aktivní tokyerigonaftp serverostatní
erigona512
ftp server768
ostatní1024
erigona, ftp server512512
erigona, ostatní512512
ftp server, ostatní768256
erigona, ftp server, ostatní512512cca 0
Hodnocení:
  • základní část:
    • Funguje klasifikace provozu tak, že provoz z erigony a z ftp.fi.muni.cz (každý zvlášť) je omezený na požadovanou šířku pásma.
  • hodnocená část:
    • 1 bod: konfigurace se zavádí a ruší korektním init-skriptem
    • 2 body: žádná kombinace datových toků nepřekračuje celkovou kapacitu linky
    • 1 bod: fungují správně priority jednotlivých tříd provozu
  • bonusová část:
    • 2 body: funguje i pro IPv6 například z erigony

Síťové souborové systémy

Obsah:

Co je to Samba, protokol CIFS (protokol verze 1 a 2). Součásti balíku Samba, konfigurace serveru - globální nastavení, sdílení disků a tiskáren, spolupráce se světem Windows (Samba jako domain controller, jako člen domény, ...). Sdílení hesel mezi Windows a UN*Xem. Konfigurace klienta pod Linuxem (SMBFS, CIFS).

Co je to RPC, portmapper/rpcbind. Vlastnosti systému NFS (zamykání, cachování, atd.). Verze systému NFS (v3, v4, v4.1). NFS server (démoni, konfigurační soubory). NFS klient - autentizace (Kerberos). Automounter - vlastnosti, konfigurace.

Další síťové souborové systémy (AFS, GFS, ...).

Úkol:
  • Na počítači alpha zprovozněte NFS server verze 3 nebo novější. Vyexportujte pro počítač beta domovský adresář uživatele pv090nfs (read/write) a pro erigonu tentýž adresář read-only.
  • Na počítači alpha zprovozněte Samba server, který bude nabízet pod jménem pv090smb domovský adresář uživatele pv090smb pro počítač beta read/write a pro počítač erigona read-only. Heslo uživatele nastavte na pv090test.
  • Na počítači beta nakonfigurujte automounter tak, aby automaticky připojoval domovský adresář uživatele pv090nfs pomocí protokolu NFS z počítače alpha a domovský adresář uživatele pv090smb protokolem SMB/CIFS z počítače alpha.
Hodnocení:
  • základní část:
    • Z počítače beta je možno připojit přes NFS domovský adresář uživatele pv090nfs.
    • Z počítače beta je možno připojit přes SMB/CIFS domovský adresář uživatele pv090smb.
  • hodnocená část:
    • 1 bod: domovský adresář uživatele pv090nfs funguje přes NFS read-write se správnými UID na obou stranách.
    • 1 bod: domovský adresář uživatele pv090smb funguje přes SMB/CIFS read-write se správnými UID na obou stranách.
    • 1 bod: oba domovské adresáře jsou přístupné z erigony podle zadání.
    • 1 bod: na počítači beta je nakonfigurovaný automounter pro oba domovské adresáře podle zadání.
  • bonusová část:
    • 2 body: přístup přes NFS je zabezpečený autentizací přes Kerbera
    • 1 bod: NFS se používá ve verzi 4
    • 1 bod: NFS se používá nad IPv6
    • 1 bod: SMB/CIFS se používá nad IPv6

IPv6 - pokročilé vlastnosti

Obsah:

Pokročilé vlastnosti: autokonfigurace (stavová vs. bezstavová, bezpečnostní aspekty). Mobilita. IPsec, distribuce klíčů, AH a ESP hlavička, transportní a tunelovací režim.

Úkol:
  • Na počítači alpha nainstalujte a nakonfigurujte DHCPv6 server, který bude poskytovat konfiguraci pro počítač beta. Na počítači alpha posílejte do rozhraní směrem k počítači beta oznámení směrovače (RA) s cestou přes počítač alpha. Samo DHCPv6 by nemělo oznamovat směrovač pro danou síť, tato informace by měla být předána přes RA.
  • Počítač beta nakonfigurjte, aby místo statické IPv6 adresy používal dynamickou konfiguraci sítě, získanou z RA a DHCPv6.
  • Nakonfigurujte spoj mezi počítači alpha a beta jako zašifrovaný (ESP) pomocí IPSEC.
Hodnocení:
  • základní část:
    • Funguje síť mezi počítači alpha a beta.
    • Počítač beta má dynamicky přidělenou IPv6 adresu.
  • hodnocená část:
    • 1 bod: Počítač beta má správně default gateway pro IPv6.
    • 2 body: Zašifrovaná komunikace mezi počítači alpha a beta dle zadání..
  • bonusová část:

Zálohování

Obsah:
  • Typy zálohování (ad-hoc, plné, inkrementální, ...)
  • Úložiště pro zálohy (disk, NAS, "cloud", páska)
  • Nástroje a jejich porovnání (rsync a nástroje nad ním, tar/cpio/dump+recover, Clonezilla, Bacula, Amanda)
  • Bezpečnost záloh (šifrování, bezpečnost přenosu po síti)
Úkol:
  • Na počítači alpha nainstalujte a zprovozněte zálohovací software pro zálohování konfiguračních souborů (zejména adresář /etc) a databází LDAPu a Kerbera ze strojů alpha a beta. Zálohy vytvářejte také inkrementálně. Udržujte minimálně jednu plnou zálohu a tři inkrementální. Pamatujte na to, že LDAP i Kerberos mohou kdykoli i během zálohování obsah databáze měnit. Vysvětlete, jak pro tyto systémy zajišťujete konzistenci záloh.
Hodnocení:
  • základní část:
    • Funguje vytvoření plné zálohy konfiguračních souborů na stroji alpha.
  • hodnocená část:
    • 1 bod: Funguje zálohování po síti ze stroje beta.
    • 1 bod: Funguje inkrementální zálohování na obou strojích.
    • 2 body: Záloha LDAPu a Kerbera má zajišťenou konzistentnost i při zápisu během zálohování.
  • bonusová část:
    • 1 bod: Záloha stroje beta je šifrovaná tak, aby ji ze stroje alpha nebylo možno přečíst.

Archív referátů