- volba vhodné verze (Windows XP, 8, 10...)
- volba vhodné edice (Windows Pro, Enterprise,...)
- x86 vs. x64 varianta
- kompatibilita HW, aplikací, migrace uživatelských dat, zaškolení uživatelů
- nastavení BIOSu/UEFI a konfigurace SATA/AHCI/IDE
- replace computer -- nový počítač, přeneseme data
- refresh computer -- data jsou umístěna na dočasné úložiště, počítač je přeinstalován a data vrácena zpět
- upgrade computer -- aktualizace stávajícího OS (trvá dlouho, aplikace nefungují, hromadění dat, chyby, pomalejší systém)
- High-Touch -- všechno ručně (snadné, nehodí se pro více PC)
- Lite-Touch -- minimální interakce (zapnutí pc, konfigurace...)
- Zero-Touch -- bezdotyková interakce (boot ze sítě)
VHDX (Virtual Hard Disk) = soubor, do kterého lze ukládat data tak, jakoby se jednalo o fyzický disk (přenositelnost, nezávislost na fyzickém disku, možnost kombinace více OS bez rozdělování disku na oddíly)
- obraz instalace
- thick -- kromě OS obsahuje i aplikace (snadné vytvoření, těžší údržba a aktualizace)
- thin -- OS a nezbytné nutnosti (pomalejší, snažší údržba, vyžaduje infrastrukturu pro instalaci aplikací)
- hybrid -- kombinace thin a naskryptované instalace aplikací
refresh -- zachová data a resetuje Windows
reset -- uvede počítač do továrního nastavení
- ruční zadání OEM klíče
- MAK (Multiple Activation Key) -- jeden klíč umožňuje násobnou aktivaci
- KMS (Key Management Service) -- automatická aktivace, je dočasná, vyžaduje min. 25 počítačů
POST (Powet-on self-test) -- inicializace a detekce HW, RAM, zavedení OS
- Basic Input/Output System
- inicializace a abstrakce HW, zavedení OS
- najde bootovatelné zařízení, spustí jej (příp. vypíše chybové hlášky)
- na začátku disku je MBR (Master Boot Record), ve kterém je spustitelná část -- Boot code, která hledá v partition table aktivní oddíl (Boot sector) obsahující soubory potřebné k zavedení OS (problémy: špatné nastavení BIOSu, zasunutá flashka, HW problém -- beep codes...)
- Boot code převezme řízení a spustí BootMgr, který zavede OS
- Unified Extensible Firmware Interface
- nový standard pro rozhraní mezi firmware a OS
- náhrada BIOSu
- pouze pro 64bitý OS
- spustí boot application (tedy BootMgr pro UEFI)
Class zero -- bez podpory UEFI
Class one -- pre-boot podpora, nepodporováno ve Windows
Class two -- podpora zavedení OS v UEFI i "simulaci" BIOSu
Class three -- podpora UEFI
BCD (Boot Configuration Database) -- nabídka různých operačních systémů před zavedením
Safe mode, Boot Logging, Last Know Good, Restart on system failure
Windows Recovery Environment -- minimálistická verze Windows sloužící pro diagnostiku problémů při startu
- centrální hierarchická databáze sloužící k ukládání informací potřebných ke konfiguraci systému, aplikací a HW
- obsahuje: profily uživatelů, aplikace, nastavení vlastností složky, informace o HW,...
- komponenty: subtree (kořenový adresář), keys (složka), entries (jméno, typ a hodnota)
- 6 hlavních subtree: HKCR, HKCU, HKLM, HKU, HKCC, HKPD
- interpretr příkazů
- založen na platformě .NET
- objektový
- podporuje většinu CMD příkazů
- funkce, která něco udělá a případně vrátí výsledek
- co-s_čím
- (get, set, stop, start,...)-(process, service, eroor, event, job,...)
- vlastní a obecné paramtery
- alias -- zkratka pro cmdlet
Get-Command
, Get-Help
, Get-member
, Foreach-object
, Format-list
, Format-table
, Group-object
, Sort-object
- řetězení příkazů za sebe
- výstup prvního cmdletu se předá jako vstup druhému
|
- filtrování výstupu:
Get-process | Where-Object {$_.name -eq "notepad"}
,Get-Process | Select-object *
$Name = "Pepik"
- do while, while, do until, for, foreach
- Try & Catch
$lastexitcode
-- obsahuje kód naposled spuštěného programu$?
-- obsahuje$true
pokud naposled vyvolaná funkce skončila úspěchemWrite-Error
-- vypíše chybovou hlášku$Error
-- pole obsahující všechny proběhlé chyby
- standardně je zakázáno
.\cesta\skript.ps1
.psm1
- obsahují funkce, proměnné,... vztahující se k určité problematice
- import více funkcí pomocí
Import-Module
- PS skript, do kterého můžeme přidat funkce, aliasy a proměnné, které pak budou dostupné v nově otevřených PS konzolích
$profile
pevný disk -- připojen technologií PATA, SATA nebo SCSI (neočekáváme odpojení -> využíváme cache paměť)
vyměnitelný disk -- připojen pomocí USB nebo FireWire
sektor -- adresovatelný blok pevné délky, jeho velikost je dána HW
partition (oddíl) -- souvislá "kolekce" sektorů na disku (fyzický)
volume -- logický oddíl
Simple Volume (svazek) -- reprezentace sektorů z jednoho oddílu
Multipartition Volume -- reprezentace sektorů z více oddílu
partition table (tabulka rozdělení disku) -- obsahuje informace o jednotlivých oddílech
sektor -- nejmenší adresovatelná jednotka v kontextu úložišť (512b, 4096b)
režim 512e -- pracuje se sekteroy o velikosti 512b na disku pro 4096b (vliv na výkon; zápis, zarovnání)
- Master Boot Record
- BIOS
- starší systémy, vyměnitelné disky
Basic Disk
- výchozí typ disku
- informace o rozdělení uložny v partition table
- Basic -> Dynamic konverze je bezztrátová
- základní funkce -> snadno opravitelný
- oddíly: primary (max 4), extended (obal pro logical), logical (neomezený počet)
Dynamic Disk
- pokročilé funkce
- velké množství svazků
- Danymic -> Basic konverze je ztrátová
- Simple Volume (volné místo nemusí navazovat)
- Spanned Volume (místo se zaplňuje postupně)
- Striped Volume (RAID 0, zvýšení výkonu)
- Mirror Volume (RAID 1, obsah jednoho oddílu je zkopírován na druhý)
- GUID Partition Table
- UEFI
- obsahuje záložní partition table
- je vhodnější pro nové systémy
- jednotce nelze přiřadit více písmen
- stejné písmeno nelze přiřadit více jednotkám
- jednotce je možné přiřadit více cest
- jednotce není nutné přiřadit písmeno nebo cestu
Storage pool -- kolekce fyzických disků
Storage space -- virtuální disk vytvořený z volného místa v Storage pool
- simple oddíl -- RAID 0 (žádná odolnost vůči chybám)
- parity oddíl -- mohou selhat až 2 disky (horší výkon pro zápis)
- mirror oddíl -- two-way (data na 2 discích), three-way (data na 3 discích)
Storage tiers -- vytvoří virtuální disk z HDD a SSD a využívá Write back cache
- CDFS, UDF, FAT12, FAT16, FAT32, exFAT, NTFS, ReFS
- způsobují fragmentaci
- defragmentace probíhá automaticky
SuperFetch -- monitoring využívání aplikací, predikuje používání dat a načítá je do paměti
ReadyBoost -- využití flash paměti jako cache
- domácí skupina -- domácí prostředí a stejná podsíť, sdílení souborů, tiskáren a streamování médií,
- pracovní skupina -- stejná podsíť, počítače jsou si rovnocenné, každý pc má vlastní uživatelské účty a skupiny
- doména -- počítače na pracovišti, servery a běžná pc, na účet se přihlásím z libovolného
- identita uživatele
- autentizace a přístup ke zdrojům
- přihlašovací jméno = jméno účtu (max. 20 znaků, non-casesenstive) + jméno počítače/domény, kde je účet založen
lokální účet -- uložen v SAM (Security Accounts Manager) na každém pc, přístup k lokálním zdrojům
doménový účet -- uložen v Active Directory na doménovém řadiči, přístup ke zdrojům domény
Microsoft účet -- uložen v Microsoft Cloud, přístup ke zdrojům připojeným k Microsoft Cloud
- přihlášení (přihlašovací údaje)
- porovnání údajů s SAM databází
- vytoveření access tokenu
Access token -- obsahuje informace o identitě uživatele (SID), jeho právech a skupinách
SID (Security Identifier) -- id entity v systému, nikdy se nemění, pc má také SID (admin končí -500)
- kolekce uživatelských účtu
- zjednodušení a zpřehlednění správy
- skupiny nelze vnořovat
- zabudované skupiny lze přejmenovat, nikoli smazat (Administrators, Backup Operators, Guests, Network Configuration Operators, Power Users, Remote Desktop Users, Users,...)
- speciální skupiny: Everyone, Authenticated Users, Creator Owner,... (systém do nich uživatele umisťuje dynamicky)
Credential manager -- nástroj pro ukládání hesel použitých ve Windows
oprávnění -- co mohou různí uživatelé dělat s konkrétním objekterm
uživatelská práva -- co může dělat uživatel
- New Technology File System
- použije se pouze na média formatovaná pomocí NTFS
- oprávnění pro každou složku a soubor
- oprávnění mění vlastník a uživatel s právem Change Premissions
- práva se dědí z nadřezených složek (explicitní -- patřící objektu, zděděná)
- explicitní deny > explicitní allow > zděděné deny > zděděné allow (explicitní deny má vždy přednost)
- převzetí vlastnictví: oprávnění Take ownership nebo právo Restore files and directories (Administrators, Backup Operators)
access token -- generovaný při přihlášení, obsahuje: identitu uživatele, členství ve skupinách, dostupná práva
security descriptor -- ACL: volitelný seznam přístupu (DACL) & seznam řízení auditování přístupu (SACL), přiřazen jednomu objektu
Access Control Entry -- položka DACL nebo SACL, obsahuje: SID, přístupovou masku (množina oprávnění), typový příznak (allow/deny/audit)
soubor -- pojmenovaná kolekce dat
atributy souborů: read-only, hidden, archive, compressed, encrypted, system
složka -- pojmenovaná kolekce souborů
- Read
- Write
- List Folder Content -- pouze pro složky
- Read & Execute
- Modify
- Full control
- stanu se novým vlastníkem objektu
kopírování -- nutné oprávnění Write na cílovou složku, nový objekt dědí oprávnění cílové složky
přesun v rámci jedné NTFS jednotky -- nutné oprávnění Write na cílovou složku a Modify na původní objekt, objektu zůstává původní oprávnění
přesun v rámci různých NTFS jednotek -- nutné oprávnění Write na cílovou složku a Modify na původní objekt, nový objekt dědí oprávnění cílové složky
- sdílet lze pouze složku nikoli soubor
- sdílenou složku mohou vytvořit členové skupiny Administrators
- oprávnění: read, change, full control
- share with odebírá NTFS oprávnění
- public folder sharing, file and printer sharing, password protected sharing
SMB protokol -- klient-server protokol pro sdílený přístup k prostředkům na síti
- Network Clients
- Network Services
- Network Protocols
- UNC (Universal Naming Convention):
\\jmeno_serveru\jmeno_zdroje
- sada osobních nastavení jednotlivých úživatelů (pozadí plochy, spořič, zvuk,...)
- ke každému uživatelskému účtu je přiřazen alespoň jeden profil
- uživatelské registry jsou uloženy v ntuser.dat, UsrClass.dat
- přístupný pouze z lokálního pc
- změny jsou do profilu ukládány po odhlášení
- přístupný ze všech pc v síti
- je uložen na serveru ve sdílené složce
- při přihlášení se stahují pouze změny (kopie je stáhnutá stále na pc)
- při odhlášení se změny synchronizují na server
- jeho velikost ovlivňuje délku přihlašování uživatelů
- aplikace na všech pc by měli být na stejném místě a mít stejnou verzi
- nelze v něm provést trvalé změny
- vytváří se z roaming nebo local profilu přejmenováním ntuser.dat na ntuser.man
- Default User (Default) -- vzor pro všechny nové profily
- All Users (Public) -- nastavení platná pro všechny uživatele
- uživatel chce přistupovat k datům z více pc
- sdílení na serveru
- sdílená složka na serveru
- není stažen při přihlášení
- oddělení uživatelských a systémových dat
- část bezpečnostní infrastruktury (od Vista)
- bez vyžádání se aplikace pouští s obyčejnými právy i když je pouští administrátor
- snaha o zabránění chyb
- snaha o přidělení pouze nezbytných práv
- uživateli s admin. právy jsou vygenerovány 2 tokeny -- obyčejný a privilegovaný
- běžně používá obyčejný, pokud chce použít privilegovaný, musí potvrdit dialog
- pravý klik -> Spustit jako administrátor
- vlastnosti exe souboru -> Kompatibilita -> Spouštět jako administrátor
- přidat do manifestu "requestPriviles"
- PS:
-Verb RunAs
- případy, kdy aplikace chtějí zapisovat do chráněných oblastí (%Program Files%, %WinDir%, %WinDir%\System32, HKEY_LOCAL_MACHINE\Software)
- požadavek je přesměrován do uživatelského profilu (\AppData\Local\VirtualStore)
- aplikace je 64 bitová
- aplikace běží s admin právy
- existuje "manifest" spustitelného souboru
- admin nemá přístupová práva ke zdoji
- omezení spustitelného kódu a dat určitému účtu
- integritní úrovně:
- high (administrátor) -- může zapisovat všude
- medium (běžný uživatel) -- může zapisovat do medium a low
- low (nedůvěryhodný) -- může zapisovat jen do low
- příznaky (politiky): no write up, no read up, no execute up
- při přihlášení je uživateli vygenerován token, který určuje integritní úroveň
- proces dědí integritní úroveň rodiče (případně bere to nižší)
Secure desktop -- dialog, kterým potvrzujeme použití admin práv, je izolován od systému
AppContainer -- virtuální prostředí pro aplikaci, má vlastní registry a filesystem, aplikaci jsou řízeny přístupy ke zdrojům
- transperentní komprese (pokud je soubor potřeba, automaticky se rozbalí a pak se zase zabalí)
- nelze kombinovat s EFS šifrováním
- max. velikost 100 GB
- nevyplatí se komprimovat komprimované
- data vhodná ke kompresi: statická data, které se nemění
- omezení dostupného místa na disku pro uživatele
- pouze v NTFS
- per-user, per-volume
- spravuje admin
- hard -- nepřekročitelná, soft -- pouze upozornění (lze překročit)
- šifrování souborů a složek v NTFS souborovém systému
- transperentní proces (šifrování a dešifrování probíhá automaticky)
- šifrování pomocí symetrického klíče (pro každý soubor jiný) chraněného asymetrickým klíčem uživatele (chráněn heslem)
- nelze kombinovat s NTFS kompresí
- nelze použít pro roaming profily
- recovery agent -- uživatelský účet s právy pro dešifrování dat
- offline přístup k datům ve sdílených složkách
- ukládáno do složky:
%systemroot%\CSC
- při synchronizaci se přenáší pouze změny
- různé způsoby synchronizace
- technologie šifrování dat na úrovni celého diskového oddílu (od Vista)
- šifra AES
- motivace: nárůst přenosných zařízení -- data nejsou v bezpečí
- řeší hrozby jako:
- ztráta pc
- krádež dat (offline)
- instalace nebezpečného modifikovaného OS
- vyřezení porouchaného disku (disk nefunguje a ani data z něj nejdou získat)
- není ve Windows 8 Home
- Bitlocker To Go -- pro šifrování přenosných zařízení
- kód je uzavřený (kromě AES šifry)
BitLocker | EFS |
---|---|
šifruje vše najednou | šifruje soubory a složky zvlášť |
šifruje pro všechny uživatele | každý uživatel šifruje zvlášť |
používá speciální HW čip TMP | nepoužívá speciální HW |
vypnutí/zapnutí může provést pouze správce | zapnutí/vypnutí může provést kdokoli |
Manage-bde
-- zapnutí, vypnutí a konfigurace
Repair-bde
-- obnoví přístup zašifrovaných poškozeným jednotkám
BdeHdConfig
-- příprava disku na šifrování
Device Encryption -- podmnožina funkcí BitLockeru
Secure Boot -- ochrana před nabootováním škodlivého kódu, použití certifikovaných SW komponent, kontrola podpisů
- PC se znovu nainstaluje
- funguje pro pc, kde jsou veškerá data uložena na serveru
- data se zálohují v podobě virtuálního disku
- VHDX soubor pak musí být uložen na jiném disku
- disk lze snadno obnovit ze zálohy do původní podoby
- potřebujeme externí disk
- využití lokální cache paměti
- zálohuje pouze soubory
- Windows Task Scheduler
schtasks
- logování přístupů k objektům
- event log
- lokálaní politiky > povolení auditingu na úrovni systému
- zapnutí na konkrétních adresářích a souborech
- prcesy spouštěné na pozadí automaticky po startu pc
- analogie s démony v UNIXu
- příklad služby: webový server, obsluha tisku, sdílení souborů po síti
- "Spustit po startu" -- spustí se až po přihlášení uživatele
- řetězíme je pomocí závislostí (nelze-li spusti některá z prerekvizit, službu nelze sputit)
- služby by měly využívat minimální možná oprávnění
- neexistuje jeden parametr pro restart v cmd
- PS:
Get-Service
,Set-Service
,New-Service
, Start, Stop, Suspend, Restart
- automatic -- při startu
- manual -- konkrétní akcí
- automatic delayed -- dvě minuty po spuštění poslední služby
- triggered -- jako reakce na určitou událost
- disabled -- zakázaná
- Driver Store -- centrální úložiště všech ovladačů
- Driver Package -- všechny soubory tvořící ovladač
- staging -- přidání ovladače do Driver Store (vyžaduje admin práva), ověření, uložení, idnexace
- installation -- instalace ovladače
- ovladače musí být podepsány důvěryhodným certifikátem
- režimy spotřeby: high performance, balanced, power saver
- sleep -- nízká spotřeba, rychlé obnovení výkonu
- hibernation -- nejnižší spotřeba, uloží stav pc na disk a vypne pc (pro přenosná zařízení)
- hybrid mode -- stav pc je uložen na disk a pc je přenut do stavu nízké spotřeby (pro stolní pc)
# this is a comment, to the end of the line
<# Multiple
line
comment. #>
ForEach ($var in $list) {...}
if ($i -eq 2) { Continue; }
$myArray = 0, "one", 2, "three"
'řetězec doslova'
"řetězec s dosazením za proměnné"
"retezec1" -eq "retezec1"