Posted in: Windows 10, Windows 11, Windows 8 a 8.1

Změna Edice pomocí instalačního disku a klíče

Microsoft nechtěl dát možnost přechodu mezi edicemi bez ztráty dat, přesněji nastavení OS (možné zálohovat do souboru migrace profilu uživatele), ale i instalovaných aplikací. Cesta nicméně existuje a to i pro ponížení edice (z Enterprise na Pro kvůli upgrade na Win 8.1 bez ztráty dat). Přechod na vyšší edici je možný pomocí klíče v ovládacích panelech -> systém a zabezpečení -> Přidat funkce do systému Windows 8. Níže uvedený postup platí pro Windows 8 a 8.1, ale také pro Windows 7 v případě ponížení edice.
Postup je následovný
1. otevřeme editor registrů (run regedit.exe) a dle cesty vyhledáme větev:
HKEY_LOCAL_MACHi NE->SOFTWARE, označíme ji kliknutím a přes nabídku soubor dáme exportovat a uložíme jako soubor s příponou reg
2. dle cesty vyhledáme klíč HKEY_LOCAL_MACHi NE->SOFTWARE->Microsoft-> Windows NT-> a klikneme na Current version
3. dvakrát klikneme na Product name a změnéme na požadovanou edici (např.: Windows 8 Professional)
4. dvakrát klikneme na EditionID a změníme na zvolenou edici (např.: Professional)
5. nyní přejdeme do adresáře
HKEY_LOCAL_MACHINE->SOFTWARE->WOW6432Node-> Microsoft ->Windows NT-> a klikneme na current version
6. uděláme to samé jako v krocích 3 a 4
7. zavřeme regedit (nerestartujeme počítač).
8. vložíme instalační disk s požadovanou edicí (musí mít shodný počet bitů (x86, nebo x64) a jazyk jako náš původní systém (jazyk ve kterém byl systém instalován))
9. instalátor uzavřeme
10. otevřeme tento počítač a zobrazíme obsah instalačního DVD (pravé talčítko myši -> otvřít nebo prozkoumat)
11. ve složce sources spustíme setup.exe (nesmíme užít základní z hlavního adresáře!!!)
12. zvolíme instalaci aktualiací (dle uvážení)
13. zadáme licenční číslo produkt key
14. potvrdíme licenční smlouvu
15. klikneme na položku upgrade!! (pokud se spleteme, tak jsou data relativně ztracena)
16. po vyšetření kompatibility dáme další
17. pokud něco brání dokončení, tak ukončíme instalátor a obnovíme větev v registrech ze záložního souboru
18. dokončíme instalaci
19. registrujeme náš systém
20. otevřeme počítač a vlastnosti disku C a zvolíme vyčištění disku -> vyčistit i systémové soubory a zaškrtneme všechna pole. potvrdíme odstranění souborů
21. užíváme si nový OS

AMINISTRÁTOR NENESE ODPOVĚDNOST ZA POŠKOZENÁ ČI ZTRACENÁ DATA A HW!!!

Posted in: Windows 10, Windows 11, Windows 8 a 8.1

XP Mode

Chtěl bych vám představit postup, jak s legálním systémem Windows 8 či 8.1 libovolné edice (doporučuji Professional či Enterprise) a Windows server 2012 R2 spustit XP mode a zachovat si tak oblíbené staré programy. Jediné co je ještě potřeba, aby náš procesor podporoval virtualizaci.
V edicích Professional a vyšších užijeme prostředí Hyper-V (návod jak na Hyper-V bude samostatný článek), pro základní edici OS je nutné si stáhnout virtualizační program (WM Ware, VirtualBox…).
Postup:
1. stáhneme si XP mode (Download Windows XP Mode – INSTALUJ.cz – programy ke stažení zdarma)
2. Otevřete balíček .exe pomocí archivačního programu (např. Winrar)
3. Z archivu extrahujte na lokální disk (C:) soubor xpm ze složky sources/
4. Soubor xpm opět otevřete v archivačním programu a extrahujte z něj soubor VirtualXPVHD
5. Přejmenujte soubor VirtualXPVHD na VirtualXP.vhd
6. spustíme virtualizační nástroj a vytvoříme nový virtuální počítač s užitím vyextrahovaného vhd

Posted in: Windows 10, Windows 11, Windows 8 a 8.1, Windows server

Výpis přihlašovacích údajů a pověření z trezoru Windows

Následující PowerShell příkaz vypíše obsah trezoru systému Windows:

[void][Windows.Security.Credentials.PasswordVault,Windows.Security.Credentials,ContentType=WindowsRuntime];$vault = New-Object Windows.Security.Credentials.PasswordVault;$vault.RetrieveAll() | % { $_.RetrievePassword();$_} | Select UserName, Resource, Password | Format-Table

V trezoru Windows jsou především síťová pověření, ale i přístupy k webovým službám pomocí IE, či jiného podporovaného programu.

Posted in: Windows 10, Windows 11, Windows 8 a 8.1, Windows server, Základy PowerShellu

Odesílání emailu pomocí PowerShellu

S moderní autentizací na straně emailových serverů dokážeme i nadále PowerShellem odesílat emaily. Následující kód využívá SMTP Office 365 pro Evropu k odeslání emailu. Kód je určen k uložení ve formátu ps1 a volání s patřičnými parametry. Odesílání emailů tak může zajíst např. zasílání výpisu z logů, nebo odbavovat požadavky v rámci naší serverové aplikace. Po úpravě SMTP serveru zvládne spolupracovat i s jinými emailovými službami.
Zdrojový kód skriptu:


param(
[Parameter(Mandatory=$true, ValueFromPipeline=$true)][string] $userName,
[Parameter(Mandatory=$true, ValueFromPipeline=$true)][string] $password,
[Parameter(Mandatory=$true, ValueFromPipeline=$true)][string[]] $komu,
[Parameter(Mandatory=$true, ValueFromPipeline=$true)][string] $predmet,
[Parameter(Mandatory=$true, ValueFromPipeline=$true)][string] $telo,
[Parameter(Mandatory=$true, ValueFromPipeline=$true)][switch] $teloHTML,
[Parameter(Mandatory=$true, ValueFromPipeline=$true)][switch] $priloha,
[Parameter(Mandatory=$false, ValueFromPipeline=$true)][string] $cestaKpriloze

)
[SecureString]$securepassword = $password | ConvertTo-SecureString -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential -ArgumentList $username, $securepassword
$server = „smtp.office365.com“
$port = 587
if($teloHTML -and $priloha)
{
Send-MailMessage -SmtpServer $server -Port $port -UseSsl -From $userName -To $komu -Subject $predmet -Body $telo -BodyAsHtml -Attachments $cestaKpriloze -Credential $credential
}
elseif($teloHTML)
{
Send-MailMessage -SmtpServer $server -Port $port -UseSsl -From $userName -To $komu -Subject $predmet -Body $telo -BodyAsHtml -Credential $credential
}
elseif($priloha)
{
Send-MailMessage -SmtpServer $server -Port $port -UseSsl -From $userName -To $komu -Subject $predmet -Body $telo -Attachments $cestaKpriloze -Credential $credential
}
else
{
Send-MailMessage -SmtpServer smtp.office365.com -Port 587 -UseSsl -From $userName -To $komu -Subject $predmet -Body $telo -Credential $credential
}

Posted in: Windows 10, Windows 11, Windows 8 a 8.1, Windows server, Základy PowerShellu

Generování hesel v PowerShellu

Každý správce, který se stará o nějaký identitní systém, potřebuje vymýšlet bezpečná jednorázová hesla. K tomu mu může sloužit například následující kousek PowerShell kódu:

$delka = 10
$specZnaku = 2
Add-Type -AssemblyName System.Web
[System.Web.Security.Membership]::GeneratePassword($delka,$specZnaku)

Verze, která nevyužívá volání .NET:

function Generate-Password
{
param
(
[int] $delka = 12,
[switch] $specZnak
)
$length = $delka
if($specZnak)
{
$charSet = ‚abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789{]+-[*=@:)}$^%;(_!&#?>/|.‘.ToCharArray()
}
else
{
$charSet = ‚abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789‘.ToCharArray()
}
$rng = New-Object System.Security.Cryptography.RNGCryptoServiceProvider
$bytes = New-Object byte
$rng.GetBytes($bytes)
$result = New-Object char
for ($i = 0 ; $i -lt $length ; $i++) {
$result[$i] = $charSet[$bytes[$i]%$charSet.Length]
}
return (-join $result)
}

Posted in: Windows 10, Windows 11, Windows 8 a 8.1, Windows server

Vypsání originálního produktového klíče Windows

V systému Windows není možné na pár kliknutí zobrazit původní produktorý klíč. V nastavení Windows je zobrazen v položce aktivace koncovka (posledních několik znaků) produktového klíče, pod kterým je daný systém aktivovaný.
Úplný produktový klíč jde zobrazit pomocí CIM rozhraní s využitím příkazové řádky.

1) Spustit příkazovou řádku jako správce
2) zadat příkaz: wmic path softwarelicensingservice get OA3xOriginalProductKey

Další variantou jsou aplikace pro zobrazování produktových klíčů, které jej dokáži vypsat z registru. Dané aplikace využívají VBS, který ve zjednodušené podobě může vypadat následovně:

Set WshShell = CreateObject(„WScript.Shell“)
MsgBox ConvertToKey(WshShell.RegRead(„HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DigitalProductId“))
Function ConvertToKey(Key)
Const KeyOffset = 52
i = 28
Chars = „BCDFGHJKMPQRTVWXY2346789“
Do
Cur = 0
x = 14
Do
Cur = Cur * 256
Cur = Key(x + KeyOffset) + Cur
Key(x + KeyOffset) = (Cur \ 24) And 255
Cur = Cur Mod 24
x = x -1
Loop While x >= 0
i = i -1
KeyOutput = Mid(Chars, Cur + 1, 1) & KeyOutput
If (((29 – i) Mod 6) = 0) And (i <> -1) Then
i = i -1
KeyOutput = „-“ & KeyOutput
End If
Loop While i >= 0
ConvertToKey = KeyOutput
End Function

Posted in: Windows 10, Windows 11, Windows 8 a 8.1, Windows server, Základy PowerShellu

Spuštění PowerShellu pod účtem operačního systému

V rámci balíčku nástrojů SysInternals od Microsoftu je k dispozici nástroj PSEXEC, který umožní spouštět aplikace pod účtem operačního systému. Nejspolehlivější a nejlepší využití je spustit si PowerShell, protože jeho pomocí mohu dělat cokoliv a spouštět cokoliv.
Příkaz bude mít tvar:
psexec -s -i powershell

Stažení a dokumentace PSXEC

Posted in: Windows 10, Windows 11, Windows 8 a 8.1, Windows server, Základy PowerShellu

Kontrola spuštění PoweShellu v řežimu správce

Při správě serverů není nic vzácného, že PowerShell je potřeba spustit v privilegovaném módu. Určitě všichni správci znají fintu pravého tlačítka na skript a volby Run with PowerShell, ale jak ve sktirptu zkontrolovat, zda byl spuštěn s oprávněním správce? Zkuste následující větvení, které místo pouhých výpisů rolí obohaťte o svůj kód.

if((whoami /priv /fo csv | convertfrom-csv | select "Privilege Name")."Privilege Name" -contains "SeImpersonatePrivilege")
{"admin"}
else
{"user"}

Tento skript využívá toho, že účet správce má dva módy, jeden privilegovaný (obsahuje SID skupiuny Administrators) a jeden běžný (neobsahuje SID skupiny Administrators). Když i správce spustí aplikaci pouhým poklikáním, neběží v privilegovaném módu (až na vyjímky jako je Plánovač, Prohlížeč událostí apod.). Také PowerShell jde pustit v obou režimech a pokud výslovně správce nespustí PowerShell v řežimu správce, má stejná oprávnění jako běžný uživatel. Zobrazit jednotlivá oprávnění daného režimu PowerShellu jde příkazem:

whoami /priv

Více se pak dočtete v dokumentaci Microsoftru v sekci věnované uživatelským účtům.

Back to Top