Přejít na obsah

Nastavení cookies

Zvolte, které druhy cookies povolíte. Svou volbu můžete kdykoli změnit přes Nastavení cookies v dolní části každé stránky. Prohlášení o ochraně osobních údajů

Nezbytné

Vždy zapnuté

Potřebné pro přihlášení, uchování košíku a zapamatování vašich voleb. Jsou vždy zapnuté.

Které cookies?
  • weboke_sessie, weboke_klant, weboke_remember: vaše relace a trvalé přihlášení
  • weboke_basket: váš košík
  • wkBtwIncl: zobrazení cen s DPH nebo bez DPH
  • wok_cookies: vaše volba cookies, 12 měsíců

Měří, která reklama vede k návštěvě nebo objednávce, abychom neplatili za reklamy, které nic nepřinášejí.

Které cookies?
  • Google Ads přes Google Tag Manager (_gcl_au, _gcl_aw), až 90 dní
  • OpenAI Ads, reklamy v ChatGPT
  • wok_aff: partner, který vás k nám doporučil (partnerský program), 60 dní

4,6

Země a jazyk

Každá země má vlastní web s cenami a DPH dané země.

Zobrazit

Závěrečná kontrola: Váš server pod drobnohledem

Modul 10: Zůstaňte v bezpečí · Doba čtení: 10 min.

Cíl lekce: Po této lekci dokážete posoudit svůj server pomocí kontrolního seznamu a automatické kontroly zvenku, víte, které body mají přednost, a máte pevný rytmus údržby a stručnou dokumentaci serveru.

Klíčové pojmy: kontrolní seznam, priorita, kontrola zvenku, dokumentace serveru, rytmus údržby (týdně, měsíčně, čtvrtletně, ročně), datum konce podpory vydání, test obnovy

Od jednotlivých lekcí k jednomu celku

V tomto kurzu jste krok za krokem nastavili server: bezpečné přihlašování, oprávnění, aktualizace, firewall, služby, web s https, zálohy, monitoring a kontejnery. V této poslední lekci vše shrnete do jednoho seznamu. Projdete svůj server, necháte program kurzu podívat se na něj zvenku a stanovíte, jak budete server v příštích letech udržovat.

Server není nikdy "hotový". Software zastarává, certifikáty vypršují, disky se zaplňují, vydání se dostávají na konec podpory (end of life). Pevný rytmus je proto stejně důležitý jako první nastavení.

Kontrolní seznam seřazený podle důležitosti

Ne všechno je stejně naléhavé. Procházejte seznam shora dolů: první bloky zabrání většině problémů.

Blok 1: nikdo se jen tak nedostane dovnitř (modul 2, 3, 5)

  • Přihlašování pouze pomocí klíčů; PasswordAuthentication no a KbdInteractiveAuthentication no, ověřeno pomocí sudo sshd -T.
  • Root se nepřihlašuje heslem; pracujete jako běžný uživatel se sudo.
  • Databáze, cache a vyhledávací clustery naslouchají na 127.0.0.1; porty 3306, 5432, 6379, 9200 a 27017 jsou zvenku uzavřené, pro IPv4 i IPv6.
  • Firewall, který ve výchozím stavu blokuje veškerý příchozí provoz; otevřené jsou jen porty, které potřebujete.
  • fail2ban běží pro SSH (fail2ban-client status sshd).

Blok 2: bezpečnostní díry se záplatují (modul 4)

  • Automatické bezpečnostní aktualizace jsou zapnuté a ověřené (log, apt list --upgradable).
  • Plán pro restartování; /var/run/reboot-required tam nezůstává celé týdny.
  • Vydání je stále podporováno; datum konce podpory máte v kalendáři.

Blok 3: můžete se vrátit (modul 8)

  • Šifrované zálohy mimo server, automatické a s monitoringem.
  • Test obnovy je proveden a víte, jak dlouho obnova trvá.
  • Víte, jak vytvořit snapshot a otevřít konzoli.

Blok 4: vnější stránka je v pořádku (modul 7)

  • Záznamy A a AAAA ukazují na Váš server; reverzní DNS (PTR) ukazuje zpět na stejné jméno.
  • https s platným certifikátem, který se sám obnovuje; http přesměrovává na https.
  • HSTS a několik bezpečnostních hlaviček; security.txt s funkční kontaktní adresou a datem vypršení.

Blok 5: vidíte, co se děje (modul 6, 8)

  • Journal je trvalý; můžete číst logy z doby před restartem.
  • Monitoring zvenku (dostupnost, certifikát) i zevnitř (disk, služby), s upozorněními, která skutečně dorazí.
  • systemctl --failed je prázdný.

Blok 6: kontejnery pod kontrolou (modul 9, pokud používáte Docker)

  • Porty kontejnerů na 127.0.0.1 nebo za reverzní proxy; žádný docker.sock v kontejnerech, které to opravdu nepotřebují.
  • Volumes jsou součástí zálohy; images se pravidelně aktualizují.
  • Tajné údaje jsou v souborech .env s přísnými oprávněními, ne v Gitu.

Kontrola zvenku

Část tohoto seznamu dokáže program kurzu zkontrolovat zvenku, přesně tak, jak Váš server vidí kdokoli na internetu. Závěrečný úkol (Z10.4) spojuje kontroly z předchozích úkolů:

OblastCo program děláZ lekce
SSHPřečte banner s verzí a zjistí, jaké způsoby přihlášení Váš server nabízí pro Vaše uživatelské jméno; nepřihlašuje se2.2
Databázové portyPouze se pokusí o spojení na 3306, 5432, 6379, 9200 a 27017; nic neodesílá5.1
httpsZkontroluje certifikát (platný, důvěryhodný, správné jméno)7.3
HlavičkyPřečte HSTS a další bezpečnostní hlavičky7.4
security.txtStáhne /.well-known/security.txt a zkontroluje Contact a Expires7.4
KontejnerHledá hlavičku s Vaším kódem, kterou nastavila Vaše reverzní proxy9.4

Program na Vašem serveru nic nespouští, nezkouší hesla a neskenuje žádné další porty. Každou adresu lze zkontrolovat jen několikrát za hodinu. Zelený výsledek znamená: zvenku nejsou vidět nejznámější chyby. Neříká nic o tom, co se děje uvnitř Vašeho serveru; to je zbytek kontrolního seznamu a ten projdete sami.

Dokumentace serveru

Pro každý server si sepište krátký dokument a uchovávejte ho mimo server (například ve správci hesel nebo ve sdílené složce):

  • název, IP adresy, poskytovatel, vydání a datum konce podpory;
  • co na serveru běží (služby, kontejnery, weby) a proč;
  • které porty jsou otevřené a k čemu;
  • kde jsou zálohy, jak je obnovit a kdy proběhl poslední test;
  • jaké tajné údaje jsou na serveru (ne samotné tajné údaje, ale které to jsou a kde se mění);
  • co jste vědomě udělali jinak než ve výchozím stavu (například doporučení nástroje Lynis, které jste přeskočili, lekce 10.1);
  • kdo má přístup (které klíče jsou v authorized_keys).

Tato dokumentace je k nezaplacení při incidentu (lekce 10.3), při upgradu vydání (lekce 4.3) a když správu převezme někdo jiný.

Rytmus údržby

Bez rytmu pozornost ochabuje. Příklad pro malý server; přizpůsobte si ho své situaci.

KdyCo
Každý týdenProjít monitoring a upozornění; systemctl --failed; restartovat, pokud existuje /var/run/reboot-required (nebo ověřit, že automatický restart proběhl)
Každý měsícapt list --upgradable (nezůstává něco viset?); docker compose pull a up -d pro Vaše kontejnery, spolu s poznámkami k vydání; místo na disku; fail2ban-client status; log s ohledem na nápadné chyby (journalctl -p err --since "1 month ago")
Každé čtvrtletíTest obnovy ze zálohy; projít authorized_keys a uživatele (odebrat ty, kdo už nemají mít přístup); znovu spustit Lynis; znovu provést závěrečnou kontrolu zvenku (úkol Z10.4)
Každý rokAktualizovat security.txt (Expires); zkontrolovat datum konce podpory vydání a naplánovat upgrade; aktualizovat dokumentaci serveru a krizový plán

Zapište si tyto termíny do kalendáře. Velkou část můžete také automatizovat pomocí monitoringu z lekce 8.3, ale dívat se je stále potřeba.

V praxi

Ať je Váš server u WebOké, nebo u jiného poskytovatele: poskytovatel se stará o hardware, síť a možnost vytvářet snapshoty a zálohy, Vy o vše uvnitř serveru. Tento kurz je svépomoc: nikdo se Vám na server nedívá. S tímto kontrolním seznamem, dokumentací a rytmem ale máte vše potřebné k tomu, abyste správu zvládli samostatně a dobře.

Shrnutí

  • Procházejte server po blocích: nikdo se jen tak nedostane dovnitř, bezpečnostní díry se záplatují, můžete se vrátit, vnější stránka je v pořádku, vidíte, co se děje, kontejnery pod kontrolou.
  • Kontrola zvenku se dívá na způsoby přihlášení přes SSH, databázové porty, https, hlavičky, security.txt a hlavičku Vašeho kontejneru; zbytek projdete sami.
  • Veďte dokumentaci serveru, uloženou mimo server.
  • Pracujte v pevném rytmu: týdně, měsíčně, čtvrtletně a ročně.

Kvíz

1. Máte jen hodinu. Kterým bodem z kontrolního seznamu začnete?



2. Závěrečná kontrola zvenku je celá zelená. Co to znamená?



3. Proč uchováváte dokumentaci serveru mimo server?



4. Který úkol patří do čtvrtletního rytmu?



5. Váš security.txt má datum Expires v květnu příštího roku. Co uděláte?



Úkol

Úkol Z10.4: Závěrečný úkol: Váš server zvenku. Nechte program kurzu zkontrolovat Váš server zvenku najednou: způsoby přihlášení přes SSH pro Vaše uživatelské jméno, pět databázových portů, https a hlavičky Vašeho webu, Váš security.txt a hlavičku X-Weboke-Cursus s Vaším kódem na jménu, kde běží Váš kontejner. Kromě toho vyplňte kontrolní seznam bloků 1 až 6 pro to, co program vidět nemůže.

Úkol Z10.4: Závěrečný úkol: Váš server zvenku

Nepřihlašujeme se a nezkoušíme žádné heslo ani klíč. Nejprve prokážete, že server patří Vám: klikněte na „Zobrazit můj kód“ a umístěte na webový server svého hostname soubor /.well-known/weboke-cursus-<code>.txt, který obsahuje pouze tento kód. Stáhneme ho přímo z každé IP adresy, kterou kontrolujeme (IPv4 a IPv6 zvlášť); TXT záznam se zde nepočítá. Kontrola probíhá z heavy.webawere.nl (185.158.167.16 a 2a07:ae80:100:0:185:158:167:16), nikoli z našeho webového serveru. Pouze pro přihlášené studenty; nejvýše 6 kontrol za hodinu na jeden server. Závěrečná kontrola provede postupně kontroly z úkolů Z2.2, Z5.1, Z7.3, Z7.4 a Z9.4. SSH, porty a https musí být zelené; hlavičky, security.txt a hlavička X-Weboke-Cursus jsou doporučení.








Co vyplníte a co zjistíme, neukládáme. Váš prohlížeč si pamatuje Vaše odpovědi a to, zda jste úkol splnili. Pokud jste přihlášeni, ukládáme v sekci Moje kurzy pouze to, že jste úkol měli (téměř) správně; i to tam můžete odstranit.

Úkol O10.4: Váš rytmus údržby. Vytvořte si vlastní dokumentaci serveru a rytmus údržby: co děláte týdně, měsíčně, čtvrtletně a ročně, a zapište si tyto termíny do kalendáře.

Úkol O10.4: Váš rytmus údržby

Tento úkol provádíte sami; nikdo ho nekontroluje. Odškrtněte, co jste udělali, a označte úkol jako splněný.




Vaše zaškrtnutí a poznámky zůstávají pouze v tomto prohlížeči; nikam je neposíláme. Pokud jste přihlášeni, ukládáme v sekci Moje kurzy pouze to, že jste úkol splnili.

Doporučujeme k přečtení

Chvíli strpení…

Nastavení vašich domén

U každé domény nastavte jmenné servery, propojení s hostingem a to, kdo bude držitelem.

Načítání vašich domén…