Build all apps from Markdown content; Compose Desktop replaces GTK on Linux and Windows

- content/ + scripts/build-content.py produce content.json for every app
- stable lesson IDs with one-time progress migration (Swift, Kotlin)
- shared answer-check tests (tests/answers.json) for Kotlin and Swift
- android/desktop: Compose app with updater, speech and GTK progress import
- CI packages AppImage and Windows zip with ProGuard, runs the tests

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
pepaskopec-blip 2026-10-09 20:40:37 +02:00
commit c3bc32113b
964 changed files with 57285 additions and 1156 deletions

View file

@ -0,0 +1,6 @@
---
nazev: OSPF
popis: Routers tell each other which networks they know.
nazev_cviceni: Quiz: OSPF
nadpis_kvizu: Quiz on OSPF
---

View file

@ -0,0 +1,71 @@
---
id: site-3-ospf
puvodni: net3.1
nazev: OSPF
popis: Směrovače si samy řeknou, jaké sítě znají.
nazev_cviceni: Kvíz: OSPF
nadpis_kvizu: Kvíz k tématu OSPF
---
# Výklad
## Stejná oblast
*Sousedé*
- Směrovače v jednom spoji si vymění hello.
- Hello interval a dead interval musí sedět.
- Oblast 0 je páteř. Ostatní oblasti se k ní připojují.
- Pasivní rozhraní hello neposílá, třeba k počítačům.
> Tip: OSPF soused nevznikne, když se neshoduje oblast nebo hello.
## Kratší neznamená míň skoků
*Cena*
- Rychlejší linka má obvykle nižší cenu.
- Součet cen rozhodne, kudy paket půjde.
- Ruční cena umí odtáhnout provoz ze špatné linky.
- Změna topologie se přepočítá bez přepisování statických tras.
> Tip: OSPF sčítá cenu linek, ne počet routerů jako RIP.
## Co se z OSPF stane
*Tabulka*
- Naučená síť se vloží do směrovací tabulky.
- Když lepší cesta spadne, použije se náhradní.
- Redistribuce natáhne do OSPF i statiku nebo jiný protokol.
- Špatná redistribuce umí do sítě pustit cizí trasy.
> Tip: v tabulce uvidíte zdroj trasy, ne jen další skok.
# Kvíz
## Co musí u OSPF sousedů sedět?
- [x] Oblast a časy hello
- Stejná MAC adresa
- Stejné SSID
- Stejný počet VLAN na switchi
> Nesoulad hello nebo oblasti sousedství nesestaví.
## Podle čeho OSPF vybírá cestu?
- [x] Podle součtu cen linek
- Podle počtu písmen v názvu routeru
- Podle VLAN ID
- Podle stáří DNS záznamu
> Cena vyjadřuje náklad cesty, často odvozený z rychlosti.
## K čemu je pasivní rozhraní?
- [x] Neposílá hello tam, kde žádný soused být nemá
- Vypne směrování celé sítě
- Zapne NAT
- Skryje SSID
> K uživatelům se hello zbytečně neposílá.
## Co je oblast 0?
- [x] Páteř, ke které se ostatní oblasti připojují
- VLAN pro hosty
- Výchozí heslo WPA
- Číslo konzolového portu
> Bez páteře se víc oblastí OSPF nespojí správně.

View file

@ -0,0 +1,6 @@
---
nazev: Inter-VLAN routing
popis: One gateway for each VLAN.
nazev_cviceni: Quiz: Inter-VLAN routing
nadpis_kvizu: Quiz on Inter-VLAN routing
---

View file

@ -0,0 +1,71 @@
---
id: site-3-smerovani-mezi-vlan
puvodni: net3.2
nazev: Směrování mezi VLAN
popis: Jedna brána pro každou VLAN.
nazev_cviceni: Kvíz: Směrování mezi VLAN
nadpis_kvizu: Kvíz k tématu Směrování mezi VLAN
---
# Výklad
## Jeden spoj, víc VLAN
*Router na tyči*
- Switch pošle trunk do routeru.
- Každá VLAN má vlastní IP bránu.
- Stanice má jako bránu adresu své VLAN, ne cizí.
- Bez trasy mezi VLAN k sobě sítě nedosáhnou.
> Tip: trunk k routeru nese značky a každá VLAN má své podrozhraní.
## Směrování v přepínači
*L3 switch*
- SVI je virtuální rozhraní s adresou brány.
- Provoz mezi VLAN nemusí odejít na samostatný router.
- ACL na SVI hlídá, která VLAN kam smí.
- Zapomenuté SVI znamená, že VLAN nemá bránu.
> Tip: přepínač třetí vrstvy má pro VLAN rozhraní SVI.
## Když to nejde
*Chyby*
- Špatná maska na bráně rozhodí celou VLAN.
- Trunk, který VLAN nepropouští, bránu odstřihne.
- Stanice v access portu špatné VLAN dostane cizí DHCP.
- Kontrola: adresa, maska, brána, VLAN, trunk, ACL.
> Tip: nejdřív ověřte, že stanice je ve správné VLAN a má správnou bránu.
# Kvíz
## Co je brána pro stanici ve VLAN?
- [x] Adresa routeru nebo SVI v té samé VLAN
- Libovolná veřejná DNS adresa
- MAC adresa switche
- Číslo VLAN zapsané do masky
> Brána musí být dosažitelná na druhé vrstvě, tedy ve stejné VLAN.
## Co je SVI?
- [x] Virtuální rozhraní VLAN na L3 přepínači
- Typ optického vlákna
- Protokol pošty
- Záloha konfigurace
> SVI nese IP adresu brány dané VLAN.
## Jak router na tyči pozná VLAN?
- [x] Podle značky 802.1Q na trunku
- Podle barvy LED na počítači
- Podle jména v DNS
- Podle rychlosti ventilátoru
> Každé podrozhraní patří jedné značce.
## Co udělá trunk, který VLAN 20 nepropouští?
- [x] Střihne bránu VLAN 20 od zbytku sítě
- Smaže OSPF v celé škole
- Přepne Wi-Fi na WEP
- Zdvojí adresy DHCP
> Povolené VLAN na trunku jsou součást návrhu.

View file

@ -0,0 +1,6 @@
---
nazev: WAN
popis: A link between sites and towards the provider.
nazev_cviceni: Quiz: WAN
nadpis_kvizu: Quiz on WAN
---

View file

@ -0,0 +1,71 @@
---
id: site-3-wan
puvodni: net3.3
nazev: WAN
popis: Spoj mezi pobočkami a k poskytovateli.
nazev_cviceni: Kvíz: WAN
nadpis_kvizu: Kvíz k tématu WAN
---
# Výklad
## Kde končí vaše síť
*Okraj*
- WAN spojuje vzdálené sítě přes síť, kterou nevlastníte.
- Poskytovatel vám dá adresu, bránu a často i VLAN.
- Výchozí trasa obvykle míří právě sem.
- Výpadek poslední míle odřízne pobočku, i když jádro žije.
> Tip: za routerem k poskytovateli už neřídíte fyzickou cestu.
## Čím se to vozí
*Technologie*
- Starší spoje používaly pronajaté linky a PPP.
- MPLS u poskytovatele spojí pobočky jako jednu službu.
- Metro Ethernet přivede do budovy běžný ethernetový port.
- Rychlost, odezva a ztráty jsou parametry, které se sledují.
> Tip: dnešní WAN často vypadá jako ethernet, i když pod ním je jiná síť.
## Co domluvit
*Návrh*
- Jedna přípojka je jednoduchá a křehká.
- Druhý poskytovatel sníží riziko, když nejde stejnou trasou.
- Adresy od poskytovatele musí sedět s vaším NAT a firewallem.
- Na okraji filtrujte, co do školy z internetu lézt nemá.
> Tip: záložní spoj má smysl jen s cestou, která se na něj umí přepnout.
# Kvíz
## Co je WAN z pohledu školy?
- [x] Spoj mimo budovu, často přes poskytovatele
- Kabel mezi dvěma porty jednoho switche
- VLAN pro tiskárny
- Diskové pole
> WAN překračuje místní síť.
## Kam obvykle míří výchozí trasa?
- [x] K poskytovateli
- Na tiskárnu
- Do STP rootu
- Na adresu 127.0.0.1
> Co směrovač nezná, pošle ven.
## Proč dva spoje stejnou ulicí nemusí být záloha?
- [x] Jedna porucha překope oba naráz
- OSPF dva spoje zakazuje
- IPv4 umí jen jednu bránu na světě
- Ethernet nesmí mít zálohu
> Fyzicky oddělená trasa je součást redundance.
## Co je metro Ethernet?
- [x] WAN služba, která u vás končí ethernetovým portem
- Wi-Fi ve vlaku
- Protokol místo DNS
- Typ procesoru
> Pod portem může být síť poskytovatele, vy vidíte ethernet.

View file

@ -0,0 +1,6 @@
---
nazev: VPN
popis: An encrypted tunnel across a network you do not trust.
nazev_cviceni: Quiz: VPN
nadpis_kvizu: Quiz on VPN
---

View file

@ -0,0 +1,71 @@
---
id: site-3-vpn
puvodni: net3.4
nazev: VPN
popis: Šifrovaný tunel přes síť, které nevěříte.
nazev_cviceni: Kvíz: VPN
nadpis_kvizu: Kvíz k tématu VPN
---
# Výklad
## Cizí síť jako kabel
*Tunel*
- Mezi dvěma body se postaví šifrovaný tunel.
- Uvnitř mohou téct soukromé adresy.
- Venku je vidět jen obal mezi konci tunelu.
- Bez shodných klíčů nebo certifikátů tunel nevstane.
> Tip: VPN neschová provoz před sítí, ve které tunel končí.
## Pobočka a člověk
*Dva tvary*
- Site-to-site propojí dvě pobočky trvale.
- Remote access pustí notebook do školní sítě.
- Uživatel se ověřuje účtem, ne jen společným heslem na zdi.
- Split tunnel posílá tunelem jen školní sítě, zbytek jde přímo.
> Tip: site-to-site spojuje sítě, remote access jednoho uživatele.
## Když tunel stojí a data ne
*Chyby*
- Musí sedět návrh šifry na obou koncích.
- Firewall po cestě musí pustit port VPN.
- Uvnitř musí existovat trasa do cílových sítí.
- Příliš široký tunel stáhne na školu i provoz, který tam být neměl.
> Tip: tunel může svítit zeleně a přesto chybí trasa dovnitř.
# Kvíz
## Co VPN před cizí sítí skrývá?
- [x] Obsah a vnitřní adresy, venku je vidět obal tunelu
- I to, že nějaký provoz existuje
- MAC adresu switche ve třídě
- Úplně všechno včetně konců tunelu
> Koncové adresy tunelu vidět jsou, náklad ne.
## Čím se liší site-to-site od remote access?
- [x] První spojuje sítě, druhá připojuje uživatele
- První je Wi-Fi, druhá je VLAN
- Obě jen mění DNS
- Remote access nejde šifrovat
> Notebook není druhá pobočka, i když tunel vypadá podobně.
## Proč tunel svítí, ale server nehraje?
- [x] Chybí trasa nebo firewall uvnitř
- IPv4 zakazuje VPN
- STP tunely maže
- DNS přejmenuje šifru
> Šifra a dosažitelnost jsou dvě vrstvy.
## Co je split tunnel?
- [x] Tunelem jde jen provoz do vnitřních sítí
- Každý paket se rozpůlí
- VPN bez šifry
- Dva SSID na jednom kanále
> Internet z notebooku pak nemusí téct přes školu.

View file

@ -0,0 +1,6 @@
---
nazev: Firewalls and zones
popis: Who may talk to whom, not only whether the cable is lit.
nazev_cviceni: Quiz: Firewalls and zones
nadpis_kvizu: Quiz on Firewalls and zones
---

View file

@ -0,0 +1,71 @@
---
id: site-3-firewall-a-zony
puvodni: net3.5
nazev: Firewall a zóny
popis: Kdo s kým smí mluvit, ne jen jestli kabel svítí.
nazev_cviceni: Kvíz: Firewall a zóny
nadpis_kvizu: Kvíz k tématu Firewall a zóny
---
# Výklad
## Důvěra není stejná
*Zóny*
- Rozhraní se sdruží do zón podle důvěry.
- Z důvěryhodnější zóny ven se často povoluje snáz.
- Z internetu dovnitř se povoluje jen to, co je schválené.
- Pravidlo se píše od zóny ke zóně, ne jen na jednu adresu.
> Tip: LAN, WAN a DMZ nemají stejná pravidla.
## Pamatuje si spojení
*Stav*
- Nové spojení se kontroluje proti politice.
- Odpověď patřící ke spojení se pustí.
- Bezestavový filtr zkoumá každý paket zvlášť.
- Ukončené spojení se z tabulky smaže.
> Tip: stavový firewall pustí odpověď, aniž byste psali pravidlo nazpátek.
## Server, který má být vidět
*DMZ*
- Veřejná služba sedí v oddělené zóně.
- Z internetu se otevře jen její port.
- Z DMZ do LAN se pustí jen to, co služba opravdu potřebuje.
- Kompromitovaný web pak neotevře celou školu.
> Tip: web v DMZ nemá mít cestu ke všem diskům ve škole.
# Kvíz
## Proč se zóny liší?
- [x] Mají jinou důvěru a tedy jiná pravidla
- Každá zóna musí mít vlastní DNS jméno switche
- Zóny nahrazují IP adresy
- Bez zón nejde STP
> Internet a učebna nejsou stejně důvěryhodné.
## Co umí stavový firewall?
- [x] Pustí odpověď k už otevřenému spojení
- Smaže VLAN
- Přidělí MAC adresu
- Nahradí směrovací protokol
> Pamatuje si, kdo spojení začal.
## Kam patří veřejný web, který nemá vidět celou LAN?
- [x] Do DMZ
- Do stejné sítě jako účtárna
- Na access port ředitele
- Do nativní VLAN trunku bez pravidel
> DMZ omezí, kam se útočník dostane dál.
## Co samotná zóna ještě není?
- [x] Náhrada za konkrétní pravidla služeb
- Způsob, jak sdružit rozhraní
- Hranice důvěry
- Místo, kam se píše politika
> Zóna bez pravidel nic nechrání.

View file

@ -0,0 +1,6 @@
---
nazev: QoS
popis: When the link is full, someone has to go first.
nazev_cviceni: Quiz: QoS
nadpis_kvizu: Quiz on QoS
---

View file

@ -0,0 +1,71 @@
---
id: site-3-qos
puvodni: net3.6
nazev: QoS
popis: Když je linka plná, někdo musí dostat přednost.
nazev_cviceni: Kvíz: QoS
nadpis_kvizu: Kvíz k tématu QoS
---
# Výklad
## Ne všechno snese čekání
*Fronty*
- Hlas a videohovor kazí zpoždění a kolísání.
- Záloha disku snese čekání líp než telefonát.
- Fronta na úzké lince řadí pakety.
- Bez označení provozu switch neví, co je hlas.
> Tip: QoS nevytvoří rychlost, jen rozhodne, kdo počká.
## Kdo si řekne o přednost
*Značky*
- IP hlavička umí nést DSCP.
- Ethernet umí prioritu na VLAN značce.
- Na vstupu se značka přepíše podle politiky.
- Hlasová VLAN se často značí automaticky.
> Tip: značce z koncového portu nevěřte, uživatel si ji může nastavit sám.
## Kde to má smysl
*Praxe*
- Úzké hrdlo bývá WAN, ne páteřní switch.
- Rezervace pro hlas nesmí sežrat celou linku.
- Testujte hovor ve chvíli, kdy běží velká kopie.
- Špatná politika umí zpomalit i správu sítě.
> Tip: na prázdné gigabitové lince QoS nic viditelného neudělá.
# Kvíz
## Co QoS neumí?
- [x] Vyrobit větší rychlost linky
- Dát přednost hlasu před zálohou
- Omezit kolísání hovoru
- Označit provoz
> Dělí existující kapacitu, nepřidá ji.
## Proč se značka z počítače přepisuje?
- [x] Uživatel by si jinak dal nejvyšší prioritu
- DSCP nejde číst
- IPv4 značky zakazuje
- STP značky maže
> Důvěryhodná značka vznikne na vstupu podle pravidel.
## Kde QoS obvykle pomůže nejdřív?
- [x] Na pomalé WAN lince
- Na prázdném 10Gb portu mezi switchi
- Uvnitř jednoho počítače na smyčce
- Na vypnutém Wi-Fi
> Přednost se projeví, až když se linka plní.
## Který provoz čekání snese hůř?
- [x] Telefonní hovor
- Noční kopie disku
- Stahování aktualizace
- Archiv pošty
> Hlas potřebuje malé a stálé zpoždění.

View file

@ -0,0 +1,6 @@
---
nazev: Watching the network
popis: SNMP, syslog, and what a graph really tells you.
nazev_cviceni: Quiz: Watching the network
nadpis_kvizu: Quiz on Watching the network
---

View file

@ -0,0 +1,71 @@
---
id: site-3-dohled-site
puvodni: net3.7
nazev: Dohled sítě
popis: SNMP, syslog a co z grafu opravdu plyne.
nazev_cviceni: Kvíz: Dohled sítě
nadpis_kvizu: Kvíz k tématu Dohled sítě
---
# Výklad
## Čísla z zařízení
*SNMP*
- Dohled se ptá na vytížení, chyby a stav portů.
- Komunita není ozdoba, je to přístup.
- SNMPv3 umí uživatele a šifrování.
- Zařízení má poslouchat SNMP jen ze sítě dohledu.
> Tip: SNMPv2c posílá jméno komunity skoro jako heslo v čistém textu.
## Věty o tom, co se stalo
*Syslog*
- Syslog odnáší hlášky na server.
- Úrovně od ladění po nouzi se nemají všechny sypat do jedné hromady.
- Čas na zařízeních musí sedět, jinak nejde srovnat události.
- NTP je proto součást dohledu, ne jen hodiny na zdi.
> Tip: log na zařízení se při restartu může ztratit. Posílejte ho pryč.
## Graf není diagnóza
*Čtení*
- Chyby na portu často znamenají kabel nebo duplex.
- Vytrvalé vytížení WAN řekne, jestli je čas na silnější spoj.
- Výpadek, který nikdo nevidí, se bude opakovat.
- Upozornění má chodit člověku, který může reagovat.
> Tip: špička jednou za den může být záloha, ne útok.
# Kvíz
## Proč SNMPv2c nestačí na nezabezpečené síti?
- [x] Jméno komunity jde odposlechnout
- Neumí číst vytížení
- Funguje jen na IPv6
- Maže syslog
> Komunita cestuje bez pořádné ochrany. Lepší je SNMPv3.
## Proč posílat syslog pryč ze zařízení?
- [x] Lokální log se při restartu může ztratit
- Syslog nahrazuje heslo
- Switch jinak vypne porty
- DNS bez logu nefunguje
> Po restartu už příčinu pádu na zařízení nemusíte najít.
## K čemu je při dohledu NTP?
- [x] Aby časy událostí šly srovnat
- Aby přidělil VLAN
- Aby šifroval Wi-Fi
- Aby nahradil SNMP
> Bez společného času nejde říct, co bylo dřív.
## Co často znamenají rostoucí chyby na portu?
- [x] Špatný kabel nebo duplex
- Že je VLAN správně
- Že OSPF konverguje
- Že DNS TTL vypršelo
> Fyzická vrstva se v počítadlech chyb projeví dřív než v teorii.

View file

@ -0,0 +1,6 @@
---
nazev: Configuration backups
popis: What to save before a switch is replaced.
nazev_cviceni: Quiz: Configuration backups
nadpis_kvizu: Quiz on Configuration backups
---

View file

@ -0,0 +1,71 @@
---
id: site-3-zaloha-konfigurace
puvodni: net3.8
nazev: Záloha konfigurace
popis: Co uložit, než se přepínač vymění.
nazev_cviceni: Kvíz: Záloha konfigurace
nadpis_kvizu: Kvíz k tématu Záloha konfigurace
---
# Výklad
## Restart není uložení
*Běžící a uložená*
- Běžící konfigurace je to, co zařízení právě dělá.
- Startovní se načte po zapnutí.
- Uložení zkopíruje běžící do startovní.
- Bez uložení druhý den síť vypadá jako včera.
> Tip: změna v běžící konfiguraci po restartu zmizí, dokud ji neuložíte.
## Nejen na zařízení
*Kopie ven*
- Konfigurace patří na server mimo to zařízení.
- Ukládejte i verzi, ať víte, co se změnilo.
- Hesla v exportu mohou být čitelná. Soubor chraňte.
- Automatická záloha po změně porazí dobrý úmysl.
> Tip: záloha na tom samém přepínači shoří spolu s ním.
## Aby to přečetl i kolega
*Popis*
- Popis portu říká, co je na druhém konci.
- Schéma VLAN a adres má sedět s konfigurací.
- Změna bez poznámky se špatně vrací.
- Nový switch postavíte z zálohy jen tehdy, když záloha existuje.
> Tip: port bez popisu je za půl roku hádanka.
# Kvíz
## Co se stane se změnou, kterou neuložíte?
- [x] Po restartu zmizí
- Zapíše se do VLAN navždy
- Přepíše firmware
- Pošle se sama do DNS
> Běžící konfigurace není totéž co startovní.
## Proč záloha jen na tom samém switchi nestačí?
- [x] S poškozeným switchem zmizí i ona
- Switch zálohy šifruje tak, že je nečitelné i pro vás
- STP zálohy maže
- IPv6 zálohy zakazuje
> Kopie musí žít jinde.
## Co má být u portu napsané?
- [x] Co je na druhém konci
- Heslo administrátora
- Celá směrovací tabulka
- Soukromý klíč VPN
> Popis portu šetří hodiny při poruše.
## Proč chránit soubor se zálohou?
- [x] Může obsahovat čitelná hesla
- Soubor sám otevírá porty
- DNS ho publikuje
- Je větší než disk
> Export není vždy v zašifrované podobě.