Posted in: Studijní materiály, Vývoj počítačů

Správa SQL serveru

Dalším kurzem u kterého se můžeme v Globisu potkat je Správa Microsoft SQL serveru. I k tomuto kurzu zveřejňuji prezentaci a sadu některých skriptů, které se mohou hodit každému sysadminovi.

Balíček praktických skriptů obsahuje:
-Audit loginů
-Status zálohování
-Export konfigurace SQL serveru do Excelu
-Generování certifikátu pro šifrování databáze
-Přehled všech běžících XEventes
-Monitorování záloh
-Nastavení autentizace uživatelů
-Přehled šifrovaných DB
-Příklad rychlého zálohování
-Příklad obnovení certifikátu ze zálohy
-Proceduru Rev Login, která slouží k záloze, obnově a přenosu loginů včetně hesel
-Výpis účtů, které nemají rok měněné heslo
-Výpis účtů, které mají stejné heslo jako login
-Úplnou zálohu loginů
-Výpis událostí s popisem
-Výpis konfigurace serveru
-Zálohu konfigurace serveru

Skripty jsou většinou psané v T-SQL, ale některé jsou v PowerShellu.

Prezentace

Praktické skripty

Posted in: Windows 10, Windows 8 a 8.1

Reset hesla lokálního admina ve Windows 10 a Windows 8.1

Starý známý postup se záměnou Utilman.exe za cmd.exe již není několik verzí Windows 10 funkční, protože jej zastaví Defender díky rozhraní AMSI. Microsoft má v oficiální dokumentaci uvedeno, že pokud není využíván účet Microsoft, jehož heslo lze přenastavit z jiného zařízení, je správný postup obnova do továrního nastavení, případně reinstalace z instalačního média. Tento postup, pokud neuděláte chybu, dokáže zachovat data uživatele, ale nikoliv aplikace či nastavení systému. Nicméně i tak existuje podobná cesta založená na offline změně registru, kterou Defender nezastaví, pojďme se na to podívat.Základ je stejný jako v případě hacku přes Utilmana, Windows nastartujeme z instalačního média a pomocí kláves Shift+F10 spustíme z volby jazyka příkazovou řádku. Druhou možností, jak spustit příkazovou řádku je pomocí volby opravit tento počítač.
Do příkazové řádky napíšeme regedit a potvrdíme vše enterem.

Otevře se nám editor registru a přejde v něm do větve HKEY_LOCAL_MACHINE, následně klineme na možnost Soubor (File) a zvolíme Načíst podregistr (Load Hive)
V dialogu pro výběr souboru nalezneme systémový disk našeho PC a v něm složku System32, tedy např.: C:\Windows\System 32. Nyní v této složce nalezneme složku config a vybereme soubor SYSTÉM
 

Nyní si zadáme název, pod kterým bude dostupná, např.: 1234
Rozklikneme HKEY_LOCAL_MACHINE v ní pak naší 1234 a najdeme položku Setup.

Dvojklikem otevřeme hodnotu CmdLine a do položky Value Data napíšeme cmd.exe.

Potvrdíme tlačítkem OK a dvojklikem otevřeme hodnotu SetupType a do položky Value Date zapíšeme číslici 2

Potvrdíme OK a klikneme ve stromo položek na naší položku 1234, následně zvolíme Soubor (File) a možnost Uvolnit podregistr (Unload Hive)

Potvrdíme uvolnění registru a zavřeme regedit, následně zavřeme i příkazovou řádku a zvolíme možnost pokračovat do Windows, pokud uvidíme okno volby jazyka instalace systému Windows, také jej uzavřeme a tím restartujeme PC.
Při spouštění Windows se samovolně otevře příkazová řádka, nyní můžeme pomocí příkazů změnit hesla. Vyvolání MMC konzole je možné, ale její ovládání nikoliv, protože PC v tuto chvíli akceptuje pouze vstup z klávesnice.

Do příkazové řádky zadáme: net user
Nyní obdržíme výpis všech uživatelů. Do příkazové řádky zadáme: net user <názve účtu> *
tedy například: net user admin *

Nyní můžeme zadat nové heslo pro uživatele, nebo dialog potvrdit entrem a výzvu pro zopakování hesla také (pokud vše bez zadání potvrdíme jen enterem, bude nastavení hesla zrušeno a pro přihlášení nebude účet chráněn heslem). Teď již stačí do příkazové řádky zadat příkaz exit

Nyní se dostaneme do Windows a můžeme si případně nastavit heslo běžnou grafickou cestou. Doporučuji ještě provést kontrolu, zda systém po dané změně uklidil, to provedeme následovně: do vyhledávání napíšeme regedit a zvolíme možnost spustit jako správce. Nyní si přejdeme na cestu: HKEY_LOCAL_MACHINE\System\Setup

Nyní nastavíme hodnotu CmdLine na prázdno (smažeme obsah, pokud tam je) a hodnotu SetupType nastavíme na 0 (pokud tam zůstala naše 2).

Posted in: Windows 10

Aktualizovaná verze Konfiguračního skriptu pro Windows 10

S radostí dávám k dispozici aktualizovanou verzi konfiguračního skriptu z článku Poinstalační úprava Windows 10 (https://elektrotechnika.vesele.info/rubriky/vyvoj-pocitacu/windows-10/poinstalacni-uprava-windows-10). Aktuální verze reaguje na změnu ve Windows 10, kdy např je integrováno odebírání Cortany, která je distribuovaná nově jako moderní aplikace, ale i tak v České lokalizaci bohužel nefunguje. Vlastní skript máte k dispozici po otevření článku.#Úprava Windows 10 v 1809 a novější, Windows server 2019 a 2016
#-úpravou je míněna změna konfigurace a instalace funkcí, které ne všechny jsou nastavitelné v grafickém rozhraní
#-všechny příkazy jsou rozděleny do bloků a po dokončení konfigurace dochází k restartu zařízení
#-v komentáři jsou uvedeny bližší popisy jednotlivých akcí
#Aturo: Petrásek Jan
#Inspirováno webem Disassembler
#-Autor jakkoliv neručí za případné způsobené škody
#-Skript je možno libovolně šířit a využívat v nezměněné podobě
#©2020

Write-Host ‚Poinstavalační úprava Windows 10‘
$V = $null
do
{
$opakovat = $false
Write-Host ‚Pro pokračování si vzolete jednu z následujících kategorií‘
Write-Host ‚1 – Soukromí‘
Write-Host ‚2 – Služby‘
Write-Host ‚3 – Aplikace‘
Write-Host ‚4 – Funkce‘
Write-Host ‚5 – Doporučené nastavení‘
Write-Host ‚6 – Serverové funkce‘
Write-Host ‚? – Informace a nápověda‘
$volba = Read-Host -Prompt ‚Zadejte číslo své volby‘
Write-Host “
Switch($volba){
‚1‘{
Write-Host ‚Nastavení Soukromí‘
Write-Host ‚Výchozí nastavení vypne telemetrii, vypne Wi-Fi Sense,‘
Write-Host ‚vypne navrhované aplikce ve startu, vypne zpětnou vazbu,‘
Write-Host ‚Vypnutí Advertising ID, vypne kortanu, vypne polohu‘
$vychozi = Read-Host -Prompt ‚Chcete aplikovat výchozí nastavení? (A/N)‘
if($vychozi -eq ‚A‘ -or $vychozi -eq ‚a‘)
{
Write-Host ‚Aplikuji výchozí nastavení soukromí…‘
#Popis jednotlivých úkonů naleznete u jednotlivých nastavení
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection“ -Name „AllowTelemetry“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Policies\DataCollection“ -Name „AllowTelemetry“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection“ -Name „AllowTelemetry“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\PreviewBuilds“))
{
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\PreviewBuilds“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\PreviewBuilds“ -Name „AllowBuildPreview“ -Type DWord -Value 0
Disable-ScheduledTask -TaskName „Microsoft\Windows\Application Experience\Microsoft Compatibility Appraiser“ | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\Application Experience\ProgramDataUpdater“ | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\Autochk\Proxy“ | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\Customer Experience Improvement Program\Consolidator“ | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\Customer Experience Improvement Program\UsbCeip“ | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticDataCollector“ | Out-Null
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting“))
{
New-Item -Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting“ -Name „Value“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots“))
{
New-Item -Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots“ -Name „Value“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\WcmSvc\wifinetworkmanager\config“))
{
New-Item -Path „HKLM:\SOFTWARE\Microsoft\WcmSvc\wifinetworkmanager\config“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\WcmSvc\wifinetworkmanager\config“ -Name „AutoConnectAllowedOEM“ -Type Dword -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\WcmSvc\wifinetworkmanager\config“ -Name „WiFISenseAllowed“ -Type Dword -Value 0
Set-ItemProperty -Path „HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager“ -Name „SystemPaneSuggestionsEnabled“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location“))
{
New-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location“ -Name „Value“ -Type String -Value „Deny“
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Sensor\Overrides\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}“ -Name „SensorPermissionState“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Services\lfsvc\Service\Configuration“ -Name „Status“ -Type DWord -Value 0
Write-Output „Disabling Feedback…“
If (!(Test-Path „HKCU:\Software\Microsoft\Siuf\Rules“))
{
New-Item -Path „HKCU:\Software\Microsoft\Siuf\Rules“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Siuf\Rules“ -Name „NumberOfSIUFInPeriod“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection“ -Name „DoNotShowFeedbackNotifications“ -Type DWord -Value 1
Disable-ScheduledTask -TaskName „Microsoft\Windows\Feedback\Siuf\DmClient“ -ErrorAction SilentlyContinue | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\Feedback\Siuf\DmClientOnScenarioDownload“ -ErrorAction SilentlyContinue | Out-Null
Write-Output „Disabling Advertising ID…“
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo“))
{
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo“ -Name „DisabledByGroupPolicy“ -Type DWord -Value 1
If (!(Test-Path „HKCU:\Software\Microsoft\Personalization\Settings“))
{
New-Item -Path „HKCU:\Software\Microsoft\Personalization\Settings“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Personalization\Settings“ -Name „AcceptedPrivacyPolicy“ -Type DWord -Value 0
If (!(Test-Path „HKCU:\Software\Microsoft\InputPersonalization“))
{
New-Item -Path „HKCU:\Software\Microsoft\InputPersonalization“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\InputPersonalization“ -Name „RestrictImplicitTextCollection“ -Type DWord -Value 1
Set-ItemProperty -Path „HKCU:\Software\Microsoft\InputPersonalization“ -Name „RestrictImplicitInkCollection“ -Type DWord -Value 1
If (!(Test-Path „HKCU:\Software\Microsoft\InputPersonalization\TrainedDataStore“))
{
New-Item -Path „HKCU:\Software\Microsoft\InputPersonalization\TrainedDataStore“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\InputPersonalization\TrainedDataStore“ -Name „HarvestContacts“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“ -Name „AllowCortana“ -Type DWord -Value 0
}
else
{
$V = Read-Host -Prompt ‚Chcete vypnout telemetrii? (A/N)‘
<#Telemetry je služba zajišťující sběr dat pro Microsoft Customer Experience Improvement Program. V podstatě jde o to, že shromažďuje údaje o tom, co děláte a jak to děláte, kde, s kým a za kolik, a posílá je Microsoftu. To nechci jednoduše proto, že mám své soukromí rád a navíc mi maminka říkala, že se nemám bavit s cizími lidmi. #>
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji Telemetrii…“
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection“ -Name „AllowTelemetry“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Policies\DataCollection“ -Name „AllowTelemetry“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection“ -Name „AllowTelemetry“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\PreviewBuilds“))
{
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\PreviewBuilds“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\PreviewBuilds“ -Name „AllowBuildPreview“ -Type DWord -Value 0
Disable-ScheduledTask -TaskName „Microsoft\Windows\Application Experience\Microsoft Compatibility Appraiser“ | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\Application Experience\ProgramDataUpdater“ | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\Autochk\Proxy“ | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\Customer Experience Improvement Program\Consolidator“ | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\Customer Experience Improvement Program\UsbCeip“ | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticDataCollector“ | Out-Null
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zapnout telemetrii? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zapínám Telemetrii…“
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection“ -Name „AllowTelemetry“ -Type DWord -Value 3
Set-ItemProperty -Path „HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Policies\DataCollection“ -Name „AllowTelemetry“ -Type DWord -Value 3
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection“ -Name „AllowTelemetry“ -ErrorAction SilentlyContinue
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\PreviewBuilds“ -Name „AllowBuildPreview“ -ErrorAction SilentlyContinue
Enable-ScheduledTask -TaskName „Microsoft\Windows\Application Experience\Microsoft Compatibility Appraiser“ | Out-Null
Enable-ScheduledTask -TaskName „Microsoft\Windows\Application Experience\ProgramDataUpdater“ | Out-Null
Enable-ScheduledTask -TaskName „Microsoft\Windows\Autochk\Proxy“ | Out-Null
Enable-ScheduledTask -TaskName „Microsoft\Windows\Customer Experience Improvement Program\Consolidator“ | Out-Null
Enable-ScheduledTask -TaskName „Microsoft\Windows\Customer Experience Improvement Program\UsbCeip“ | Out-Null
Enable-ScheduledTask -TaskName „Microsoft\Windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticDataCollector“ | Out-Null
$V =$null
}
$V = Read-Host -Prompt ‚Chcete vypnout Wi-Fi Sense? (A/N)‘
<#Wi-Fi Sense je relativně zajímavá služba. Umožňuje sdílení přístupů k Wi-Fi sítím s vašimi přáteli na sociálních sítích, takže v případě, že vás navštíví, bude jim automaticky umožněn přístup k vaší Wi-Fi. Idea je to hezká, ale nikdo neřeší věci jako případný MAC filtr, fakt, že veškerá vaše hesla jsou uložena na serverech Microsoftu tak, aby bylo možno je dešifrovat, a velmi malou možnost ovlivnit co a s kým vlastně sdílíte. #>
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji Wi-Fi Sense…“
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting“ -Name „Value“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots“ -Name „Value“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\WcmSvc\wifinetworkmanager\config“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\WcmSvc\wifinetworkmanager\config“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\WcmSvc\wifinetworkmanager\config“ -Name „AutoConnectAllowedOEM“ -Type Dword -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\WcmSvc\wifinetworkmanager\config“ -Name „WiFISenseAllowed“ -Type Dword -Value 0
$V = $null
}
Write-Host ‚Funkce SmartScreen Filter je ve výchozím stavu zapnuta‘
$V = Read-Host -Prompt ‚Chcete zapnout SmartScreen Filter? (A/N)‘
<# SmartScreen je bezpečností featura, která kouká na to, na co koukáte vy (webové stránky, stahování souborů) a porovnává s bezpečnostní databází Microsoftu, zda stránky, na které se pokoušíte dostat, nemohou být škodlivé pro váš počítač nebo zda soubor, který jste právě stáhli, je digitálně podepsán platným certifikátem. #>
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zapínám SmartScreen Filter…“
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\System“ -Name „EnableSmartScreen“ -ErrorAction SilentlyContinue
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\MicrosoftEdge\PhishingFilter“ -Name „EnabledV9“ -ErrorAction SilentlyContinue
$V = $null
}
$V = Read-Host -Prompt ‚Chcete vypnou web vyhledánávání ve Startu? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Vypínám vyhledávání Bing ve Start Menu…“
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Search“ -Name „BingSearchEnabled“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Search“ -Name „CortanaConsent“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“ -Name „DisableWebSearch“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zapnout web vyhledánávání ve Startu? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Enabling Bing Search in Start Menu…“
Remove-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Search“ -Name „BingSearchEnabled“ -ErrorAction SilentlyContinue
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Search“ -Name „CortanaConsent“ -Type DWord -Value 1
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“ -Name „DisableWebSearch“ -ErrorAction SilentlyContinue
$V = $null
}
$V = Read-Host -Prompt ‚Chcete vypnout navrhované aplikace ve Startu? (A/N)‘
<#Windows 10 čas od času ve Start menu zobrazí ikonu aplikace, kterou nemáte nainstalovanou a o které si myslí, že byste ji možná ocenili. Následující možnost to zakáže, jde o ovšem i v Nastavení. #>
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji navrhované aplikace…“
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager“ -Name „ContentDeliveryAllowed“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager“ -Name „OemPreInstalledAppsEnabled“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager“ -Name „PreInstalledAppsEnabled“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager“ -Name „PreInstalledAppsEverEnabled“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager“ -Name „SilentInstalledAppsEnabled“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager“ -Name „SubscribedContent-310093Enabled“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager“ -Name „SubscribedContent-338387Enabled“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager“ -Name „SubscribedContent-338388Enabled“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager“ -Name „SubscribedContent-338389Enabled“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager“ -Name „SubscribedContent-338393Enabled“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager“ -Name „SubscribedContent-353696Enabled“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager“ -Name „SubscribedContent-353698Enabled“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager“ -Name „SystemPaneSuggestionsEnabled“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent“ -Name „DisableWindowsConsumerFeatures“ -Type DWord -Value 1
# Empty placeholder tile collection in registry cache and restart Start Menu process to reload the cache
If ([System.Environment]::OSVersion.Version.Build -ge 17134) {
$key = Get-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\CloudStore\Store\Cache\DefaultAccount\*windows.data.placeholdertilecollection\Current“
Set-ItemProperty -Path $key.PSPath -Name „Data“ -Type Binary -Value $key.Data[0..15]
Stop-Process -Name „ShellExperienceHost“ -Force -ErrorAction SilentlyContinue
$V = $null
}
}
$V = Read-Host -Prompt ‚Chcete vypnout Historii práce v přepínání ploch? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji Activity History…“
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\System“ -Name „EnableActivityFeed“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\System“ -Name „PublishUserActivities“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\System“ -Name „UploadUserActivities“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete vypnout Historii práce v přepínání ploch? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji Activity History…“
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\System“ -Name „EnableActivityFeed“ -ErrorAction SilentlyContinue
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\System“ -Name „PublishUserActivities“ -ErrorAction SilentlyContinue
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\System“ -Name „UploadUserActivities“ -ErrorAction SilentlyContinue
$V = $null
}
$V = Read-Host -Prompt ‚Chcete blokovat sledování polohy zařízení? (A/N)‘
#Zakazuje sledování polohy zařízení pomocí GPS, podle IP adresy je poloha i nadále zjistitelná
#Po vipnutí nefunguje korektně funkce najdi moje zařízení
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji sledování polohy…“
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location“ -Name „Value“ -Type String -Value „Deny“
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Sensor\Overrides\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}“ -Name „SensorPermissionState“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Services\lfsvc\Service\Configuration“ -Name „Status“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete vypnout automatickou aktualizaci map? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji automatickou aktualizaci Map…“
Set-ItemProperty -Path „HKLM:\SYSTEM\Maps“ -Name „AutoUpdateEnabled“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete vypnout zpětnou vazbu Microsoftu? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji Feedback…“
If (!(Test-Path „HKCU:\Software\Microsoft\Siuf\Rules“)) {
New-Item -Path „HKCU:\Software\Microsoft\Siuf\Rules“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Siuf\Rules“ -Name „NumberOfSIUFInPeriod“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection“ -Name „DoNotShowFeedbackNotifications“ -Type DWord -Value 1
Disable-ScheduledTask -TaskName „Microsoft\Windows\Feedback\Siuf\DmClient“ -ErrorAction SilentlyContinue | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\Feedback\Siuf\DmClientOnScenarioDownload“ -ErrorAction SilentlyContinue | Out-Null
$V = $null
}
$V = Read-Host -Prompt ‚Chcete vypnout perzonalizaci reklam? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Vypínám perzonalizaci reklam…“
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo“ -Name „DisabledByGroupPolicy“ -Type DWord -Value 1
}
$V = Read-Host -Prompt ‚Chcete vypnout přístup webů k seznamu jazyků instalovaných ve Windows? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuiji funkci Website Access to Language List…“
Set-ItemProperty -Path „HKCU:\Control Panel\International\User Profile“ -Name „HttpAcceptLanguageOptOut“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete vypnout Cortanu? (A/N)‘
<#Cortana je umělá inteligence, která funguje jako osobní asistent. V první fázi sbírá data, aby se dozvěděla o vašich návycích používání zařízení, vašem písmu (píšete-li rukou nebo stylusem), vašich kontaktech, o tom co vyhledáváte na internetu a tak vůbec si o vás udělala obrázek, co jste to za individuum. V druhé fázi umožňuje hlasové ovládání a zrychlené úkony. To by všechno bylo bezva, kdyby celý ten systém učení opět neseděl na serverech Microsoftu a všechna vaše data se neposílala přes internet. #>
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji Cortanu…“
If (!(Test-Path „HKCU:\Software\Microsoft\Personalization\Settings“)) {
New-Item -Path „HKCU:\Software\Microsoft\Personalization\Settings“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Personalization\Settings“ -Name „AcceptedPrivacyPolicy“ -Type DWord -Value 0
If (!(Test-Path „HKCU:\Software\Microsoft\InputPersonalization“)) {
New-Item -Path „HKCU:\Software\Microsoft\InputPersonalization“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\InputPersonalization“ -Name „RestrictImplicitTextCollection“ -Type DWord -Value 1
Set-ItemProperty -Path „HKCU:\Software\Microsoft\InputPersonalization“ -Name „RestrictImplicitInkCollection“ -Type DWord -Value 1
If (!(Test-Path „HKCU:\Software\Microsoft\InputPersonalization\TrainedDataStore“)) {
New-Item -Path „HKCU:\Software\Microsoft\InputPersonalization\TrainedDataStore“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\InputPersonalization\TrainedDataStore“ -Name „HarvestContacts“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“ -Name „AllowCortana“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete vypnout Hlášení chyb Microsoftu? (A/N)‘
#Zakáže odesílání anonimizovaných hlášeních o chybách a kritických událostech na servery MS
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji hlášní chyb…“
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\Windows Error Reporting“ -Name „Disabled“ -Type DWord -Value 1
Disable-ScheduledTask -TaskName „Microsoft\Windows\Windows Error Reporting\QueueReporting“ | Out-Null
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zapnout Hlášení chyb Microsoftu? (A/N)‘
#Povolí odesílání anonimizovaných hlášeních o chybách a kritických událostech na servery MS
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji Error reporting…“
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\Windows Error Reporting“ -Name „Disabled“ -ErrorAction SilentlyContinue
Enable-ScheduledTask -TaskName „Microsoft\Windows\Windows Error Reporting\QueueReporting“ | Out-Null
$V = $null
}
}
break
}
‚2‘{
Write-Host ‚Nastavení Služeb‘
Write-Host ‚Výchozí nastavení udělá:‘
Write-Host ‚Vypne protokol SMB 1.0, nastaví neznáme síťové profily jako veřejné,‘
Write-Host ‚Povolí Controlled Folder Access, skryje upozoenění ochrany účtu Win Defenderu,‘
Write-Host ‚Vypne automatický restart po dokončení aktualizace, zakáže vzdálenou pomoc‘
$vychozi = Read-Host -Prompt ‚Chcete aplikovat výchozí nastavení? (A/N)‘
if($vychozi -eq ‚A‘ -or $vychozi -eq ‚a‘)
{
Write-Host ‚Aplikuji výchozí nastavení…‘
Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\CurrentVersion\NetworkList\Signatures\010103000F0000F0010000000F0000F0C967A3643C3AD745950DA7859209176EF5B87C875FA20DF21951640E807D7C24“ -Name „Category“ -ErrorAction SilentlyContinue
Set-MpPreference -EnableControlledFolderAccess Enabled -ErrorAction SilentlyContinue
If (!(Test-Path „HKCU:\Software\Microsoft\Windows Security Health\State“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows Security Health\State“ -Force | Out-Null
}
Set-ItemProperty „HKCU:\Software\Microsoft\Windows Security Health\State“ -Name „AccountProtection_MicrosoftAccount_Disconnected“ -Type DWord -Value 1
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU“ -Name „NoAutoRebootWithLoggedOnUsers“ -Type DWord -Value 1
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU“ -Name „AUPowerManagement“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Control\Remote Assistance“ -Name „fAllowToGetHelp“ -Type DWord -Value 0
}
else
{
$V = Read-Host -Prompt ‚Chcete vypnout sdílení mapovaných jednotek mezi uživateli? (A/N)‘
<#Každá instalace Windows ve výchozím stavu sdílí všechny své disky, adresář Windows a tiskárny a faxy. Sice se jedná o skryté položky, ale každý, kdo už s nimi někdy přišel do styku tuší, kde je hledat (Nápověda: C$, ADMIN$, FAX$, PRINT$). Ty je pak možno mapovat třeba na vzdálené ploše, nicméně ne vždy je žádoucí aby uživatelé měli plný přístup i k systémovému disku hostitele. Spoustu věcí je sice možno řešit šikovným rozdělením a nastavením oprávnění. #>
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Vypínám sdílení mapovaných jednotek mezi uživateli…“
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System“ -Name „EnableLinkedConnections“ -ErrorAction SilentlyContinue
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zapnout protokol SMB 1.0? (A/N)‘
#Protokol SMB 1.0. je od verze 1709 ve výchizím nastavení vypnut, je doporučeno užívat novější verze protokolu SMB
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji SMB 1.0 protocol…“
Set-SmbServerConfiguration -EnableSMB1Protocol $true -Force
$V = $null
}
$V = Read-Host -Prompt ‚Chcete vypnout SMB server? (A/N)‘
#tato možnost úplně vypne možnost sdílení tiskáren a skenerů s dalšími počítači. Nadále je možné se připojit k zařízením sdílených z jiného PC
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji SMB Server…“
Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force
Set-SmbServerConfiguration -EnableSMB2Protocol $false -Force
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zapnout SMB server? (A/N)‘
#tato možnost úplně zapne možnost sdílení tiskáren a skenerů s dalšími počítači. Nadále je možné se připojit k zařízením sdílených z jiného PC
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji SMB Server…“
Set-SmbServerConfiguration -EnableSMB2Protocol $true -Force
$V = $null
}
$V = Read-Host -Prompt ‚Chcete aktuální síť nastavit jako domácí? (A/N)‘
#Nastaví aktuální síťový profil jako privátní (umožní sdílení soubporů, viditelnost zařízení apod.)
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Nastavuji aktuální síť jako domácí…“
Set-NetConnectionProfile -NetworkCategory Private
$V = $null
}
$V = Read-Host -Prompt ‚Chcete neznámé sítě nastavit jako veřejné? (A/N)‘
#Nastaví všechny ostatní sítě jako veřejné
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Nastavuji neznámé síťové profily jako veřejné…“
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\CurrentVersion\NetworkList\Signatures\010103000F0000F0010000000F0000F0C967A3643C3AD745950DA7859209176EF5B87C875FA20DF21951640E807D7C24“ -Name „Category“ -ErrorAction SilentlyContinue
$V = $null
}
$V = Read-Host -Prompt ‚Chcete vypnout automatickou instalaci ovladačů síťových zařízení? (A/N)‘
#vypne automatickou instlalaci ovladačů zařízení v síti jako jsou tiskárny
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji automatickou instalaci síťových zařízení…“
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\NcdAutoSetup\Private“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\NcdAutoSetup\Private“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\NcdAutoSetup\Private“ -Name „AutoSetup“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete skrýt ikonu Windows Defenderu? (A/N)‘
#Skryje ikonu Defenderu na liště, Defender ovšem zůstane nadále zapnutý
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Skrývám Windows Defender SysTray icon…“
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows Defender Security Center\Systray“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows Defender Security Center\Systray“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows Defender Security Center\Systray“ -Name „HideSystray“ -Type DWord -Value 1
If ([System.Environment]::OSVersion.Version.Build -eq 14393) {
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run“ -Name „WindowsDefender“ -ErrorAction SilentlyContinue
} ElseIf ([System.Environment]::OSVersion.Version.Build -ge 15063) {
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run“ -Name „SecurityHealth“ -ErrorAction SilentlyContinue
}
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit Windows Defender? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji Windows Defender…“
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows Defender“ -Name „DisableAntiSpyware“ -ErrorAction SilentlyContinue
If ([System.Environment]::OSVersion.Version.Build -eq 14393) {
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run“ -Name „WindowsDefender“ -Type ExpandString -Value „`“%ProgramFiles%\Windows Defender\MSASCuiL.exe`““
} ElseIf ([System.Environment]::OSVersion.Version.Build -ge 15063 -And [System.Environment]::OSVersion.Version.Build -le 17134) {
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run“ -Name „SecurityHealth“ -Type ExpandString -Value „%ProgramFiles%\Windows Defender\MSASCuiL.exe“
} ElseIf ([System.Environment]::OSVersion.Version.Build -ge 17763) {
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run“ -Name „SecurityHealth“ -Type ExpandString -Value „%windir%\system32\SecurityHealthSystray.exe“
}
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit Controlled Folder Access? (A/N)‘
#Od verze 1709 vyžauje zapnutý Windows Defender
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji Controlled Folder Access…“
Set-MpPreference -EnableControlledFolderAccess Enabled -ErrorAction SilentlyContinue
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit Core Isolation Memory Integrity? (A/N)‘
#Součást Wiundows Defender aplikovatelná od verze 1803
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji Core Isolation Memory Integrity…“
If (!(Test-Path „HKLM:\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity“)) {
New-Item -Path „HKLM:\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity“ -Name „Enabled“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit Windows Defender Application Guard? (A/N)‘
#Součást Wiundows Defender aplikovatelná od verze 1803 na Pro, neaplikovatelná na VDI a Server
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji Windows Defender Application Guard…“
Enable-WindowsOptionalFeature -online -FeatureName „Windows-Defender-ApplicationGuard“ -NoRestart -WarningAction SilentlyContinue | Out-Null
$V = $null
}
$V = Read-Host -Prompt ‚Chcete vypnout upozornění ochrany účtu ve Windows Defenderd? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Vypínám upozornění ochrany účtu…“
If (!(Test-Path „HKCU:\Software\Microsoft\Windows Security Health\State“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows Security Health\State“ -Force | Out-Null
}
Set-ItemProperty „HKCU:\Software\Microsoft\Windows Security Health\State“ -Name „AccountProtection_MicrosoftAccount_Disconnected“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat spouštění skriptů na tomto PC? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji vykonávání skritů…“
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows Script Host\Settings“ -Name „Enabled“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit spouštění skriptů na tomto PC? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji spouštění skriptů…“
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows Script Host\Settings“ -Name „Enabled“ -ErrorAction SilentlyContinue
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit možnosti spouštění pomocí klávesy F8? (A/N)‘
#umožní stiskem klávesy F8 při spouštšění PC změnit možnosti spouštění, např. přejít do nouzového režimu
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji možnosti spouštění klávesou F8…“
bcdedit /set `{current`} BootMenuPolicy Legacy | Out-Null
$V = $null
}
$V = Read-Host -Prompt ‚Chcete vypnout automatické opravy při startu Windows? (A/N)‘
#Při spouštění bude ignorovat chyby a přejde do běžného spouštění Windows
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji mód automatické opravy při spouštění Windows…“
bcdedit /set `{current`} BootStatusPolicy IgnoreAllFailures | Out-Null
$V = $null
}
$V = Read-Host -Prompt ‚Chcete vypnout automatický restart Windows po aktualizaci? (A/N)‘
#Oznámí dokončení instalace automatických aktualizací, reset spouští uživatel na základě oznámení
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji automatický restart počítače po aktualizaci…“
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU“ -Name „NoAutoRebootWithLoggedOnUsers“ -Type DWord -Value 1
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU“ -Name „AUPowerManagement“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat vzdálenou pomoc? (A/N)‘
#Zakáže přístup pomocí servisní aplikace a pinu pro technickou podporu Microsoftu
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji vzdálenou pomoc…“
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Control\Remote Assistance“ -Name „fAllowToGetHelp“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit vzdálenou pomoc? (A/N)‘
#Povolí přístup pomocí servisní aplikace a pinu pro technickou podporu Microsoftu
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji vzdálenou pomoc…“
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Control\Remote Assistance“ -Name „fAllowToGetHelp“ -Type DWord -Value 1
$V = $null
}
}
break
}
‚3‘{
Write-Host ‚Nastavení aplikací‘
Write-Host ‚Výchozí nastavení udělá:‘
Write-Host ‚Odebere předisntalované Store aplikace, odebere zástupce MS Edge z Plochy‘
Write-Host ‚Nainstaluje .Net 3.x, nainstaluje rtisk do PDF, povolí XPS nástroje‘
Write-Host ‚Odebre výchozí fax tiskárnu‘
$vychozi = Read-Host -Prompt ‚Chcete aplikovat výchozí nastavení? (A/N)‘
if($vychozi -eq ‚A‘ -or $vychozi -eq ‚a‘)
{
Get-AppxPackage -AllUsers „Microsoft.3DBuilder“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.AppConnector“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.BingFinance“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.BingNews“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.BingSports“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.BingTranslator“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.BingWeather“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.CommsPhone“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.ConnectivityStore“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.GetHelp“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Getstarted“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Messaging“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Microsoft3DViewer“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MicrosoftOfficeHub“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MicrosoftPowerBIForWindows“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MicrosoftSolitaireCollection“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MinecraftUWP“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MSPaint“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.NetworkSpeedTest“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Office.OneNote“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Office.Sway“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.OfficeLens“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.OneConnect“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.People“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Print3D“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.RemoteDesktop“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.SkypeApp“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Todos“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Wallet“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Whiteboard“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsAlarms“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsCamera“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „microsoft.windowscommunicationsapps“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsFeedbackHub“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsMaps“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsPhone“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsSoundRecorder“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.ZuneMusic“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.ZuneVideo“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WebMediaExtensions“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MixedReality.Portal“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.YourPhone“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.ScreenSketch“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „2414FC7A.Viber“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „41038Axilesoft.ACGMediaPlayer“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „46928bounde.EclipseManager“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „4DF9E0F8.Netflix“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „64885BlueEdge.OneCalendar“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „7EE7776C.LinkedInforWindows“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „828B5831.HiddenCityMysteryofShadows“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „89006A2E.AutodeskSketchBook“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „9E2F88E3.Twitter“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „A278AB0D.DisneyMagicKingdoms“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „A278AB0D.MarchofEmpires“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „ActiproSoftwareLLC.562882FEEB491“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „AdobeSystemsIncorporated.AdobePhotoshopExpress“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „CAF9E577.Plex“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „D52A8D61.FarmVille2CountryEscape“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „D5EA27B7.Duolingo-LearnLanguagesforFree“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „DB6EA5DB.CyberLinkMediaSuiteEssentials“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „DolbyLaboratories.DolbyAccess“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Drawboard.DrawboardPDF“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „E046963F.LenovoCompanion“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Facebook.Facebook“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Fitbit.FitbitCoach“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „flaregamesGmbH.RoyalRevolt2“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „GAMELOFTSA.Asphalt8Airborne“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „KeeperSecurityInc.Keeper“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „king.com.BubbleWitch3Saga“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „king.com.CandyCrushSodaSaga“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „LenovoCorporation.LenovoID“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „LenovoCorporation.LenovoSettings“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „PandoraMediaInc.29680B314EFC2“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „SpotifyAB.SpotifyMusic“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „WinZipComputing.WinZipUniversal“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „XINGAG.XING“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „king.com.CandyCrushSaga“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Nordcurrent.CookingFever“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „A278AB0D.DragonManiaLegends“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.XboxApp“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.XboxIdentityProvider“ | Remove-AppxPackage -ErrorAction SilentlyContinue
Get-AppxPackage -AllUsers „Microsoft.XboxSpeechToTextOverlay“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.XboxGameOverlay“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.XboxGamingOverlay“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Xbox.TCUI“ | Remove-AppxPackage
Get-AppxPackage -allusers „Microsoft.549981C3F5F10“ | Remove-AppxPackage
Get-appxprovisionedpackage -online | where-object {$_.packagename –like “*Microsoft.549981C3F5F10*”} | Remove-AppxProvisionedPackage -online
Get-appxprovisionedpackage –online | where-object {$_.packagename –notlike “*store*”} | where-object {$_.name -notlike „*Microsoft.WindowsCalculator*“} | where-object {$_.name -notlike „*Microsoft.Windows.Photos*“} | Remove-AppxProvisionedPackage -online
Set-ItemProperty -Path „HKCU:\System\GameConfigStore“ -Name „GameDVR_Enabled“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR“ -Name „AllowGameDVR“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer“ -Name „DisableEdgeDesktopShortcutCreation“ -Type DWord -Value 1
If ((Get-CimInstance -Class „Win32_OperatingSystem“).ProductType -eq 1) {
Disable-WindowsOptionalFeature -Online -FeatureName „MicrosoftWindowsPowerShellV2Root“ -NoRestart -WarningAction SilentlyContinue | Out-Null
} Else {
Uninstall-WindowsFeature -Name „PowerShell-V2“ -WarningAction SilentlyContinue | Out-Null
}
If ((Get-CimInstance -Class „Win32_OperatingSystem“).ProductType -eq 1) {
Enable-WindowsOptionalFeature -Online -FeatureName „NetFx3“ -NoRestart -WarningAction SilentlyContinue | Out-Null
} Else {
Install-WindowsFeature -Name „NET-Framework-Core“ -WarningAction SilentlyContinue | Out-Null
}
Enable-WindowsOptionalFeature -Online -FeatureName „Printing-PrintToPDFServices-Features“ -NoRestart -WarningAction SilentlyContinue | Out-Null
Enable-WindowsOptionalFeature -Online -FeatureName „Printing-XPSServices-Features“ -NoRestart -WarningAction SilentlyContinue | Out-Null
Remove-Printer -Name „Fax“ -ErrorAction SilentlyContinue
}
else
{
$V = Read-Host -Prompt ‚Chcete zakázat OneDrive? (A/N)‘
#Zakáže běh aplikace OneDrive, ale aplikaci neodinstaluje
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Zakazuji OneDrive…‘
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\OneDrive“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\OneDrive“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\OneDrive“ -Name „DisableFileSyncNGSC“ -Type
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit OneDrive? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Povoluji OneDrive…‘
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\OneDrive“ -Name „DisableFileSyncNGSC“ -ErrorAction SilentlyContinue
$V = $null
}
$V = Read-Host -Prompt ‚Chcete odinstalovat pedinstalované Store aplikace? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Odebírám přeinstalované Store Aplikace…‘
Get-AppxPackage -AllUsers „Microsoft.3DBuilder“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.AppConnector“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.BingFinance“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.BingNews“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.BingSports“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.BingTranslator“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.BingWeather“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.CommsPhone“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.ConnectivityStore“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.GetHelp“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Getstarted“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Messaging“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Microsoft3DViewer“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MicrosoftOfficeHub“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MicrosoftPowerBIForWindows“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MicrosoftSolitaireCollection“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MinecraftUWP“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MSPaint“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.NetworkSpeedTest“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Office.OneNote“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Office.Sway“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.OfficeLens“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.OneConnect“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.People“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Print3D“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.RemoteDesktop“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.SkypeApp“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Todos“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Wallet“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Whiteboard“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsAlarms“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsCamera“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „microsoft.windowscommunicationsapps“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsFeedbackHub“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsMaps“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsPhone“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsSoundRecorder“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.ZuneMusic“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.ZuneVideo“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WebMediaExtensions“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MixedReality.Portal“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.YourPhone“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.ScreenSketch“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „2414FC7A.Viber“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „41038Axilesoft.ACGMediaPlayer“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „46928bounde.EclipseManager“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „4DF9E0F8.Netflix“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „64885BlueEdge.OneCalendar“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „7EE7776C.LinkedInforWindows“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „828B5831.HiddenCityMysteryofShadows“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „89006A2E.AutodeskSketchBook“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „9E2F88E3.Twitter“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „A278AB0D.DisneyMagicKingdoms“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „A278AB0D.MarchofEmpires“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „ActiproSoftwareLLC.562882FEEB491“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „AdobeSystemsIncorporated.AdobePhotoshopExpress“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „CAF9E577.Plex“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „D52A8D61.FarmVille2CountryEscape“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „D5EA27B7.Duolingo-LearnLanguagesforFree“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „DB6EA5DB.CyberLinkMediaSuiteEssentials“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „DolbyLaboratories.DolbyAccess“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Drawboard.DrawboardPDF“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „E046963F.LenovoCompanion“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Facebook.Facebook“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Fitbit.FitbitCoach“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „flaregamesGmbH.RoyalRevolt2“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „GAMELOFTSA.Asphalt8Airborne“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „KeeperSecurityInc.Keeper“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „king.com.BubbleWitch3Saga“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „king.com.CandyCrushSodaSaga“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „LenovoCorporation.LenovoID“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „LenovoCorporation.LenovoSettings“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „PandoraMediaInc.29680B314EFC2“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „SpotifyAB.SpotifyMusic“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „WinZipComputing.WinZipUniversal“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „XINGAG.XING“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „king.com.CandyCrushSaga“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Nordcurrent.CookingFever“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „A278AB0D.DragonManiaLegends“ | Remove-AppxPackage
Get-AppxPackage -allusers „Microsoft.549981C3F5F10“ | Remove-AppxPackage
Get-appxprovisionedpackage -online | where-object {$_.packagename –like “*Microsoft.549981C3F5F10*”} | Remove-AppxProvisionedPackage -online
Get-appxprovisionedpackage –online | where-object {$_.packagename –notlike “*store*”} | where-object {$_.name -notlike „*Microsoft.WindowsCalculator*“} | where-object {$_.name -notlike „*Microsoft.Windows.Photos*“} | Remove-AppxProvisionedPackage -online
#Dále je popsáno odebrání aplikace Xbox
Get-AppxPackage -AllUsers „Microsoft.XboxApp“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.XboxIdentityProvider“ | Remove-AppxPackage -ErrorAction SilentlyContinue
Get-AppxPackage -AllUsers „Microsoft.XboxSpeechToTextOverlay“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.XboxGameOverlay“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.XboxGamingOverlay“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Xbox.TCUI“ | Remove-AppxPackage
Set-ItemProperty -Path „HKCU:\System\GameConfigStore“ -Name „GameDVR_Enabled“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR“ -Name „AllowGameDVR“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete odinstalovat Store? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Host „Odinstalovávám Store…“
Get-AppxPackage -AllUsers „Microsoft.DesktopAppInstaller“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsStore“ | Remove-AppxPackage
$V = $null
}
$V = Read-Host -Prompt ‚Chcete nainstalovat Store? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Host „Instaluji Store…“
Get-AppxPackage -AllUsers „Microsoft.DesktopAppInstaller“ | ForEach-Object {Add-AppxPackage -DisableDevelopmentMode -Register „$($_.InstallLocation)\AppXManifest.xml“}
Get-AppxPackage -AllUsers „Microsoft.WindowsStore“ | ForEach-Object {Add-AppxPackage -DisableDevelopmentMode -Register „$($_.InstallLocation)\AppXManifest.xml“}
$V = $null
}
$V = Read-Host -Prompt ‚Chcete odebrat zástupce Edge z Plochy? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Odebírám Edge z plochy…‘
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer“ -Name „DisableEdgeDesktopShortcutCreation“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete nainstalovat subsystém pro Linux? (A/N)‘
#Verze 1607 musí být v Developers módu, aby bylo možné subsystém pro Linux instalovat
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Instaluji Linux subsystem…‘
If ([System.Environment]::OSVersion.Version.Build -eq 14393) {
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock“ -Name „AllowDevelopmentWithoutDevLicense“ -Type DWord -Value 1
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock“ -Name „AllowAllTrustedApps“ -Type DWord -Value 1
}
Enable-WindowsOptionalFeature -Online -FeatureName „Microsoft-Windows-Subsystem-Linux“ -NoRestart -WarningAction SilentlyContinue | Out-Null
$V = $null
}
$V = Read-Host -Prompt ‚Chcete odinstalovat subsystém pro Linux? (A/N)‘
#Verze 1607 musí být v Developers módu, aby bylo možné subsystém pro Linux instalovat
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Odebírám Linux subsystem…‘
If ([System.Environment]::OSVersion.Version.Build -eq 14393) {
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock“ -Name „AllowDevelopmentWithoutDevLicense“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock“ -Name „AllowAllTrustedApps“ -Type DWord -Value 0
}
Disable-WindowsOptionalFeature -Online -FeatureName „Microsoft-Windows-Subsystem-Linux“ -NoRestart -WarningAction SilentlyContinue | Out-Null
$V = $null
}
$V = Read-Host -Prompt ‚Chcete instalovat Hyper-V? (A/N)‘
#lze aplikovat pouze na edice Pro, Edu a Enterprise a serverové edice
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Instaluji Hyper-V…‘
If ((Get-CimInstance -Class „Win32_OperatingSystem“).ProductType -eq 1) {
Enable-WindowsOptionalFeature -Online -FeatureName „Microsoft-Hyper-V-All“ -NoRestart -WarningAction SilentlyContinue | Out-Null
} Else {
Install-WindowsFeature -Name „Hyper-V“ -IncludeManagementTools -WarningAction SilentlyContinue | Out-Null
}
$V = $null
}
$V = Read-Host -Prompt ‚Chcete odinstalovat Hyper-V? (A/N)‘
#lze aplikovat pouze na edice Pro, Edu a Enterprise a serverové edice
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Instaluji Hyper-V…‘
If ((Get-CimInstance -Class „Win32_OperatingSystem“).ProductType -eq 1) {
Disable-WindowsOptionalFeature -Online -FeatureName „Microsoft-Hyper-V-All“ -NoRestart -WarningAction SilentlyContinue | Out-Null
} Else {
Uninstall-WindowsFeature -Name „Hyper-V“ -IncludeManagementTools -WarningAction SilentlyContinue | Out-Null
}
$V = $null
}
$V = Read-Host -Prompt ‚Chcete nainstalovat .NET 3.x? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Instaluji .NET 3.x…‘
If ((Get-CimInstance -Class „Win32_OperatingSystem“).ProductType -eq 1) {
Enable-WindowsOptionalFeature -Online -FeatureName „NetFx3“ -NoRestart -WarningAction SilentlyContinue | Out-Null
} Else {
Install-WindowsFeature -Name „NET-Framework-Core“ -WarningAction SilentlyContinue | Out-Null
}
$V = $null
}
$V = Read-Host -Prompt ‚Chcete nainstalovat MS Photo viewer? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Host ‚Instaluji MS PhotoViewer…‘
If (!(Test-Path „HKCR:“)) {
New-PSDrive -Name HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT | Out-Null
}
ForEach ($type in @(„Paint.Picture“, „giffile“, „jpegfile“, „pngfile“)) {
New-Item -Path $(„HKCR:\$type\shell\open“) -Force | Out-Null
New-Item -Path $(„HKCR:\$type\shell\open\command“) | Out-Null
Set-ItemProperty -Path $(„HKCR:\$type\shell\open“) -Name „MuiVerb“ -Type ExpandString -Value „@%ProgramFiles%\Windows Photo Viewer\photoviewer.dll,-3043“
Set-ItemProperty -Path $(„HKCR:\$type\shell\open\command“) -Name „(Default)“ -Type ExpandString -Value „%SystemRoot%\System32\rundll32.exe `“%ProgramFiles%\Windows Photo Viewer\PhotoViewer.dll`“, ImageView_Fullscreen %1″
}
If (!(Test-Path „HKCR:“)) {
New-PSDrive -Name HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT | Out-Null
}
New-Item -Path „HKCR:\Applications\photoviewer.dll\shell\open\command“ -Force | Out-Null
New-Item -Path „HKCR:\Applications\photoviewer.dll\shell\open\DropTarget“ -Force | Out-Null
Set-ItemProperty -Path „HKCR:\Applications\photoviewer.dll\shell\open“ -Name „MuiVerb“ -Type String -Value „@photoviewer.dll,-3043“
Set-ItemProperty -Path „HKCR:\Applications\photoviewer.dll\shell\open\command“ -Name „(Default)“ -Type ExpandString -Value „%SystemRoot%\System32\rundll32.exe `“%ProgramFiles%\Windows Photo Viewer\PhotoViewer.dll`“, ImageView_Fullscreen %1″
Set-ItemProperty -Path „HKCR:\Applications\photoviewer.dll\shell\open\DropTarget“ -Name „Clsid“ -Type String -Value „{FFE2A43C-56B9-4bf5-9A79-CC6D4285608A}“
$V = $null
}
$V = Read-Host -Prompt ‚Chcete nainstalovat PDF tiskárnu? (A/N)‘
#Nainstlauje MS Print to PDF
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Instaluji Microsoft print to PDF…‘
Enable-WindowsOptionalFeature -Online -FeatureName „Printing-PrintToPDFServices-Features“ -NoRestart -WarningAction SilentlyContinue | Out-Null
$V = $null
}
$V = Read-Host -Prompt ‚Chcete nainstalovat nástroje pro formát XPS? (A/N)‘
#Nainstlauje nástroje pro práci s XPS
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Povoluji tisk do XPS a prohlížeč XPS pokud je nostupný…‘
Enable-WindowsOptionalFeature -Online -FeatureName „Printing-XPSServices-Features“ -NoRestart -WarningAction SilentlyContinue | Out-Null
$V = $null
}
$V = Read-Host -Prompt ‚Chcete odinstalovat nástroje pro formát XPS? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Povoluji tisk do XPS a prohlížeč XPS pokud je nostupný…‘
Disable-WindowsOptionalFeature -Online -FeatureName „Printing-XPSServices-Features“ -NoRestart -WarningAction SilentlyContinue | Out-Null
$V = $null
}
$V = Read-Host -Prompt ‚Chcete odebrat výchozí fax? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Odebírám výchozí fax…‘
Remove-Printer -Name „Fax“ -ErrorAction SilentlyContinue
$V = $null
}
$V = Read-Host -Prompt ‚Chcete odinstalovat funkce pro fax? (A/N)‘
#nelze aplikovat na server
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Odebírám funkce pro fax…‘
Disable-WindowsOptionalFeature -Online -FeatureName „FaxServicesClientPackage“ -NoRestart -WarningAction SilentlyContinue | Out-Null
$V = $null
}
}
break
}
‚4‘{
Write-Host ‚Nastavení funkcí Windows‘
Write-Host ‚Výchozí nastavení vypne vzdálenou plochu, vypne automatické přehrávání,‘
Write-Host ‚Vypne autorun, zapne automatické čištění disku, povolí hibernaci,‘
Write-Host ‚Odebere ikonu Lidé z lišty, zakáže automatické přidání slova Zástupce do názvu zástupců,‘
Write-Host ‚Povolí numlock po startu, zobrazí detaily operace se soubory‘
$vychozi = Read-Host -Prompt ‚Chcete aplikovat výchozí nastavení? (A/N)‘
if($vychozi -eq ‚A‘ -or $vychozi -eq ‚a‘)
{
Write-Output „Aplikuji výchozí nastavení…“
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server“ -Name „fDenyTSConnections“ -Type DWord -Value 1
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp“ -Name „UserAuthentication“ -Type DWord -Value 1
Disable-NetFirewallRule -Name „RemoteDesktop*“
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers“ -Name „DisableAutoplay“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer“ -Name „NoDriveTypeAutoRun“ -Type DWord -Value 255
If (!(Test-Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy“ -Name „01“ -Type DWord -Value 1
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy“ -Name „StoragePoliciesNotified“ -Type DWord -Value 1
Set-ItemProperty -Path „HKLM:\System\CurrentControlSet\Control\Session Manager\Power“ -Name „HibernateEnabled“ -Type Dword -Value 1
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ -Name „ShowHibernateOption“ -Type Dword -Value 1
powercfg /HIBERNATE ON 2>&1 | Out-Null
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ -Name „ShowSleepOption“ -Type Dword -Value 0
powercfg /SETACVALUEINDEX SCHEME_CURRENT SUB_BUTTONS SBUTTONACTION 0
powercfg /SETDCVALUEINDEX SCHEME_CURRENT SUB_BUTTONS SBUTTONACTION 0
If (!(Test-Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People“ | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People“ -Name „PeopleBand“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer“ -Name „link“ -Type Binary -Value ([byte[]](0,0,0,0))
If (!(Test-Path „HKU:“)) {
New-PSDrive -Name HKU -PSProvider Registry -Root HKEY_USERS | Out-Null
}
Set-ItemProperty -Path „HKU:\.DEFAULT\Control Panel\Keyboard“ -Name „InitialKeyboardIndicators“ -Type DWord -Value 2147483650
Add-Type -AssemblyName System.Windows.Forms
If (!([System.Windows.Forms.Control]::IsKeyLocked(‚NumLock‘))) {
$wsh = New-Object -ComObject WScript.Shell
$wsh.SendKeys(‚{NUMLOCK}‘)
}
If (!(Test-Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager“ | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager“ -Name „EnthusiastMode“ -Type DWord -Value 1
}
else
{
$V = Read-Host -Prompt ‚Chcete vypnout automatickou aktualizaci ovladačů z Windows Update? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji automatickou aktualizaci ovladačů z Windows Update…“
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Device Metadata“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Device Metadata“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Device Metadata“ -Name „PreventDeviceMetadataFromNetwork“ -Type DWord -Value 1
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching“ -Name „DontPromptForWindowsUpdate“ -Type DWord -Value 1
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching“ -Name „DontSearchWindowsUpdate“ -Type DWord -Value 1
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching“ -Name „DriverUpdateWizardWuSearchEnabled“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate“ -Name „ExcludeWUDriversInQualityUpdate“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zapnout automatickou aktualizaci ovladačů z Windows Update? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji automatickou aktualizaci ovladačů z Windows Update…“
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Device Metadata“ -Name „PreventDeviceMetadataFromNetwork“ -ErrorAction SilentlyContinue
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching“ -Name „DontPromptForWindowsUpdate“ -ErrorAction SilentlyContinue
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching“ -Name „DontSearchWindowsUpdate“ -ErrorAction SilentlyContinue
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching“ -Name „DriverUpdateWizardWuSearchEnabled“ -ErrorAction SilentlyContinue
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate“ -Name „ExcludeWUDriversInQualityUpdate“ -ErrorAction SilentlyContinue
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit vzdálenou plochu se síťovým ověřením uživatele? (A/N)‘
#Uživatel je zde ověřen pomocí AD a na základě členství ve skupine RemoteDesktopUsers je mu uděleno oprávnění užít vzdálenou plochu
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji vzdálenou plochu se síťovým ověřením uživatele…“
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server“ -Name „fDenyTSConnections“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp“ -Name „UserAuthentication“ -Type DWord -Value 0
Enable-NetFirewallRule -Name „RemoteDesktop*“
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat vzdálenou plochu se síťovým ověřením uživatele? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji vzdálenou plochu…“
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server“ -Name „fDenyTSConnections“ -Type DWord -Value 1
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp“ -Name „UserAuthentication“ -Type DWord -Value 1
Disable-NetFirewallRule -Name „RemoteDesktop*“
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat automatické přehrávání? (A/N)‘
<#Autorun a autoplay jsou dvě funkce pro přehrávání obsahu, které jdou ruku v ruce. Klasický autorun jednoduše donutí operační systém zareagovat na změnu média, tedy třeba vsunutí DVD nebo flash disku. Systém se pak podívá, zda na médiu existuje soubor autorun.inf a podle něj pak médiu nastaví ikonku a přidělí akci na dvojklik, případně další akce do kontextového menu. Autoplay je pak pokročilejší funkce, která se pokusí zjistit typ obsahu média a podle toho spustí aplikaci, která si s daným obsahem nejlépe poradí. Tedy pokud do USBčka zabodnete flešku plnou MP3, nabídne spuštění hudebního přehrávače. Pokud připojíte foťák s fotkami z dovolené, nastartuje váš výchozí prohlížeč obrázků. A tak dále. Pokud vám však rukama (a počítačem) prochází velké množství neznámých nebo potenciálně vadných médií, asi nebudete příliš šťastní, když se Windows budou pokoušet spustit každou kravinu. Autoplay tu má jen klasické zapnuto/vypnuto. Autorun lze naproti tomu vypínat buď na jednotlivých jednotkách anebo ještě lépe, pro jednotlivé typy médií. #>
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji Autoplay…“
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers“ -Name „DisableAutoplay“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat autorun pro vyměnitelné jednotky? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji Autorun pro vyměnitelné jednotky…“
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer“ -Name „NoDriveTypeAutoRun“ -Type DWord -Value 255
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat body obnovy pro systémový disk? (A/N)‘
#Zakáže body obnovy na systémovém disku. nelze aplikovat na server
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazji body obnovy…“
Disable-ComputerRestore -Drive „$env:SYSTEMDRIVE“
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit body obnovy pro systémový disk? (A/N)‘
#Povolí body obnovy na systémovém disku. nelze aplikovat na server
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji body obnovy…“
Enable-ComputerRestore -Drive „$env:SYSTEMDRIVE“
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit automatické čištění disku? (A/N)‘
#Povolí pokročilou funkci automatického čištění disku
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji automatické čištění disku…“
If (!(Test-Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy“ -Name „01“ -Type DWord -Value 1
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy“ -Name „StoragePoliciesNotified“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat automatickou defragmentaci disku? (A/N)‘
#Zakáže automatickou defragmentaci disku
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji automatickou degrafmentaci…“
Disable-ScheduledTask -TaskName „Microsoft\Windows\Defrag\ScheduledDefrag“ | Out-Null
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit automatickou defragmentaci disku? (A/N)‘
#povolí automatickou defragmentaci disku
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji automatickou degrafmentaci…“
Enable-ScheduledTask -TaskName „Microsoft\Windows\Defrag\ScheduledDefrag“ | Out-Null
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit režim hibernace? (A/N)‘
#povolí režim hibernace ve schématech napájení
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji Hibernaci…“
Set-ItemProperty -Path „HKLM:\System\CurrentControlSet\Control\Session Manager\Power“ -Name „HibernateEnabled“ -Type Dword -Value 1
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ -Name „ShowHibernateOption“ -Type Dword -Value 1
powercfg /HIBERNATE ON 2>&1 | Out-Null
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat režim hibernace? (A/N)‘
#Zakáže režim hibernace ve schématech napájení
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji Hibernaci…“
Set-ItemProperty -Path „HKLM:\System\CurrentControlSet\Control\Session Manager\Power“ -Name „HibernateEnabled“ -Type Dword -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ -Name „ShowHibernateOption“ -Type Dword -Value 0
powercfg /HIBERNATE OFF 2>&1 | Out-Null
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat ruční přepnutí do režimu spánku? (A/N)‘
#Zakáže tlačítka režimu spánku a odebere tuto možnost ze startu
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji manuální přepnutí do režimu spánku…“
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ -Name „ShowSleepOption“ -Type Dword -Value 0
powercfg /SETACVALUEINDEX SCHEME_CURRENT SUB_BUTTONS SBUTTONACTION 0
powercfg /SETDCVALUEINDEX SCHEME_CURRENT SUB_BUTTONS SBUTTONACTION 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat automatický přčechod do režimu spánku? (A/N)‘
#zakáže automatické vypnutí displeje a přechod do režimu spánku
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji automatické přepnutí do režimu spánku…“
powercfg /X monitor-timeout-ac 0
powercfg /X monitor-timeout-dc 0
powercfg /X standby-timeout-ac 0
powercfg /X standby-timeout-dc 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat fastboot? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji fastboot…“
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Power“ -Name „HiberbootEnabled“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat centrum akcí? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji centrum akcí…“
If (!(Test-Path „HKCU:\Software\Policies\Microsoft\Windows\Explorer“)) {
New-Item -Path „HKCU:\Software\Policies\Microsoft\Windows\Explorer“ | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Policies\Microsoft\Windows\Explorer“ -Name „DisableNotificationCenter“ -Type DWord -Value 1
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\PushNotifications“ -Name „ToastEnabled“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat možnosti napájení na uzamykací obrazovce? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji možnosti napájení na uzamykací obrazovce…“
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System“ -Name „ShutdownWithoutLogon“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit možnosti napájení na uzamykací obrazovce? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji možnosti napájení na uzamykací obrazovce…“
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System“ -Name „ShutdownWithoutLogon“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete skrýt ikonu (box) vyhledávání na liště? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Skrýt ikonu (box) vyhledávání na liště…“
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Search“ -Name „SearchboxTaskbarMode“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zorbazit ikonu vyhledávání na liště? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zobrazuji ikonu vyhledávání na liště…“
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Search“ -Name „SearchboxTaskbarMode“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete skrýt ikonu Litdé na liště? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Skrývám ikonu Lidé na liště…“
If (!(Test-Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People“ | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People“ -Name „PeopleBand“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat vyhledávání aplikací pro neznámé typy souborů v MS Store? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji vyhledávání aplikací ve Store…“
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Explorer“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Explorer“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Explorer“ -Name „NoUseStoreOpenWith“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat skupinu naposledy přidaných aplikací ve startu? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji zobrazení naposledy přidaných aplikací ve startu…“
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Explorer“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Explorer“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Explorer“ -Name „HideRecentlyAddedApps“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat automatické přidání slova Zástupce do názvu zástupce aplikace či souboru? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji přidávání slova Zástupce do názvu zástupců…“
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer“ -Name „link“ -Type Binary -Value ([byte[]](0,0,0,0))
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit tmavé schéma systému? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Nastavuji tmavé schéma systému…“
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize“ -Name „AppsUseLightTheme“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete automaticky zapnout numlock? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji automatické zapnutí numlocku…“
If (!(Test-Path „HKU:“)) {
New-PSDrive -Name HKU -PSProvider Registry -Root HKEY_USERS | Out-Null
}
Set-ItemProperty -Path „HKU:\.DEFAULT\Control Panel\Keyboard“ -Name „InitialKeyboardIndicators“ -Type DWord -Value 2147483650
Add-Type -AssemblyName System.Windows.Forms
If (!([System.Windows.Forms.Control]::IsKeyLocked(‚NumLock‘))) {
$wsh = New-Object -ComObject WScript.Shell
$wsh.SendKeys(‚{NUMLOCK}‘)
}
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat změnu schématu zvuku? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zakazuji změnu schématu zvuku…“
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization“ -Name „NoChangingSoundScheme“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit změnu schématu zvuku? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Povoluji změnu schématu zvuku…“
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization“ -Name „NoChangingSoundScheme“ -ErrorAction SilentlyContinue
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zobrazit skryté soubory? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zobrazuji skryté soubory…“
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced“ -Name „Hidden“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zobrazit detaily operace se soubory? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zobrazuji detaily operace se noubory…“
If (!(Test-Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager“ | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager“ -Name „EnthusiastMode“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete skrýt upozornění synchronizace složek? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Skrývám upozornění synchronizace…“
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced“ -Name „ShowSyncProviderNotifications“ -Type DWord -Value 0
}
$V = Read-Host -Prompt ‚Chcete zobrazit upozornění synchronizace složek? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Zobrazuji upozornění synchronizace…“
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced“ -Name „ShowSyncProviderNotifications“ -Type DWord -Value 1
}
$V = Read-Host -Prompt ‚Chcete jako výchozí bod Průzkumníku po otevření Tento počítaš? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Nastavuji Průzkumník…“
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced“ -Name „LaunchTo“ -Type DWord -Value 1
}
$V = Read-Host -Prompt ‚Chcete obnovit výchozí nastavení Průzkumníku? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Nastavuji Průzkumník…“
Remove-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced“ -Name „LaunchTo“ -ErrorAction SilentlyContinue
}
$V = Read-Host -Prompt ‚Chcete zobrazit Tento počítač na ploše? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Nastavuji Průzkumník…“
If (!(Test-Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu“ -Name „{20D04FE0-3AEA-1069-A2D8-08002B30309D}“ -Type DWord -Value 0
If (!(Test-Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel“ -Name „{20D04FE0-3AEA-1069-A2D8-08002B30309D}“ -Type DWord -Value 0
}
$V = Read-Host -Prompt ‚Chcete zobrazit na ploše zástupce sožky profilu uživatele? (A/N)‘
#Zobrazí zástupce na složku, která se nachází na adrese C:\Users\, případně na jiné diskové jednoce, pokud došlo k přesměrování výchozího umístění dložek uživatelů
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Host ‚Přidávám zástupce složky profilu uživatele na plochu…‘
If (!(Test-Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu“ -Name „{59031a47-3f72-44a7-89c5-5595fe6b30ee}“ -Type DWord -Value 0
If (!(Test-Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel“ -Name „{59031a47-3f72-44a7-89c5-5595fe6b30ee}“ -Type DWord -Value 0
}
$V = Read-Host -Prompt ‚Chcete skrýt adresář 3D Obejkty z Tohoto počítače? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Odebírám ikonu složky 3D objekty z Tohoto počítače…‘
Remove-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}“ -Recurse -ErrorAction SilentlyContinue
}
$V = Read-Host -Prompt ‚Chcete odebrat položku Sdílet z kontextového menu Průzkumníku? (A/N)‘
#Tato konfigurace funkguje od verze 1709
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Odebírám položku Sdílet z kontextového menu…‘
If (!(Test-Path „HKCR:“)) {
New-PSDrive -Name „HKCR“ -PSProvider „Registry“ -Root „HKEY_CLASSES_ROOT“ | Out-Null
}
Remove-Item -LiteralPath „HKCR:\*\shellex\ContextMenuHandlers\ModernSharing“ -ErrorAction SilentlyContinue
}
$V = Read-Host -Prompt ‚Chcete přidat položku Sdílet do kontextového menu Průzkumníku? (A/N)‘
#Tato konfigurace funkguje od verze 1709
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Přidávám položku Sdílet do kontextového menu…‘
If (!(Test-Path „HKCR:“)) {
New-PSDrive -Name „HKCR“ -PSProvider „Registry“ -Root „HKEY_CLASSES_ROOT“ | Out-Null
}
New-Item -Path „HKCR:\*\shellex\ContextMenuHandlers\ModernSharing“ -ErrorAction SilentlyContinue | Out-Null
Set-ItemProperty -LiteralPath „HKCR:\*\shellex\ContextMenuHandlers\ModernSharing“ -Name „(Default)“ -Type String -Value „{e2bf9676-5f8f-435c-97eb-11607a5bedf7}“
}
}
break
}
‚5‘{
Write-Host ‚Doporučená konfigurace Windows 10‘
Write-Host ‚Doporučená konfigurace vypne telemetrii, vypne Wi-Fi Sense,‘
Write-Host ‚vypne navrhované aplikce ve startu, vypne zpětnou vazbu,‘
Write-Host ‚Vypnutí Advertising ID, vypne kortanu, vypne polohu,‘
Write-Host ‚zakáže web vyhledávání ve startu, vypne autoupdate map,‘
Write-Host ‚zakáže přístup vwebů k seznamu jazyků, povolí Controlled Folder Access,‘
Write-Host ‚Vypne protokol SMB 1.0, nastaví neznáme síťové profily jako veřejné,‘
Write-Host ‚skryje upozoenění ochrany účtu Win Defenderu, zakáže vzdálenou pomoc,‘
Write-Host ‚Vypne automatický restart po dokončení aktualizace, vypne notifikace ochrany účtu‘
Write-Host ‚Odebere předisntalované Store aplikace, odebere zástupce MS Edge z Plochy‘
Write-Host ‚Nainstaluje tisk do PDF, povolí XPS nástroje‘
Write-Host ‚Odebre výchozí fax tiskárnu, zobrazí detaily operace se soubory‘
Write-Host ‚Výchozí nastavení vypne vzdálenou plochu, vypne automatické přehrávání,‘
Write-Host ‚Vypne autorun, zapne automatické čištění disku, povolí hibernaci,‘
Write-Host ‚Odebere ikonu Lidé z lišty, zakáže automatické přidání slova Zástupce do názvu zástupců,‘
Write-Host ‚Povolí numlock po startu, zakáže přechod do režimu spánku, volitelně aplikuje tmavé schéma,‘
Write-Host ‚Zaobrazí na ploše Tento počítač, odebere adresář 3D objekty z tohoto počítače‘
$V = Read-Host -Prompt ‚Chcete aplikovat doporučenou konfiguraci? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Host ‚Aplikuji doporučené nastavení…‘
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection“ -Name „AllowTelemetry“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Policies\DataCollection“ -Name „AllowTelemetry“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection“ -Name „AllowTelemetry“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\PreviewBuilds“))
{
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\PreviewBuilds“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\PreviewBuilds“ -Name „AllowBuildPreview“ -Type DWord -Value 0
Disable-ScheduledTask -TaskName „Microsoft\Windows\Application Experience\Microsoft Compatibility Appraiser“ | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\Application Experience\ProgramDataUpdater“ | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\Autochk\Proxy“ | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\Customer Experience Improvement Program\Consolidator“ | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\Customer Experience Improvement Program\UsbCeip“ | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticDataCollector“ | Out-Null
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting“))
{
New-Item -Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting“ -Name „Value“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots“))
{
New-Item -Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots“ -Name „Value“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\WcmSvc\wifinetworkmanager\config“))
{
New-Item -Path „HKLM:\SOFTWARE\Microsoft\WcmSvc\wifinetworkmanager\config“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\WcmSvc\wifinetworkmanager\config“ -Name „AutoConnectAllowedOEM“ -Type Dword -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\WcmSvc\wifinetworkmanager\config“ -Name „WiFISenseAllowed“ -Type Dword -Value 0
Set-ItemProperty -Path „HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager“ -Name „SystemPaneSuggestionsEnabled“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location“))
{
New-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location“ -Name „Value“ -Type String -Value „Deny“
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Sensor\Overrides\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}“ -Name „SensorPermissionState“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Services\lfsvc\Service\Configuration“ -Name „Status“ -Type DWord -Value 0
If (!(Test-Path „HKCU:\Software\Microsoft\Siuf\Rules“))
{
New-Item -Path „HKCU:\Software\Microsoft\Siuf\Rules“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Siuf\Rules“ -Name „NumberOfSIUFInPeriod“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection“ -Name „DoNotShowFeedbackNotifications“ -Type DWord -Value 1
Disable-ScheduledTask -TaskName „Microsoft\Windows\Feedback\Siuf\DmClient“ -ErrorAction SilentlyContinue | Out-Null
Disable-ScheduledTask -TaskName „Microsoft\Windows\Feedback\Siuf\DmClientOnScenarioDownload“ -ErrorAction SilentlyContinue | Out-Null
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo“))
{
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo“ -Name „DisabledByGroupPolicy“ -Type DWord -Value 1
If (!(Test-Path „HKCU:\Software\Microsoft\Personalization\Settings“))
{
New-Item -Path „HKCU:\Software\Microsoft\Personalization\Settings“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Personalization\Settings“ -Name „AcceptedPrivacyPolicy“ -Type DWord -Value 0
If (!(Test-Path „HKCU:\Software\Microsoft\InputPersonalization“))
{
New-Item -Path „HKCU:\Software\Microsoft\InputPersonalization“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\InputPersonalization“ -Name „RestrictImplicitTextCollection“ -Type DWord -Value 1
Set-ItemProperty -Path „HKCU:\Software\Microsoft\InputPersonalization“ -Name „RestrictImplicitInkCollection“ -Type DWord -Value 1
If (!(Test-Path „HKCU:\Software\Microsoft\InputPersonalization\TrainedDataStore“))
{
New-Item -Path „HKCU:\Software\Microsoft\InputPersonalization\TrainedDataStore“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\InputPersonalization\TrainedDataStore“ -Name „HarvestContacts“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“ -Name „AllowCortana“ -Type DWord -Value 0
$V = $null
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Search“ -Name „BingSearchEnabled“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Search“ -Name „CortanaConsent“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search“ -Name „DisableWebSearch“ -Type DWord -Value 1
Set-ItemProperty -Path „HKLM:\SYSTEM\Maps“ -Name „AutoUpdateEnabled“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Control Panel\International\User Profile“ -Name „HttpAcceptLanguageOptOut“ -Type DWord -Value 1
Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\CurrentVersion\NetworkList\Signatures\010103000F0000F0010000000F0000F0C967A3643C3AD745950DA7859209176EF5B87C875FA20DF21951640E807D7C24“ -Name „Category“ -ErrorAction SilentlyContinue
Set-MpPreference -EnableControlledFolderAccess Enabled -ErrorAction SilentlyContinue
If (!(Test-Path „HKCU:\Software\Microsoft\Windows Security Health\State“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows Security Health\State“ -Force | Out-Null
}
Set-ItemProperty „HKCU:\Software\Microsoft\Windows Security Health\State“ -Name „AccountProtection_MicrosoftAccount_Disconnected“ -Type DWord -Value 1
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU“ -Name „NoAutoRebootWithLoggedOnUsers“ -Type DWord -Value 1
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU“ -Name „AUPowerManagement“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Control\Remote Assistance“ -Name „fAllowToGetHelp“ -Type DWord -Value 0
If (!(Test-Path „HKCU:\Software\Microsoft\Windows Security Health\State“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows Security Health\State“ -Force | Out-Null
}
Set-ItemProperty „HKCU:\Software\Microsoft\Windows Security Health\State“ -Name „AccountProtection_MicrosoftAccount_Disconnected“ -Type DWord -Value 1
Get-AppxPackage -AllUsers „Microsoft.3DBuilder“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.AppConnector“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.BingFinance“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.BingNews“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.BingSports“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.BingTranslator“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.BingWeather“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.CommsPhone“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.ConnectivityStore“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.GetHelp“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Getstarted“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Messaging“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Microsoft3DViewer“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MicrosoftOfficeHub“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MicrosoftPowerBIForWindows“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MicrosoftSolitaireCollection“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MinecraftUWP“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MSPaint“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.NetworkSpeedTest“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Office.OneNote“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Office.Sway“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.OfficeLens“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.OneConnect“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.People“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Print3D“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.RemoteDesktop“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.SkypeApp“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Todos“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Wallet“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Whiteboard“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsAlarms“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsCamera“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „microsoft.windowscommunicationsapps“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsFeedbackHub“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsMaps“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsPhone“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WindowsSoundRecorder“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.ZuneMusic“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.ZuneVideo“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.WebMediaExtensions“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.MixedReality.Portal“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.YourPhone“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.ScreenSketch“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „2414FC7A.Viber“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „41038Axilesoft.ACGMediaPlayer“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „46928bounde.EclipseManager“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „4DF9E0F8.Netflix“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „64885BlueEdge.OneCalendar“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „7EE7776C.LinkedInforWindows“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „828B5831.HiddenCityMysteryofShadows“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „89006A2E.AutodeskSketchBook“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „9E2F88E3.Twitter“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „A278AB0D.DisneyMagicKingdoms“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „A278AB0D.MarchofEmpires“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „ActiproSoftwareLLC.562882FEEB491“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „AdobeSystemsIncorporated.AdobePhotoshopExpress“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „CAF9E577.Plex“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „D52A8D61.FarmVille2CountryEscape“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „D5EA27B7.Duolingo-LearnLanguagesforFree“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „DB6EA5DB.CyberLinkMediaSuiteEssentials“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „DolbyLaboratories.DolbyAccess“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Drawboard.DrawboardPDF“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „E046963F.LenovoCompanion“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Facebook.Facebook“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Fitbit.FitbitCoach“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „flaregamesGmbH.RoyalRevolt2“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „GAMELOFTSA.Asphalt8Airborne“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „KeeperSecurityInc.Keeper“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „king.com.BubbleWitch3Saga“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „king.com.CandyCrushSodaSaga“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „LenovoCorporation.LenovoID“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „LenovoCorporation.LenovoSettings“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „PandoraMediaInc.29680B314EFC2“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „SpotifyAB.SpotifyMusic“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „WinZipComputing.WinZipUniversal“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „XINGAG.XING“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „king.com.CandyCrushSaga“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Nordcurrent.CookingFever“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „A278AB0D.DragonManiaLegends“ | Remove-AppxPackage
Get-AppxPackage -allusers „Microsoft.549981C3F5F10“ | Remove-AppxPackage
Get-appxprovisionedpackage -online | where-object {$_.packagename –like “*Microsoft.549981C3F5F10*”} | Remove-AppxProvisionedPackage -online
Get-appxprovisionedpackage –online | where-object {$_.packagename –notlike “*store*”} | where-object {$_.name -notlike „*Microsoft.WindowsCalculator*“} | where-object {$_.name -notlike „*Microsoft.Windows.Photos*“} | Remove-AppxProvisionedPackage -online
Get-AppxPackage -AllUsers „Microsoft.XboxApp“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.XboxIdentityProvider“ | Remove-AppxPackage -ErrorAction SilentlyContinue
Get-AppxPackage -AllUsers „Microsoft.XboxSpeechToTextOverlay“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.XboxGameOverlay“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.XboxGamingOverlay“ | Remove-AppxPackage
Get-AppxPackage -AllUsers „Microsoft.Xbox.TCUI“ | Remove-AppxPackage
Set-ItemProperty -Path „HKCU:\System\GameConfigStore“ -Name „GameDVR_Enabled“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR“ -Name „AllowGameDVR“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer“ -Name „DisableEdgeDesktopShortcutCreation“ -Type DWord -Value 1
If ((Get-CimInstance -Class „Win32_OperatingSystem“).ProductType -eq 1) {
Disable-WindowsOptionalFeature -Online -FeatureName „MicrosoftWindowsPowerShellV2Root“ -NoRestart -WarningAction SilentlyContinue | Out-Null
} Else {
Uninstall-WindowsFeature -Name „PowerShell-V2“ -WarningAction SilentlyContinue | Out-Null
}
#If ((Get-CimInstance -Class „Win32_OperatingSystem“).ProductType -eq 1) {
#Enable-WindowsOptionalFeature -Online -FeatureName „NetFx3“ -NoRestart -WarningAction SilentlyContinue | Out-Null
#} Else {
#Install-WindowsFeature -Name „NET-Framework-Core“ -WarningAction SilentlyContinue | Out-Null
#}
Enable-WindowsOptionalFeature -Online -FeatureName „Printing-PrintToPDFServices-Features“ -NoRestart -WarningAction SilentlyContinue | Out-Null
Enable-WindowsOptionalFeature -Online -FeatureName „Printing-XPSServices-Features“ -NoRestart -WarningAction SilentlyContinue | Out-Null
Remove-Printer -Name „Fax“ -ErrorAction SilentlyContinue
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server“ -Name „fDenyTSConnections“ -Type DWord -Value 1
Set-ItemProperty -Path „HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp“ -Name „UserAuthentication“ -Type DWord -Value 1
Disable-NetFirewallRule -Name „RemoteDesktop*“
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers“ -Name „DisableAutoplay“ -Type DWord -Value 0
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer“ -Name „NoDriveTypeAutoRun“ -Type DWord -Value 255
If (!(Test-Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy“ -Name „01“ -Type DWord -Value 1
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy“ -Name „StoragePoliciesNotified“ -Type DWord -Value 1
Set-ItemProperty -Path „HKLM:\System\CurrentControlSet\Control\Session Manager\Power“ -Name „HibernateEnabled“ -Type Dword -Value 1
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ -Name „ShowHibernateOption“ -Type Dword -Value 1
powercfg /HIBERNATE ON 2>&1 | Out-Null
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ -Name „ShowSleepOption“ -Type Dword -Value 0
powercfg /SETACVALUEINDEX SCHEME_CURRENT SUB_BUTTONS SBUTTONACTION 0
powercfg /SETDCVALUEINDEX SCHEME_CURRENT SUB_BUTTONS SBUTTONACTION 0
If (!(Test-Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People“ | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People“ -Name „PeopleBand“ -Type DWord -Value 0
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer“ -Name „link“ -Type Binary -Value ([byte[]](0,0,0,0))
If (!(Test-Path „HKU:“)) {
New-PSDrive -Name HKU -PSProvider Registry -Root HKEY_USERS | Out-Null
}
Set-ItemProperty -Path „HKU:\.DEFAULT\Control Panel\Keyboard“ -Name „InitialKeyboardIndicators“ -Type DWord -Value 2147483650
Add-Type -AssemblyName System.Windows.Forms
If (!([System.Windows.Forms.Control]::IsKeyLocked(‚NumLock‘))) {
$wsh = New-Object -ComObject WScript.Shell
$wsh.SendKeys(‚{NUMLOCK}‘)
}
If (!(Test-Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager“ | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager“ -Name „EnthusiastMode“ -Type DWord -Value 1
If (!(Test-Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“)) {
New-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings“ -Name „ShowSleepOption“ -Type Dword -Value 0
powercfg /SETACVALUEINDEX SCHEME_CURRENT SUB_BUTTONS SBUTTONACTION 0
powercfg /SETDCVALUEINDEX SCHEME_CURRENT SUB_BUTTONS SBUTTONACTION 0
powercfg /X standby-timeout-ac 0
powercfg /X standby-timeout-dc 0
$V = Read-Host -Prompt ‚Chcete povolit tmavé schéma systému? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output „Nastavuji tmavé schéma systému…“
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize“ -Name „AppsUseLightTheme“ -Type DWord -Value 0
$V = $null
}
If (!(Test-Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu“ -Name „{20D04FE0-3AEA-1069-A2D8-08002B30309D}“ -Type DWord -Value 0
If (!(Test-Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel“)) {
New-Item -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel“ -Force | Out-Null
}
Set-ItemProperty -Path „HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel“ -Name „{20D04FE0-3AEA-1069-A2D8-08002B30309D}“ -Type DWord -Value 0
Remove-Item -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}“ -Recurse -ErrorAction SilentlyContinue
}
break
}
‚6‘{
Write-Host ‚Konfigurace určená pro Servery‘
Write-Host ‚Zde již není žádné výchozí doporučené nastavení‘
$V = Read-Host -Prompt ‚Chcete zakázat automatické zobrazení ServerManger po přihlášení? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Vypínám automatické zobrazování ServerManager po přihlášení…‘
If (!(Test-Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Server\ServerManager“)) {
New-Item -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Server\ServerManager“ -Force | Out-Null
}
Set-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Server\ServerManager“ -Name „DoNotOpenAtLogon“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit automatické zobrazení ServerManger po přihlášení? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Zapínáím automatické zobrazování ServerManager po přihlášení…‘
Remove-ItemProperty -Path „HKLM:\SOFTWARE\Policies\Microsoft\Windows\Server\ServerManager“ -Name „DoNotOpenAtLogon“ -ErrorAction SilentlyContinue
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat CTRL+ALT+DELETE pro přechod z uzamykací obrazovky k přihlášení? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Zakazuji CTRL+ALT+DELETE pro přihlášení…‘
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System“ -Name „DisableCAD“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit CTRL+ALT+DELETE pro přechod z uzamykací obrazovky k přihlášení? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Povoluji CTRL+ALT+DELETE pro přihlášení…‘
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System“ -Name „DisableCAD“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat rozšířené zabezpečení Internet Exploreru? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Zakazuji rozšířená zabezpečení Internet Exploreru…‘
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A7-37EF-4b3f-8CFC-4F3A74704073}“ -Name „IsInstalled“ -Type DWord -Value 0
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A8-37EF-4b3f-8CFC-4F3A74704073}“ -Name „IsInstalled“ -Type DWord -Value 0
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit rozšířené zabezpečení Internet Exploreru? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Zakazuji rozšířená zabezpečení Internet Exploreru…‘
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A7-37EF-4b3f-8CFC-4F3A74704073}“ -Name „IsInstalled“ -Type DWord -Value 1
Set-ItemProperty -Path „HKLM:\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A8-37EF-4b3f-8CFC-4F3A74704073}“ -Name „IsInstalled“ -Type DWord -Value 1
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit zvuk? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Povoluji zvuk…‘
Set-Service „Audiosrv“ -StartupType Automatic
Start-Service „Audiosrv“ -WarningAction SilentlyContinue
$V = $null
}
$V = Read-Host -Prompt ‚Chcete zakázat zvuk? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Zakazuji zvuk…‘
Stop-Service „Audiosrv“ -WarningAction SilentlyContinue
Set-Service „Audiosrv“ -StartupType Manual
$V = $null
}
$V = Read-Host -Prompt ‚Chcete povolit Wi-Fi? (A/N)‘
#Lze aplikovat na Windows server 2008 až 2019 s odpovídajícím HW a ovladači.
#Z vlastní zkušenosti doporučuji spíše užít ServerManager a přidání Rolí/Funkcí
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Output ‚Povoluji Wi-Fi…‘
Install-WindowsFeature -Name Wireless-Networking
Write-Output ‚Po restartu zadejte příkaz: Net start WlanSvc‘
$V = $null
}
}
‚?'{
Write-Host “
Write-Host ‚Informace a nápověda‘
Write-Host “
Write-Host ‚Autor: Petrásek Jan‘
Write-Host ‚web: elektrotechnika.vesele.info‘
Write-Host ‚Verze: 1.0‘
Write-Host ‚©2018‘
Write-Host “
Write-Host ‚UPOZORNĚNÍ: Skript musí být spuštěn jako správce, jinak neproběhnou požadované změny!‘
Write-Host ‚UPOZORNĚNÍ: Autor nenese žádnou odpovědnost za případné škody a problémy!‘
Write-Host ‚Skript je užíván na vlastní odpovědnost!‘
Write-Host “
$nap = Read-Host -Prompt ‚Chcete vypsat nápovědu? (A/N)‘
if($nap -eq ‚A‘ -or $nap -eq ‚a‘)
{

Write-Host “
Write-Host ‚OBLAST SOUKROMÍ NASTAVUJE, co všechno o aktivitách může počítač shraňovt‘
Write-Host ‚a jaká diagnostická data může odesílat. Rovněž nastavuje, které služby mají k čemu přístup.‘
Write-Host “
Write-Host ‚OBLAST SLUŽEB NASTAVUJE, chování vybraných služeb systému Windows, především nastavení přístupu‘
Write-Host ‚a ochrany jako je Windows FireWall, Windows Defender a komunikační protokoly.‘
Write-Host “
Write-Host ‚OBLAST APLIKACÍ, umožní odebrat předinstalované Store aplikace, nastavit virtuální tiskárny‘
Write-Host ‚a nastavit vybrané role a funkce operačního systému‘
Write-Host “
Write-Host ‚OBLAST FUNKCÍ umožní nastavení zástupců, uživatelského rozhraní a napájení‘
Write-Host “
Write-Host ‚OBLAST DOPORUČENÉ NASTAVENÍ aplikuje nastavení napříč všemi předešlími oblastmi,‘
Write-Host ‚které jako admin a dlouholetý člen Insider programu považuji za optimální pro běžného užoivatele‘
Write-Host “
Write-Host ‚OBLAST SERVEROVÉ FUNKCE obsahuje nastavení specifiká pro optimalizaci uživatelského rozhraní Windows Server,‘
Write-Host ‚na servery je ovšem možné aplikovat i nastavení z něktrých předešlích oblastí, v komentáři je vždy uvedeno,‘
Write-Host ‚která nastavení opravdu nelze aplikovat, nebo která jsou primárně k tomu uzpůsobena‘
Write-Host “
Write-Host ‚K provedení konfigurace jsou hojně využívány registry systému, proto se konfigurace projeví až po restartu počítače.‘
Write-Host ‚Před spuštěním konfigurace, nebo dokončením skriptu uložte svou práci a zavřete ostatní programy.‘
Write-Host ‚Krom registů je používán nástroj DISM a další nástroje, které mají na starost konkrétní nastavení.‘
$V = $null
$nap = $null
Write-Host “
$V = Read-Host -Prompt ‚Chcete vypsat informace o vybraných konfiguracích? (A/N)‘
if($V -eq ‚A‘ -or $V -eq ‚a‘)
{
Write-Host ‚TELEMETRIE‘
Write-Host ‚Telemetry je služba zajišťující sběr dat pro Microsoft Customer Experience Improvement Program.‘
Write-Host ‚V podstatě jde o to, že shromažďuje údaje o tom, co děláte a jak to děláte, anonimizuje je a posílá je Microsoftu.‘
Write-Host “
Write-Host ‚WI-FI SENSE‘
Write-Host ‚Wi-Fi Sense je relativně zajímavá služba. Umožňuje sdílení přístupů k Wi-Fi sítím s vašimi‘
Write-Host ‚přáteli na sociálních sítích, takže v případě, že vás navštíví, bude jim automaticky umožněn přístup k vaší Wi-Fi.‘
Write-Host ‚Tato na první pohled přátelská funkce může při polevení velké obezřetnosti představovat zásadní bezpečností problém‘
Write-Host “
Write-Host ‚SMARTSCREEN‘
Write-Host ‚SmartScreen je bezpečností funkce, kterou bych méně počítačově gramotným jedincům nedoporučoval vypínat.‘
Write-Host ‚SmartScreen kouká na to, na co koukáte vy (webové stránky, stahování souborů) a porovnává s bezpečnostní databází Microsoftu,‘
Write-Host ‚zda stránky, na které se pokoušíte dostat, nemohou být škodlivé pro váš počítač nebo zda soubor, který jste právě stáhli,‘
Write-Host ‚je digitálně podepsán platným certifikátem.‘
Write-Host “
Write-Host ‚WEBOVÉ VYHLEDÁVÁNÍ VE STARTU‘
Write-Host ‚Tato funkce umožňuje pomocí vyhledávání ve Windows nalézt nejen programy a soubory, jak tomu bylo u Windows 7,‘
Write-Host ‚ale stejně jako u systému Windows 8 a 8.1 umožňuje vrátit i výsledky vyhldávače Bing z interntu.‘
Write-Host ‚Vrácení výsledků z internetu je sice potřeba povolit, ale již webové vyhledávání není tak jednoznačně odděleno jako u Windows 8.‘
Write-Host “
Write-Host ‚NAVRHOVANÉ APLIAKCE ZE STORE VE STARTU‘
Write-Host ‚Součástí nové politiky Microsoftu, že Windows jsou služba, jsou různé reklamy prolezlé vyhledáváním (stejně jako Windows 8.1 Bing),‘
Write-Host ‚ale nově se objevuje reklama v podobě návrhů Store aplikací přímo ve startu systému.‘
Write-Host ‚Tyto aplikace jsou uživateli navrhovány na základě toho, jaké již využívá a jaké programy hledá na webu.‘
Write-Host ‚Tato funkce jde vypnout pomocí Nastavení pro každého uživatele samostatně, nebo pomcí registru pro všechny.‘
Write-Host “
Write-Host ‚ZJIŠŤOVÁNÍ POLOHY‘
Write-Host ‚Opět jde o funkci, kterou je možné vypnout na několika místech v nastavení a týká se jen zařízení s GPS modulem.‘
Write-Host ‚Tato funkce umožňuje pomocí GPS najít polohu zařízení na mapě a krom offline navigace ji využívá i funkce‘
Write-Host ‚Najdi moje zařízení, kterou bych doporučil v případě telefonů a tabletů zapnout.‘
Write-Host ‚Tato funkce nemá žádný vliv na lokalizaci zařízení pomocí IP adresy od poskytovatele připojení, proti lokalizaci‘
Write-Host ‚pomocí IP adresy poskytovatele připojení je potřeba použít TOR nebo VPN pro připojení k síti.‘
Write-Host “
Write-Host ‚FEEDBACK‘
Write-Host ‚Pomocí této funkce a k ní přidružené univerzální aplikace Microsoft zjiš´tuje, jak jsou uživatelé spokojeni‘
Write-Host ‚s novinkami a co uživatelům chybí. Na insternetu nebo v MS aplikacích je možné totožnou funkci objevit jako‘
Write-Host ‚User Voice, případně se schovává pod totožným názvem. Opět se jedná o nové pojetí systému Windows jako služby‘
Write-Host ‚a nutno Microsoftu přiznat, že se v řadě kroků řídí právě výsledky User Voice přidávání nových funckí do Windnows‘
Write-Host ‚a aplikací. Hlasy zde monou (pokud je to bezpečnostně v pořádku) rovněž donut MS k zachování určité zastaralé funkce.‘
Write-Host “
Write-Host ‚ADVERTISTING ID (REKLAMNÍ ID)‘
Write-Host ‚Jde o funkci, která se týká především uživatelů, kteří na Windows používají svůj Microsoft účet a jde zakázat při dokončování‘
Write-Host ‚instalace Windows. Tato funcke povoluje a zařizuje sběr dat pro perzonalizaci rekam zobrazovaných systém Windows danému uživateli.‘
Write-Host ‚Nové buildy (1803 a novější) si pro užoivatele s místním účetem vytvoří servisní ID (pokud je služba zapnuta), které je unikátní‘
Write-Host ‚pro kombinace stroje a uživatele sloužící jako náhrada MS účtu pro tento účel. „výhodou“ je, že se nepřenáší nastavení reklam‘
Write-Host ‚mezi jednotlivými zařízením, které uživatel poiužívá, protože není spojené s konkrétní osobou.‘
Write-Host “
Write-Host ‚CORTANA‘
Write-Host ‚Cortana je umělá inteligence, která funguje jako osobní asistent. V první fázi sbírá data, aby se dozvěděla o vašich návycích‘
Write-host ‚používání zařízení, vašem písmu (píšete-li rukou nebo stylusem), vašich kontaktech, o tom co vyhledáváte na internetu a tak‘
Write-Host ‚vůbec si o vás udělala obrázek, co jste to za uživatele. Ve fázi druhé už ji můžete komandovat přes hlasové rozhraní a ona vám‘
Write-Host ‚bude zprostředkovávat funcke Windows a realizovat jednoduché úkony ve Windows a podporovaných aplikacích jako je Offce, nebo vybrané‘
Write-host ‚aplikace ze Store (např Pošta a kalendář). Celý systém je cloudovou službou Microsoftu a všechna potřebná data se zabezpečeně‘
Write-Host ‚poslají přes internet na servery Microsoftu. Celá služba je dostupná v Americké a anglické lokalizaci Systému a nepodporuje‘
Write-Host ‚české rozhraní systému a ni český jazykový balíček či lokalizaci. V plně česky nastaveném systému se služba automaticky vypne a nahradí‘
Write-Host ‚službou Bing Search pro textové vyhledávání na internetu. Pokud se změní lokalizace OS, tak je možné pomocí příkazů v anglickém jazyce‘
Write-Host ‚službu pooužívát pro vyhledávání na intertu, práci s MS Outlook nebo poštou a kalendářem a jedostupná pro vyhldávání dokumentů a palikací.‘
Write-Host “
Write-Host ‚IMPLICITNĚ SDÍLENÉ PLOŽKY‘
Write-Host ‚Každá instalace Windows ve výchozím stavu sdílí všechny své disky, adresář Windows a tiskárny a faxy. Sice se jedná o skryté položky,‘
Write-Host ‚ale každý, kdo už s nimi někdy přišel do styku tuší, kde je hledat (Nápověda: C$, ADMIN$, FAX$, PRINT$). Ty je pak možno mapovat třeba‘
Write-Host ‚na vzdálené ploše, nicméně ne vždy je žádoucí aby uživatelé měli plný přístup i k systémovému disku hostitele.‘
Write-Host “
Write-Host ‚WINDOWS DEFENDER‘
Write-Host ‚Dnes je antimalwarovým řešením obsaženým ve Windows 10 a pracuje na základě Mashinelernigových modelů a cloudového scannu v případě nejastností.‘
Write-Host ‚Základní integrované řešení je možné rozšířit o placenou verzi ATP, která je součástí pronájmového modelu licencí Windows 10 Enterprise a obsahuje‘
Write-Host ‚více cloudového výkonu a centrální monitoring nad organizací. Defender dnes krom FireWallu a antimalware obsahuje i další původně Enterprise funkce‘
Write-Host ‚jako anramsomware, Aplication Gard, CodeIntegrity, izolaci jádra OS další bezpečnostní funkce.‘
Write-Host ‚V případě instalace jiného antimawarového (resp. anivirového) řešení musí být vypnutá jeho realtime ochrama, ale stále (pokud nedojde k úplnému vypnutí)‘
Write-Host ‚může fungovat jako scanner a monitorovací nástroj nad aktivitou zařízení.‘
Write-Host ‚V porovnání s verzí, která byla ve Windows 7 nebo 8 si vede výraně lépe v porovnání s jinými antimalwarovými řešeními.‘
Write-Host “
Write-Host ‚NÁSTROJ PRO ODSTRANĚNÍ ŠKODLIVÉHO KÓDU‘
Write-Host ‚Jedná se o antimalwarový scanner podobný svým chováním třeba Kaspersky Virus Remove Tool, který chodí prostřednicvtím‘
Write-Host ‚Windows Update a provede jednorázovou kontrolu zařízení na přítomnost škodlivého kódu a jeho vyčištění.‘
Write-Host ‚Pomocí admin nástrojů je možné sken tímto nástrojem vyvolat i ručně, nicméně jeho kvalita odpovídá Windows Defenderu,‘
Write-Host ‚tudíž doporučuji pro skenování užívat Kaspersky Virus Remove Tool, nicméně toto dokáže být užitečným pomocníkem k‘
Write-Host ‚vašemu antimalwarovému řešení, nikoliv jeho náhradou.‘
Write-Host “
Write-Host ‚AUTOMATICKÝ RESTART WINDOWS UPDATE‘
Write-Host ‚Jde o funkci, která má dokončit instalaci aktualizací v co nejkaratší době po jejich stažení a rozbalení. Typicky se‘
Write-Host ‚ve Windows 10 řídí Dobou aktivního používání, kdy restart neprovede. Pomocí PowerShellu je možné tuto funkci vypnout‘
Write-Host ‚a nahradit ji jen notifikací připravenosti aktualizace na restart, aby si uživatel sám určil, kdy k tomu dojde.‘
Write-Host “
Write-Host ‚DOMÁCÍ SKUPINY‘
Write-Host ‚Domácí skupiny slouží ke sdílení tiskáren a vybraných knihoven systému Windows mezi počítači s Windows 7 a novějším‘
Write-Host ‚při jejich domácím užitím, tato funkce není kompatibilní se zařazením do domény (a to ani u Win Server Esential).‘
Write-Host “
Write-Host ‚VZDÁLENÁ PODPORA‘
Write-Host ‚Jde o funkci, která umožní pracovníkům technické podpory se připojit k Vašemu PC a to jen v případě, že zadáte‘
Write-Host ‚jednorázový kód, který danou operaci v rámci řešení vašeho požadavku umožní. Samozřejmě není po instalaci Windows‘
Write-Host ‚se nachází tato funkce v zapnutém stavu a doporučuji ji vypnout, její aktivace v případě potřetřeby stojí tři‘
Write-Host ‚kliknutí a nevyžaduje restart, deaktivací této funkce seberete potenciální vektor útoku na Váš systém.‘
Write-Host “
Write-Host ‚VZDÁLENÁ PLOCHA‘
Write-Host ‚Umožńuje vyjmenovaným uživatelům (nebo skupinám) připojit se k PC i prostřednictvím sítě, zobrazit plochu tohoto PC‘
Write-Host ‚a ovládat jej z jiného PC s Windows nebo Linux (s podporou RDP protokolu). V domácím prostředí doporučuji tuto funkci‘
Write-Host ‚ponechat vypnutou (v základu po instalaci Windows je vypnuta), naopak ve firemním prostředí je potřeba, aby byla zapnuta‘
Write-Host ‚pro uživatele skupiny Administrators.‘
Write-Host “
Write-Host ‚AUTORUN A AUTOPLAY‘
Write-Host ‚Autorun a autoplay jsou dvě funkce pro přehrávání obsahu, které jdou ruku v ruce. Klasický autorun jednoduše donutí operační‘
Write-Host ‚systém zareagovat na změnu média, tedy třeba vsunutí DVD nebo flash disku. Systém se pak podívá, zda na médiu existuje soubor‘
Write-Host ‚autorun.inf a podle něj pak médiu nastaví ikonku a přidělí akci na dvojklik, případně další akce do kontextového menu.‘
Write-Host ‚Autoplay je pak pokročilejší funkce, která se pokusí zjistit typ obsahu média a podle toho spustí aplikaci, která si s daným‘
Write-Host ‚obsahem nejlépe poradí. Tedy pokud do USBčka zabodnete flešku plnou MP3, nabídne spuštění hudebního přehrávače. Pokud připojíte‘
Write-Host ‚foťák s fotkami z dovolené, nastartuje váš výchozí prohlížeč obrázků. A tak dále. Pokud vám však rukama (a počítačem) prochází‘
Write-Host ‚velké množství neznámých nebo potenciálně vadných médií, asi nebudete příliš šťastní, když se Windows budou pokoušet spustit‘
Write-Host ‚každou kravinu. Autoplay tu má jen klasické zapnuto/vypnuto. Autorun lze naproti tomu vypínat buď na jednotlivých jednotkách‘
Write-Host ‚anebo ještě lépe, pro jednotlivé typy médií.‘
Write-Host “
Write-Host ‚TASK VIEW‘
Write-Host ‚Jedná se o tlačítko lišty, které v sobě schovává přepínání virtuálních ploch, všechny aktuaálně běžící aplikace na dané ploše a‘
Write-Host ‚od verze 1803 rovněž historii aktivit z podporovaných aplikací. Pro přepínání aplikací je i nadále možné využívat klávesovou‘
Write-Host ‚zkratku ALT+TAB a pro práci splochami klávesové zkratky CTRL+WIN+D (nová plocha), CTRL+WIN+šipka (přechod mezi plochami)‘
Write-Host ‚WIN+TAB (pro přehled) a CTRL+WIN+F4 (zavření plochy)‘
Write-Host “
Write-Host ‚NUMLOCK PO STARTU‘
Write-Host ‚Často Windows instaluju na laptopy, které nemají numerickou část klávesnice, ale NumLock‘
Write-Host ‚i přesto mají. Pokud je zapnutý, místo znaků v pravé části alfanumerické klávesnice se‘
Write-Host ‚píšou číslice, takže z „Ahoj mami“ vznikne „Ah61 0a05“, což teda rozhodně za výhru nepovažuju.‘
Write-Host ‚Krom toho tu a tam nastavení klávesnice občas przní nějaké proprietární ovladače a to‘
Write-Host ‚radši ani nezmiňuju, že do toho ještě může kecat i BIOS. Výchozí stav NumLocku je určen‘
Write-Host ‚bitmaskou uloženou v klíči InitialKeyboardIndicatorsv registru. V bitmasce můžou bt nastaveny‘
Write-Host ‚hodnoty 0 pro „NumLock vždy vypnut“, 2 pro „NumLock vždy zapnut“ a 2147483648 pro „nastav tuhle‘
Write-Host ‚hodnotu jen pokud nemá uživatel uloženo něco jiného“. Primitivní úkol se tak rázem trochu komplikuje,‘
Write-Host ‚protože není vždy jasné, jaká je výchozí hodnota té či oné konfigurace. Pokud není povolen Numlock‘
Write-Host ‚Což v praxi znamená, že NumLock je zapnutý po startu systému, předtím, než se přihlásí uživatel.‘
Write-Host ‚Po přihlášení se ale už vezme poslední stav nastavený pro konkrétního uživatele, takže pokud se naposledy‘
Write-Host ‚odhlásil s vypnutým NumLockem, bude vypnutý i teď a uživatel si jej musí ručně zapnout. Pokud se naposledy‘
Write-Host ‚uživatel odhlásil se zapnutým NumLockem, bude jej mít zapnutý i nadále. A kdyby‘
Write-Host ‚uvedený kód nefungoval může hodnotu změnit na 2, čímž by měl zapnutí NumLocku vynutit ve všech případech.‘
Write-Host ‚V UFI, tak jej ani pomocí registru automaticky nezapneme, protože nastavení vnucené UFI většinou vyhraje‘
Write-Host “
Write-Host ‚SUBSYSTÉM FOR LINUX‘
Write-Host ‚Jde o funkci především pro vývojáře, nebo správce sítě či studenty informatiky. Po aktivaci této komponenty‘
Write-Host ‚a přepnutí do vývojářského režimu ve starších buildech (1709 a starší) stačí v příkazovém řádku napsat příkaz‘
Write-Host ‚BASH a následně jde již využívat linuxové příkazy a jsou k dispozici běžné příkazy distribuce Ubuntu. Oficialně‘
Write-Host ‚není podporováno grafické rozhraní (třeba GNU nenaistaluji jako celek), ale je možné spouštět aplikace určené‘
Write-Host ‚pro Linux, nebo využít východ Bash pro běžnou práci. Fyzické jednotky je nutné mapovat, výchozí jednoutkou je‘
Write-Host ‚adresář subsystému, který se tváří jako virtuální disk. Tato funkce nemá plnohodnotně nahradit Linux a tak je‘
Write-Host ‚i nadále pro některé účely potřeba instalovat virtuální Pc s Linuxem, nebo použít dualboot, ale pro potřeby‘
Write-Host ‚vývoje aplikací či základní úlohy zprávy, nebo kompatibilitu s dalšími Linuxovými stroji jde rozhodně o dobrý‘
Write-Host ‚nádstroj. Od verze 1803 je možné daný nástroj nahradit rovněž Linuxy staženými ze Store, kde si je možné vybrat‘
Write-Host ‚distribuci dle vlastního uvážení a dostanu rovněž Bash a nástroje dané distribuce všetně instalace aplikací.‘
Write-Host “
Write-Host ‚WINDOWS PHOTO VIEWER‘
Write-Host ‚Windows 7 a 8 v sobě měly integrovaný prohlížeč obrázků. Nebyla to sice žádná kdovíjak funkcemi nabitá aplikace,‘
Write-Host ‚ale na prohlížení a otáčení fotek mnohým bohatě stačila. V desítkách je výchozím prohlížečem fotek aplikace,‘
Write-Host ‚nápaditě nazvaná Fotky. Pokud ale odeberete Metro aplikace, je jedinou zbývající možností „vysoce profesionální“‚
Write-Host ‚grafický nástroj zvaný Malování. Windows Photo Viewer prostě zmizel. Anebo nezmizel? photoviewer.dll ve Win10 pořád je,‘
Write-Host ‚akorát se jej nikdo neobtěžoval vytáhnout ven mezi použitelné aplikace. Použití právě Windows Photo Viewwr mohu‘
Write-Host ‚jako správce sítě doporučit i vy případě, kdy je v stíti kopírka od Conica Minolta a využívá ověření uživatele, velká‘
Write-Host ‚část běžně užívaných modelů nemá plnou podporu Windows 10 a balíčky jdoucí z UWP často vednou k zaseknutí tiskové fonty,‘
Write-Host ‚takže krom Malování nebo profi aplikace pak pro tisk zbývá záložka Sdílení v Průzkumníku, nebo právě Windows Photo Viewer.‘
Write-Host “
Write-Host ‚NASTAVENÍ SPOUŠTĚNÍ WINDOWS KLÁVESOU F8‘
Write-Host ‚Když jste na starších verzích Windows při startu mačkali F8, dostali jste se do „boot“ menu, skrze které bylo možno spustit‘
Write-Host ‚systém v nějakém zvláštním režimu, typicky třeba v nouzovém. To se hodilo zejména při řešení problémů, kdy například systém‘
Write-Host ‚po zavedení padal do BSOD nebo se nezavedly grafické ovladače nebo se naopak zavedla tuna malware. Když při startu mačkáte‘
Write-Host ‚F8 na Windows 10, překvapivě se nestane vůbec nic. Takže šup tam se starým módem. Ale dejte si pozor, pokud používáte‘
Write-Host ‚multiboot nebo nějakou nestandardní konfiguraci diskových oddílů. V takovém případě je potřeba nejprve pustit bcdedit a zjistit,‘
Write-Host ‚která sekce zavaděče se skutečně používá.‘
Write-Host “
Write-Host ‚HYPER-V‘
Write-Host ‚Microsoft Hyper-V je původně serverovou rolí, která se prvně objevila na klietnské stanici spolu s Windows 8 Pro a vyššími edicemi.‘
Write-Host ‚Politika dostupnosti dané funcke se nikterak nezměnila ani ve Windows 10. Verze určená pro klientské stanice se drobně svými funkcemi‘
Write-Host ‚i výkonem liší od své servé serverové sestry, ale základ mají stejný. Velmi stručně řečeno jde o virtualizační platformu, která umožńuje‘
Write-Host ‚vytvářet a používat virtuální PC a celé sítě, nebo i virtuální disky či DVD nebo FLOPY mechaniky, ve Windows 10 tvoří rovněž základ‘
Write-Host ‚bezpečnostní funkce Virtual Secure Mode, která je dostupná v edici EDU a Enterprise pro počítače s UFI. Tato funkce rozdělí Windows‘
Write-Host ‚na dvě části a každá je provozována v samostatném „virtuálním stroji“, kdy údaje související se zabezpečením (např ověření uživatele)‘
Write-Host ‚jsou odděleny od vlastního OS a ten se pouze dotazuje dané instance podobně, jako doménového řadiče, ovčem na rozdíl od komunikace s AD‘
Write-Host ‚není vytvářená žádná cache získaných údajů, systém pouze obdrží hodnotu True, nebo False na svůj požadavek pro ověření.‘
Write-Host “
Write-Host ‚ACTIVITY HISTORY‘
Write-Host ‚V čechách je tato funkce označována jako časová osa (TimeLine), nicméně historie aktivit je dílčí částí funce TimeLine.‘
Write-Host ‚Funkce TimeLine je novým zobrazením úloh. Je přístupná ve pomocí tlačítka Zobrazení úloh stejně jako přepínání ploch.‘
Write-Host ‚Možnost zobrazit všechny běžící aplikace, přesouvat je mezi plochami a přepínat mezi nimi je ve Windows 10 od začátku,‘
Write-Host ‚to, co je nové, je možnost otevírat úlohy řazené dle toho, kdy jste je prováděli a tuto historii i synchronizovat na‘
Write-Host ‚všechna zařízení s Windows 10 užívajících daný MS účet.‘
Write-Host “
Write-Host ‚ODESÍLÁNÍ HLÁŠENÍ O CHYBÁCH SYSTÉMU WINDOWS‘
Write-Host ‚Zakáže odesílání anonimizovaných hlášeních o chybách a kritických událostech na servery MS.‘
Write-Host “
Write-Host ‚SMB SERVER‘
Write-Host ‚Tato komponenta umožní povlolit sdlení lokálně instalovaných tiskáren, scannerů a dalšío podporovaného HW‘
Write-Host ‚s dalšími počítači v síti.‘
Write-Host “
Write-Host ‚CORE ISOLATION MEMORY INTEGRITY‘
Write-Host ‚Izolace jádra poskytuje přidanou ochranu proti malwaru a dalším útokům tím, že izoluje procesy v počítači‘
Write-Host ‚od operačního systému a zařízení. Integrita paměti je funkcí izolace jádra. Když přepnete nastavení Integrita‘
Write-Host ‚paměti na Zapnuto, můžete v případě útoku zabránit přístupu škodlivého kódu k procesům s vysokým zabezpečením.‘
Write-Host “
Write-Host ‚FORMÁT XPS‘
Write-Host ‚XPS je souborová přípona označující formát XML Paper Specification. Tento formát je založený na XML bázi a‘
Write-Host ‚vytvořila ho společnost Microsoft. Užívá se pro ukládání dokumentů, u kterých chceme zabránit jejich změnám a chceme,‘
Write-host ‚aby se zobrazovaly víceméně stejně na všech počítačích. Výhodou je také relativně malá velikost souboru. Tento formát‘
Write-host ‚má de facto stejné vlastnosti jako používanější PDF a používá se pro obdobné typy dokumentů. Interně je využíván řadou‘
Write-Host ‚prfesionálních tiskáren a kopírek, kdy tiskový ovladač přeloží dokument do tohoto formátu a tiskový procesor dle něj‘
Write-Host ‚vytvoří posloupnost řídících signálů provádějících vlastní tisk dokumentu.‘
Write-Host “
Write-Host ‚BOD OBNOVY‘
Write-Host ‚Body obnovení umožňují obnovit systémové soubory zpět do stavu, v němž se nacházely v některém dřívějším časovém období.‘
Write-Host ‚Body obnovení se automaticky vytvářejí před instalací nové aplikace, ovladače nebo před aktualizací Windows. Pokud dojde‘
Write-Host ‚k nějakému problému s operačním systémem, můžete se pomocí bodu obnovení vrátit do stavu, kdy systém fungoval správně.‘
Write-Host ‚Body obnovení se konfigurují pomocí nástroje Obnovení systému. Tento nástroj umožňuje změnit nastavení obnovení,‘
Write-host ‚provádět správu místa na disku a odstraňovat body obnovení.‘
Write-Host “
Write-Host ‚AUTOMATICKÉ ČIŠTĚNÍ DISKU‘
Write-Host ‚Jedním z nejběžnějších způsobů pro uvolnění místa na disku ve vašem počítači je odstranění dočasných souborů, vyprázdnění‘
Write-Host ‚koše a případně vymazání obsahu složky pro soubory stahované z Internetu. Problém je však v tom, že všechny tyto operace‘
Write-Host ‚musíte dělat ručně, popřípadě tak napůl ručně za pomocí různých systémových nástrojů či programů třetích stran.‘
Write-Host ‚Situaci však nedávno alespoň o něco vylepšila firma Microsoft uvedením nové automaticky pracující funkce Inteligentní úložiště.‘
Write-Host ‚Samotný název Inteligentní úložiště však není ničím novým – poprvé se totiž objevil ve Windows Phone 8.1 a předpokládalo se, že‘
Write-Host ‚bude součástí Windows 10 už daleko dříve. Nejnovější provedení funkce Inteligentní úložiště po svém zapnutí automaticky z‘
Write-Host ‚operačního systému a z počítače jako takového odstraňuje přebytečné soubory. Aktuální verze tohoto nástroje sice není až tak‘
Write-Host ‚mocná, jak bychom možná očekávali, nicméně jako první krok bezesporu obstojí.‘
Write-Host “
Write-Host ‚REŽIM HIBERNACE‘
Write-Host ‚Při přechodu počítače do režimu hibernace se obsah operační paměti RAM uloží na pevný disk a počítač se vypne. Na disku musí být‘
Write-Host ‚dostatek volného místa. Alespoň tolik jak velkou máte paměť RAM. Při zapnutí se načte obsah operační paměti a vy můžete pokračovat‘
Write-Host ‚v práci z místa, ve kterém jste skončili. V porovnání s režimem spánku je start o něco pomalejší, protože se data načítají z pevného‘
Write-Host ‚disku. Hibernace je vhodnější když víte, že počítač nebudete používat delší dobu. Tento režim byl navrhnut speciálně pro přenosné počítače.‘
Write-Host ‚Díky uložení dat na pevný disk je možné, na rozdíl od režimu spánku, odpojit počítač zcela od napájení (u notebooku i vyjmnout baterii)‘
Write-Host ‚a i přes ti budete moci po opětovném zapnutí plynule pokračovat v práci.‘
Write-Host “
}
break
}
}
default{
Write-Host ‚Chyba zadání, zkuste to znovu‘
break
}
}
$odpoved = Read-Host -Prompt ‚Chcete pokračovat v konfiguraci?(A/N)‘
if($odpoved -eq ‚A‘ -or $odpoved -eq ‚a‘)
{
$opakovat = $true
}
}While($opakovat)
Write-Output „`nKonfigurace dokončena, PC se bude restartovat“
Start-Sleep -s 5
Restart-Computer

Posted in: Windows 10, Windows 11, Windows server

Microsoft Admin center

Už několikrát jsem se zmínil o nástroji Admin center, který Microsoft vydal poměrně nedávno. Jde o naprosto skvělý nástroj, který slouží k centralizované správě Windows platformy ve firmě, u zákazníků či v rodině, stojící na PowerShellu. Celý systém je přístupný pomocí webového prohlížeče, konkrétně MS Edge či Google Chrome. Systém je vhodný pro doménová prostředí i Workgroup. V jednom Admincentru je možné spravovat PC, servery a clustery z více domén, nebo více workgroup, případně jejich kombinací. Mezi doménami nemusí být ani žádný vztah (ani jedna nemusí subdoménou druhé, nebo nemusí mít relationship). Z vlastní zkušenosti mohu říct, že není problém spravovat 150 zařízení. Rozhodně se ovšem nejedná o plnohodnotnou náhradu nástrojů rodiny Systém center.
Co potřebujeme? Systém, na kterém je instalovaný vlastní Admin Center, by měl být Windows server 1803 (resp. 2019), nebo může být Windows 10 verze 1803 a novější. Server, na který chceme instalovat Admin Center nesmí být v roli řadiče domény. Na všech spravovaných PC potřebujeme, aby jejich síťové připojení bylo jako privátní, doménové nebo pracovní, nikdy ne veřejné. Na cílových PC rovněž potřebujeme aktivní službu WinRM s patřičnými výjimka ve Firewallu, ideálně použijeme příkaz: 
winrm qc -q
Rovněž nesmíme zapomenout na znalost účtu s oprávněním lokálního admina a právem vzdáleného přístupu. V doménovém prostředí je to jednoduché, prostě použijeme doménový servisní účet, který má práva lokálního administrátora a právo vzdáleného přístupu, nepoužíváme privilegované účty pro přístup ke stanicím, tyto účty jsou potřeba pouze k serverům a clusterům.
Co Admin Center stojí? Mnozí by řekli, že nic, ale to není tak docela pravda. Vlastní stažení, instalace a provoz Admin centeru jsou opravdu bezplatné, ale jejich používání je podmíněno licencemi Windows správně aktivovaných na všech zařízeních, která jsou Admin centerem spravována, rovněž tak na zařízení, kde je Admin center instalován.
Nyní již prakticky, podívejme se, jak pracovat s nástrojem Admin Center. Starší verze nalezneme na portu 6515, od verze 1904 již vše pracuje na standardním portu 443 (může využívat nadále port 6515). Při prvním spuštění je potřeba zvolit certifikát, který obstará šifrování pro spojení pomocí https protokolu. Ve výchozím stavu se nabízí selfsingth certifikát s platností 60 dní (v poslední aktualizaci na několik let). Následně odklikáme dialog s novinkami, ten je nám k ničemu. Na základní ploše máme přidaný počítač, na kterém je instalovaný Admin center a máme u něj přidaný účet, který provedl instalaci jako účet pro správu. Nové počítače přidáme pomocí tlačítka přidat, kde dále vybereme jednu ze skupin Windows zařízení, které je možné přidat.

Dále pak máme několik základních možností, jak dané zařízení přidat. Buť můžeme zadat jméno PC (v doménovém prostředí doporučuji zadat celé doménové jméno), nebo můžeme použít seznam PC ve formátu txt nebo csv (co počítač, to řádek). Přidání PC pomocí IP adresy je možné, ale nedoporučuji jej, protože místo názvu PC bude v seznamu vidět IP adresa a rovněž není vhodný, pokud PC nemá statickou IP adresu.

Pokud nebudete importovat seznam zařízení a podaří se navázat spojení s PC, můžete zadat uživatelský účet, který bude pro správu PC výchozím. Seznam počítačů jde filtrovat a řadit dle jednotlivých sloupců zobrazení seznamu. Pokud pracujeme v doménovém prostředí je možné rovněž přidat PC pomocí procházení Active Directory.


Vyhledávací filtr jde ještě nastavit zda má mezi řetězci být logická spojka A, NEBO či žádná logická spojka. Možnosti logických spojek zobrazíme kliknutím na ikonu filtru. Další zúžení seznamu zařízení je možné rovněž pomocí zobrazení jen jedné z kategorií zařízení, která jsme do Admin centeru přidávali.


Další a poslední možností nějakého přehledu a třídění zařízení jsou značky, což jsou vlastně štítky s popisky dle našeho uvážení.
Kliknutím na název PC dojde k vyvolání připojení k danému zařízení, pokud je puštěno. Stejného efektu dosáhneme vybráním počítače pomocí zaškrtávacího pole a následného kliknutí na tlačítko spravovat. Pokud potřebujete připojení vyvolat pod jiným účtem nežli je uveden, použijte tlačítko „spravovat jako“. Jen malá poznámka, pokud chcete spravovat počítače v rodině, musíte se hlásit pomocí účtu, který má zadané heslo, počítače pracující na účtech nevyžadující heslo pod tímto účtem spravovat nelze. Naopak díky volbě spravovat jako můžete jednu instanci Admin centru využít pro spravování PC ve více doménách, nebo pokud jej máte instalovaný na notebooku, tak např. PC doma i v práci a u partnerské firmy.
Po připojení k PC se nám otevře základní obrazovka, kde je sumář nejdůležitějších informací o PC. Z této základní obrazovky můžeme rovněž PC vypnout či restartovat. 

Dle toho, zda se připojujeme k PC s Windows, Serveru, či clusteru se nám mění nástroje, které můžeme využívat k práci. Rovněž instalované komponenty systému Windows rozhodují o tom, zda některé nástroje uvidíme, či nikoliv (např.: Hyper-V, Kontejnery…). Další věc, která ovlivňuje výrazně naše možnosti jsou instalované doplňky a s tím souvisí i verze Admin Centeru. Největší vliv na to, co vše lze s pomocí Admin Centeru udělat mají doplňky u serverů, kde je díky ním možné spravovat např. Active Direcotry Domain Services, DNS či HDCP.
Dále se nyní pojďme zabývat osobními počítači s Windows, servery si nechme přeci jen na později. V nástrojích hned na druhém místě nalezme „Aplikace a funkce“, kde jak již název napovídá můžeme přidávat a odebírat funkce Windows a spravovat aplikace jak z MS Store, tak běžné x64 či x86 nainstalované aplikace. Následující obrázek ukazuje, jak odinstalovat univerzální aplikaci. Díky tomu, že aplikaci nejprve musíme vybrat je možné odinstalovat i více aplikací jedním příkazem. 

Hned následující nástroj je velmi praktický, ale ne až tak skvělý, jak by se mohlo zdát. Jde o konzolu pro správu certifikátů, kde je možné spravovat certifikáty nainstalované v PC na úrovni počítače na účtu, pod kterým k PC přistupujeme. Velkou výhodou je možnost zobrazení jen těch certifikátů, kterým platnost skončila, nebo jiné zobrazení, kde nalezneme ty, kterým platnost brzy vyprší. Vyjímaje zmíněné pohledy je možné si do jednoho okna nechat vypsat všechny certifikáty a vyhledávat v nich, nebo procházet standardní strukturu uložiště certifikátů. Certifikáty je možné prohlížet, exportovat, mazat i přidávat. 

Nástroje Firewall a Místní uživatelé a skupiny vezmeme jen opravdu rychle, protože k nim není moc co říct, v zásadě se chovají stejně jako snap-in v MMC konzoli. Jen u uživatelů není možné nastavovat adresář profilu a tímto nástrojem nelze přistoupit k Domain controleru.
Jako velmi zdařilý nástroj vnímám Naplánované úlohy, které jsou propracovány stran možností do posledního detailu a je možné zde opravdu kompletně spravovat jak běžně vytvořené úlohy, tak úlohy vytvořené v PowerShellu. Krom běžné správy je možné úlohu i spustit mimo její plán jedním kliknutím.
Pokud jste zvyklý ve správci úloh pro kontrolu a korekci chodu systému využívat záložku Podrobnosti, je nástroj Procesy ušit Vám přímo na míru. Na první pohled zobrazuje mnohem více informací o procesu, nežli výchozí zobrazení Správce úloh. I zde máme možnost si definovat, které sloupce budou zobrazeny a jako příjemný bonus máme k dispozici podrobné informace o procesu po kliknutí na něj. Z akcí, které máme k dispozici je možné proces ukončit a vytvořit z něj výpis, bohužel však není možné spustit novou úlohu.

Pokročilou ne však pravidelně využívanou možností je editace registru, kde ve srovnání s Windows 7 nechybí vůbec nic, ve srovnání s Windows 10 pak chybí textově zadávat adresy klíčů. Ani zde nechybí exporty či importy, mazání, oprava hodnot apod. 

O poznání méně možností nabízí nástroj Síť, kde je možné pro jednotlivé adaptéry měnit IP konfiguraci (jak IPv4, tak IPv6), ale více nelze. Graficky změněný, ale jinak zcela plnohodnotný správce služeb se skrývá v nástroji Služby. Jednotlivé služby systému lze spouštět, vypínat či měnit jejich konfiguraci a to v plném rozsahu.
Plnohodnotný Prohlížeč událostí se pak nachází v nástroji události, kde je možné si jednotlivé události číst, exportovat a vyhledávat. Osobně dávám přednost exportu a následnému čtení v běžném Prohlížeči, ale je to jen otázkou preferencí a zvyků, osobně mám pocit, že v běžném prohlížeči událostí rychleji získám přehled o tom, co se dělo na PC v poslední době, celkově, nežli v této online verzi. Nicméně i přes mé drobné výhrady je prohlížení události nikterak neomezeno. 

Obdobně jako v mnoha předešlých nástrojích i v případě Uložiště a Zařízení je zde úplná shoda s MMC konzolí, konkrétně se Správou disků a Správce zařízení. V nástroji Uložiště se ještě navíc nachází správa sdílených složek, kterou bychom normálně hledali ve Správě počítače.
V nástroji Nastavení pak nalezneme proměnné prostředí, nastavení vzdálené plochy a spíše pro informaci napájecí režimy. 

 Zcela záměrně jsem přeskočil 2 nástroje, jedním je Vzdálená plocha, která opravdu jen spustí RDP relaci na daný počítač. 

Druhým záměrně přeskočeným nástrojem je pak PowerShell, který spustí vzdálenou relaci (automaticky provede příkaz enter-pssession doplněný o parametry), jen je nutné do něj znovu zadat heslo.
Nástroj PowerShell obsahuje plný PowerShell v závislosti na instalované verzi a moulech. Zároveň ovšem nepodporuje výstupy do okna, tedy např. get-hotfix | out-gridview skončí chybou. Pokud ovšem daný příkaz zavoláme s jiným výstupe (jen do daného okna, nebo do souboru), tak je vše v pořádku.

Tímto nástrojem ovšem voláme PowerShell jen na daném konkrétním PC či serveru. Další místo, kde nalezneme PowerShell, nalevo od zvonečku v pravé horní části. Tam je možné si zobrazit skripty, které pro svůj vlastní chod využívá Admin Center.
Jak jste jistě postřehli, na rozdíl od prvních verzí, již není možné spravovat Windows Update prostřednictvím Admin Center. Pro práci s Windows Update je nutné využívat PowerShell, kdy je možné příkazem get-hotfix vypsat informace o instalovaných aktualizacích, zjistit, zda je v zařízení určitá konkrétní aktualizace apod. Bohužel PowerShell sám o neobsahuje commandlety pro práci s Windows Update, takže je potřeba z Technet galerie doinstalovat modul PSWindowsUpdate, který není oficiálním Microsoftem vydaným modulem.
Pojďme se nyní podívat na nastavení vlastního Admin Centeru, nežli si ukážeme, jak je to se správou serverů, která do značné míry shodná se správou klientských stanic. V možnosti přizpůsobení volíme mezi světlým a tmavým vzhledem aplikace a v možnosti jazyk a oblast můžeme změnit jazykové preference, pokud mají být odlišné od OS, kde je aplikace instalována. Zajímavější je možnost upozornění, kde si nastavíme, jaká všechna upozornění se nám mají objevovat ve zvonečku a na vlastní stránce. 

Možnost Upřesnit pak umožňuje nastavení logování a načtení našich neoficiálních doplňků, které si potřebujeme vyzkoušet před zadáním ke schválení MS, nebo je chceme prostě užívat jen sami. Možnost Rozšíření je pak alfou a omegou pohodlí a možností správy serverů. Zde nalezneme možnosti jako je modul pro DNS, kontejnery, IIS apod. 

Poslední možností jsou nastavení související s integrací Azure služeb, které ostatně nalezneme na každém kroku.
Co jsem nezmínil a zmínil bych rád, tak je možnost správy virtualizace Hyper-V v plném rozsahu, která je k dispozici mezi nástroji, pokud je na cílovém zařízení aktivní Hyper-V. Nastavovat je možné virtuální síť, jednotlivé virtuální stoje a kontejnery, ale i technologii jako celek.
Nyní je již čas na to, abychom se podívali na možnosti správy Windows serveru. Pokud využíváme originální instalační obraz Windows Serveru, máme k dispozici rovněž nástroj Aktualizace, kde může spravovat instalaci aktualizací serveru službou Windows update. 

Dále pak máme k dispozici správu nástroje pro migraci uložiště a nechybí ani role a funkce serveru. Na rozdíl od správce serveru si zde musíme sami hlídat, abychom měli k dispozici konzole a PowerShell moduly pro správu a konfiguraci nainstalované funkce. 

S rolemi a funkce souvisí i dostupnost doplňků pro jednotlivé servery, pokud server např. nemá instalovanou roli DHCP, není v Admin Centru k dispozici ani nástroj pro jeho správu, což je rozdíl proti RSAT, kdy jsou instalovány všechny konzole jako jeden balík. Důvod je jednoduchý, doplněk pro svůj běh vyžaduje PowerShell modul dané funkcionality, kdy takový modul není detekován, není ani doplněk nabízen mezi nástroji.
Další výhodou výchozího instalačního image je možnost využívat soubory, kdy je možné manipulovat se soubory uloženými na jednotlivých volumes stejně, jako když bychom užívali Explorer.exe. 

Možností zálohování se nedejte zmást, bez ohledu na konfiguraci s SW vybavení serveru jde výhradně o službu Azure Backup. Pokud není instalován klient Azure Backup a nemáte danou službu ve svém předplatném, tento nástroj je zcela nepoužitelný.
V nástroji nastavení je možné vybrat aktivní plán napájení a spravovat lokální proměnné (umístění Temp adresářů apod.). Možnost měnit plán napájení se zablokuje, pokud je výchozí plán napájení nastaven pomocí politik.
Jak jsem již zmínil, správa serverů a clusterů hodně závisí především na doplňcích. Dobrou správou v tomto směru jsou doplňky od Dellu, kdy je integrován OpenManage, Fujitsu či Lenova. Bohužel do konce října 2019 společnost hp stále žádný doplněk v základním kanálu Microsoftu pro doplňky Admin Centru nezveřejnila.
A co říct závěrem? Jde o skvělý nápad a dobrou technologii, která se rychle rozvíjí. Asi nejsilnější zbraní je to, že se jedná o technologii dostupnou prostřednictvím online prostředí, která nabízí adminům velké možnosti odkudkoli a kdykoliv. Další silnou stránkou je to, že se jedná o technologii, která je v ceně operačního systému jako volitelně stažitelná a instalovatelná součást. Jako velký klad mohu hodnotit i doménovou nezávislost, kdy je možné spravovat počítače a servery z více domén spolu s nedoménovými pohromadě. Ač jde o opravdu silnou a skvělou technologii, nejde o plnou náhradu dalších starších nástrojů společnosti Microsoft, protože např. editace politik či práce se základním integrovaným zálohováním zde zatím není možná. Běžné konzole dokáží stále nabídnout mnohem komplexnější možnosti, ale pevně věřím tomu, že formou doplňků přibydou nástroje pro správu všech rolí a funkcí serverů.

Posted in: Windows server

Vzdálená plocha pro adminy

Dnes si řekneme něco málo o vzdálené správě a bezpečnosti pro koncové stanice. Jak jsem již zmiňoval ve školení Instalace a konfigurace Windows serveru, je potřeba mít správně vydefinované Password zóny a používat pro správu uživatelských stanic různé administrátorské účty s různými hesly, které jsou ovšem z pohledu sítě obyčejnými uživateli. Těmto servisním účtům je asi žádoucí povolit RDP přístup, protože ne vše jde pohodlně řešit nástroji jako je Admin center. Pokud máme k dispozici Windows server 2012 a novější, je vhodné tyto servisní účty přidat do skupiny „Protected users“, čímž dojde k vynucení použití Kerberos autentizace uživatele. Nástroje typu Admin center nebo systém center, případně Eset Remote Administrator by měly tvořit hlavní pracovní nástroj každého admina, resp. pracovníka technické podpory.

Nyní se malinko vraťme ke vzdálené ploše, neboli RDP. Jak jsem již zmínil na školení Instalace a konfigurace Windows serveru, RDP budí dojem většího zabezpečení, nežli které reálně poskytuje. Když se podíváte na lištu RDP po připojení k cílovému počítači, je vidět zámeček a v bublinové nápovědě se dozvíte, že spojení bylo ověřeno Kerberos protokolem. Nicméně to není tak zcela pravda. Kerberos protokol byl použit v rámci preautentizace při navázání spojení, zde to pravdou je, ale vaše uživatelské údaje byly odeslány na cílový počítač v plné formě (i heslo bylo v plné formě). S ohledem na to, že vlastní síťové spojení je zabezpečeno s užitím Kerberosu, tak zde problém není, ale problém nastává ve chvíli, kdy je napaden cílový počítač, nebo kdy se k němu dostane jeho lokální admin s potřebnými nástroji. Na cílovém počítači jsou po dobu trvání připojení uloženy login a NTHash (případně Kerberos klíče) v paměti procesu LSASS.exe, odkud je možné je získat. Paměť tohoto procesu může být na Windows 10 odstíněna pomocí virtualizace při nakonfigurování Virtual Secure Mode, případně je možné zvýšit její ochranu vynucením digitálního podpisu Microsoftu na všechen kód, který se snaží do paměti procesu LSASS.exe přistoupit (od Windows 8.1). Dobrým typem je, aby si pracovníci technické podpory využívající servisní účty a přístup pomocí RDP na koncové stanice nepouštěli RDP skrze zástupce ve startu, ale aby si vytvořili cmd soubor s následujícím obsahem:

mstsc /admin

Tento příkaz vynutí speciální autentizaci při připojení, kdy se na cílový PC neuloží hash hesla ani Kerberos klíče. Tato možnost je opět dostupná od Windows 8.1 v doménovém prostředí. Nevýhodou takto navázaného spojení je, že není možné přistupovat na síťové prostředky bez zadání uživatelských údajů, jejichž zadáním dojde ke ztrátě bezpečnosti pro kterou jsme se připojili zrovna takto. Na druhou stranu pokud je vynuceno ověření pomocí Kerberosu, tak se jedná o nejvíce bezpečný mód, který dokáže vzdálená plocha nabídnout.

Posted in: Windows 10, Windows 11, Windows server

Velký dárek pro malé i velké Adminy

Z dílen Microsoftu vyšla již před nějaký časem naprostá pecka, která navíc konečně dospěla. Aplikace Admin center z dílen Microsoftu je jednoduchým nástrojem pro centrální správu všeho, co žije na platformě Windows.
Aplikaci je možné nasadit i v nedoménovém prostředí a je dostatečně robustní, aby zvládla spravovat i poměrně velká prostředí (osobně ji užívám na správu 300 PC a 8 serverů ve 3 doménách zároveň). Rozhodně se nejedná o náhradu Systém Centeru, tomu se neblíží ani zdaleka, ale někdy může být její jednoduchost naopak i výhodou.

Aplikce umožňuje pomocí online přístupu spravovat počítače, servery, clustery a vše integrovat s Azure službami. Admin center je možné instalovat na Windows server 2019, Windows server 1803 a novější a Windows 10 verze 1803 a novější. Přístup do aplikace je možný skrze Microsoft Edge a Google Chrome, vlastní aplikace nemá žádné nastavení nebo vlastní grafiku, vše se řeší pomocí webového prohlížeče, tudíž je vhodná pro instalaci na server Core.
Na cílových počítačích musí být aktivní služba WinRM a příslušné výjimky ve Firewall, což se dá obojí zajistit příkazem: winrm qc -q
Vyjímaje provádění konkrétních úkonů správy (např. správy pravidel Firewall, instalace Update…) je k dispozici i přístup na Adminshare, kde je možné pracovat se soubory a PowerShell remoting (vzdálené připojení PowerShellem) je k dispozici i možnost vyvolání RDP připojení.
Mezi počítači je možné vyhledávat a je možné si je pomocí štítů třídit do různých skupina a na jejich základě si je filtrovat.

Tentokrát mohu potvrdit, že nasazení je od verze 1904 jednoduché, rychlé, bezstarostné a vše funguje, jak má. Na cílové PC není potřeba instalovat žádného klienta. Za mě opravdu povedená aplikace a rozhodně stojí za těch 30 minut, které jsou potřeba k tomu, aby jste ji instalovali, zvykli si na ni a nabyli ji všemi Windows zařízeními.

Stažení a informace

Posted in: Windows server

Odstranění složky Windows.old

Tento příspěvek je pro všechny, kteří z jakéhokoliv důvodu provedli upgrade pomocí instalátoru Windows severu. Sice tato metoda je nedoporučovaná, ale je podporová, takže když jste se pro ni z jakéhokoliv důvodu rozhodli, tak je po jejím úspěšném dokončení potřeba odstranit složku Windows.old. Běžně smazat nelze (stejně jako na stolních Windows), protože jejím vlastníkem je Systém. Pokud máte instalové desktop experience, tak použije nástroj cleanmgr.exe, který je součástí Windows a znáte jej jako vyčištění disku.
Pokud máte Core instalaci, nebo nemáte desktop experience, tak nepotřebuje nástroje 3. strany, ale použijete následující příkazy:
takeown /F c:\Windows.old\* /R /A /D “Y“
cacls c:\Windows.old\*.* /T /grant administrators:F
rmdir /S /Q c:\Windows.old

Prvním příkazem nuceně převezmete vlastnictví složky Windows.old, parametr R zajistí změnu vlastníka i v podadresářích, parametr A zařídí vlastnictví pro skupinu Administrators a parametr D zajistí potlačení upozornění na nedostatečná práva a s hodnotou Y i přes toto upozornění práva přebere.

Příkaz cacls zobrazuje, nebo mění ACL oprávnění. Parametr T nastavuje změnu oprávnění v adresáři a podadresářích, tedy udělujeme plný přístup pro skupinu Administrators a opět možnost F toto nastavení vynucuje.

Posledním potřebným příkazem je známý rmdir, který se postará o vlastní proces odstranění složky Windows.old a jejích podadresářů (parametr S) na pozadí (parametr Q). Tento příkaz je již potřeba pouze na verzi Core, pokud máme server s GUI, můžeme použít pro smazání Explorer.exe, ale i na Core verzi můžeme mazat graficky, pokud použijeme Admin Center, nebo jiný nástroj pro centralizovanou správu.

Posted in: Windows server

WSUS na Windows server 2016

Návodů na instalaci WSUS je na internetu mraky, takže nebudu nosit dříví do lesa. O čem chci dnes psát, tak je jedna chyba, která se skrývá v roli Windows Update Services na Windows serveru 2016 a jak ji řešit.
Pokud instalujete WSUS na Windows server 2016, tak Vás čeká jedno nemilé překvapení, služba se nedokáže synchronizovat s update servery Microsoftu. Na vině je to, že Microsoft vypnul trvale jeden ze svých Windows update serverů, bohužel ten, na který se ve výchozím stavu odkazují instalace WSUS na Windows serveru 2016. Pokud chcete vědět, jak z problému ven, čtěte dále. Nyní si projděme kroky, které je potřeba udělat po instalaci Windows Server Update Services, aby vše opravdu fungovalo.

  1. Zkontrolovat a instalovat všechny aktualizace z Windows Update
  2. Spustit v powerShellu skript:
    $server = Get-WsusServer
    $config = $server.GetConfiguration()
    # Check current settings before you change them 
    $config.MUUrl
    $config.RedirectorChangeNumber
    # Update the settings if MUUrl is https://fe2.update.microsoft.com/v6
    $config.MUUrl = "https://sws.update.microsoft.com"
    $config.RedirectorChangeNumber = 4002
    $config.Save()
    iisreset
    Restart-Service *Wsus* -v
  3. Restartovat server příkazem: shutdown /g /t 0
  4. Vyvolat manuálně synchronizaci
  5. Pokud se nepodařilo, zkontrolujte nastavení služby
  6. Zkuste synchronizaci znovu
  7. Zkontrolujte, zda máte v důvěrychodných webech https://*update.microsoft.com
  8. Zkuste synchronizaci znovu
  9. Pokud stále nejde spuťte znovu skript a místo sws.update.microsoft.com použijte https://sws1.update.microsoft.com a změňte $config.RedirectorChangeNumber = 4002 na $config.RedirectorChangeNumber = 3011
  10. Nyní by jste již měli vidět aktualizace, pokud nevidíte PC zkontrolujte politiky a na daných PC si spuťte gpresult /h report.html, následně budete mít v Home adresáři podrobnosti o aplikovaných a neaplikovaných politikách

Poznámka bokem, nalezení PC jako nezařazených nebo zařazených pomocí politik může trvat i 2 dny, proto je zde potřeba trpělivost.

Posted in: Windows server

Informace o diskové aktivitě ve správci úloh

Určitě všichni známe situaci, kdy něco měníme nebo upgradujeme a server je nějak pomalý, přitom procesor není v zátěži a paměti je také dostatek. Většinou nám nezbývá nic jiného, nežli si nastavit monitorování výkonu (Perf. counters), nebo použít nástroj třetí strany. Na klientské stanici nám k základnímu přehledu stačí Správce úloh, byť hodnoty mají v sobě zanesenou určitou chybu a uvnitř virtuálního stroje jde o zcela nepoužitelné metriky, tak jako základní informace je to pořád dobré. A jak to samé udělat na serveru?
Stačí si spustit příkazový řádek v režimu správce.
Nyní zadáme příkaz: diskperf -Y
Po jeho potvrzení, když otevřeme správce úloh, máme na kartě výkon k dispozici informace o jednotlivých diskových jednotkách, což je opravdu dobrým prvním odhadem, ale s ohledem na to, že jde o logické nikoliv fyzické disky, nám to neřekne víc, nežli že rovna běží něco, co je náročné na diskové operace, více informací je již potřeba zjistit pomocí monitorování výkonu.

Posted in: Windows server

VMA key pro server 2012R2 až 2019

VMA klíče slouží k aktivaci virtuálních serverů běžících na platformě MS Hyper-V nad edicí Windows serveru Datacenter. Klíče lze použít pro aktivaci jednoho Virtuálného stroje nad edicí Standard. Jednotlivé verze, edice a VMA klíče uvádí následující tabulka. Klíče není možné použít pro aktivaci fyzického serveru, virtuálního serveru nad Windows 8, 8.1 a 10 ani na aktivaci na Standard edicí Windows serveru, s vyjímkou uvedenou v licenčním ujednání Windows server Standard edition. Aktivovat lze vždy jen shodnou verzi, jako je podkladový Datacenter a starší, tedy na Datacenter 2016 je možné aktivovat Windows server 2000 až 2016, 2019 se aktivovat nepodaří.

VerzeEdiceVMA klíč
2012R2EssentialsK2XGM-NMBT3-2R6Q8-WF2FK-P36R2
2012R2StandardDBGBW-NPF86-BJVTX-K3WKJ-MTB6V
2012R2DatacenterY4TGP-NPTV9-HTC2H-7MGQ3-DV4TW
2016EssentialsB4YNW-62DX9-W8V6M-82649-MHBKQ
2016StandardC3RCX-M6NRP-6CXC9-TW2F2-4RHYD
2016DatacenterTMJ3Y-NTRTM-FJYXT-T22BY-CWG3J
2019Essentials2CTP7-NHT64-BP62M-FV6GG-HFV28
2019StandardTNK62-RXVTB-4P47B-2D623-4GF74
2019DatacenterH3RNG-8C32Q-Q8FRX-6TDXV-WMBMW
Back to Top