Šifrovanie súborov a dešifrovanie súborov môže byť trochu náročná práca. Pomocou PowerShell však môžete tento proces zjednodušiť len na jednoriadkový príkaz. Aby sme to dosiahli, musíme nainštalovať Gpg4win a modul Powershell. Použite skripty na automatizáciu procesu šifrovania a dešifrovania. Tento článok vám ukáže, ako automaticky šifrovať súbory v systéme Windows 10 pomocou skriptu.
Pred spustením si používatelia musia nainštalovať a nakonfigurovať nástroje GPG4Win . V tomto module využijete funkciu symetrickej kryptografie GPG4Win.
Tento modul Powershell spracováva šifrovanie súborov pomocou hesla a nie pomocou páru kľúčov. Sila šifrovania závisí od sily hesla . Používatelia by si mali zvoliť zložité heslá, možno pomocou nástroja LastPass alebo iného správcu hesiel . Nakoniec dokončite inštaláciu a prejdite na modul Powershell.

Moduly Powershell sú zbalené sady funkcií, ktoré používajú formát súboru PSM1. Tieto súbory si môžete uložiť do priečinka Moduly vo svojom profile a potom pridať modul do svojej relácie/skriptu pomocou Import-Module .
K dispozícii sú všetky rutiny cmdlet modulov. Keď budete rozvíjať svoje zručnosti v Powershell, môžete si dokonca vytvoriť svoje vlastné moduly. Ak chcete nainštalovať modul na šifrovanie súborov, stiahnite si modul z TechNet . Potom ho musíte skopírovať do jedného z priečinkov Moduly. Ak si ho chcete nainštalovať sami, skopírujte ho do PowershellModules vo svojom používateľskom adresári. Skopírujte riadok nižšie do Prieskumníka a vytvorte odkaz:
%UserProfile%\Documents\WindowsPowerShell\Modules
Ak chcete nainštalovať moduly pre všetkých používateľov, použite priečinok Program Files\Windows PowerShell\Modules . Vložte nasledujúci riadok do Prieskumníka a vytvorte odkaz:
%ProgramFiles%\Windows PowerShell\Modules
Vytvorte nový priečinok s názvom GNUPG v priečinku Modules a vložte tam súbor PSM1.

Modul musíte importovať pri každom použití: Import-Module GnuPG . Spustenie však môžete upraviť na Neobmedzené spustením rutiny cmdlet Set-ExecutionPolicy RemoteSigned .

Keďže ste načítali tento modul, musíte ho označiť ako lokálny súbor. Kliknite pravým tlačidlom myši na súbor a vyberte Vlastnosti . Ďalej v dialógovom okne začiarknite políčko Odblokovať . Potvrďte akciu v dialógovom okne UAC a môžete modul používať.
Príkazy rutiny
Preskočte prvý príkaz cmdlet, ktorý sa používa na inštaláciu GPG4Win. Ak ste tento krok nedokončili, môžete tento cmdlet použiť na inštaláciu a konfiguráciu programu. Rutina cmdlet ju načíta do adresára podľa vášho výberu a spustí inštalačný program. Ďalšie dva príkazy cmdlet sú dodatočné: Add-Encryption a Remove-Encryption . Oba majú tri parametre.

Prvým parametrom je priečinok: -FolderPath . Tento modul prejde každý súbor v priečinku na zašifrovanie alebo dešifrovanie súboru. Ak ho nechcete nasmerovať na priečinok Dokumenty, mali by ste vytvoriť pár podpriečinkov na prácu s týmto skriptom. Ak sa pozriete na zdrojový kód modulu, používa Get-ChildItem na získanie všetkého v adresári. Funkcia dešifrovania obmedzuje vyhľadávanie na súbory končiace na .GPG.

Ďalším parametrom je heslo používané na šifrovanie súborov: -Password . Uistite sa, že toto heslo je zložité, pretože chráni vaše súbory. Táto funkcia prejde každý súbor pomocou slučky ForEach. Súbor a heslo skombinované ako argumenty v Start-Process pre GPG4Win.
Posledný parameter -GPGPath je voliteľný. Je nainštalovaný ako predvolené umiestnenie pre GPG4Win. Ak ho nainštalujete na iný disk, môžete ho aktualizovať pomocou tohto parametra a zmeniť tak cieľ pre Start-Process .
Napíšte skripty
Teraz je čas na automatizáciu procesu. Tento skript zašifruje súbory v priečinku, presunie dešifrované súbory do nového priečinka a odstráni pôvodný súbor.
Najprv naimportujte modul pomocou mport-Module GnuPG . Musíte nastaviť niekoľko premenných. Prvá premenná $EncryptionTarget je cieľový adresár. (Napríklad premenná prostredia sa používa na ukazovanie na adresár dokumentov aktuálneho používateľa). Nastavte druhú premennú ako prístupovú frázu, tento krok uľahčuje zmenu hesla.
Import-modul GnuPG
$EncryptionTarget = "$($env:USERPROFILE)\Documents\Files-ToEncrypt"
$Passphrase = "MakeAVeryLongSecurePhrase"
Add-Encryption $EncryptionTarget -Password $Passphrase
Štart-Spánok-Sekundy 60
$EcnryptedFiles = Get-ChildItem $EncryptionTarget | Where-Object $_.Name – ako „*.gpg“
foreach ($gpg v $EcnryptedFiles){
Move-Item -Path $gpg.FullName -Destination "$($env:USERPROFILE)\Documents\$($gpg.Name)"
}
$UnEncryptedFiles = Get-ChildItem $EncryptionTarget | Where-Object $_.Name -nie ako "*.gpg"
foreach ($nongpg v $UnEcnryptedFiles){
Remove-Item -Path $nongpg.FullName -Potvrdenie $false
}
Tieto premenné idú do Add-Encryption ako parametre. Používateľ používa Start-Sleep na nastavenie času na dokončenie šifrovania súboru, napríklad čas je tri minúty. Tento čas sa môže líšiť v závislosti od veľkosti a počtu súborov, s ktorými sa pracuje.
Súbor .GPG získate kombináciou Get-ChildItem a Where-Object . Použite cyklus ForEach , aby sa každý súbor skopíroval do nového adresára. Tieto kroky môžete zopakovať, ale skonvertujte -like na -notlike, takže druhá slučka ForEach vyčistí pôvodné súbory.
Nastavte úlohy cron
Teraz, keď máte skript, potrebujete vytvoriť naplánovanú úlohu. Otvorte Plánovač úloh a kliknite na Vytvoriť úlohu .

Pomenujte ho AutoEncrypt . Ak chcete úlohu spustiť iba pri prihlásení, ponechajte nastavenia ako predvolené. Ak nastavíte spustenie bez ohľadu na to, či je používateľ prihlásený alebo nie, vyberte možnosť „ Spustiť, či je používateľ prihlásený alebo nie “, bude mať prístup iba k priečinkom v počítači. Ak je však váš cieľ na vzdialenom počítači, musíte si heslo uložiť. Okrem toho si môžete nastaviť sekundárny účet na ochranu svojho hlavného účtu.

Kliknite na kartu Spúšťače a nastavte podmienky. Potom kliknutím na tlačidlo Nový otvorte okno plánovania. Nastavenia môžete ponechať ako predvolené, potom kliknite na políčko vedľa položky Opakovať úlohu každý a nastavte ju na 5 minút . Môžete si vybrať viac času, ak vaša potreba nie je naliehavá. V rozbaľovacej ponuke vedľa položky na dobu trvania: vyberte možnosť Na neurčito , kliknutím na tlačidlo OK sa vráťte do okna Vytvoriť úlohu.

Na karte Akcie kliknite na položku Nové , vo vyskakovacom okne nastavte cestu k Powershell v poli Program :
%SystemRoot%/system32/Windows PowerShell/v1.0/powershell.exe
Do poľa argumentov zadajte ./ a cestu k skriptu. Dvakrát kliknite na tlačidlo OK a skript sa nastaví na spustenie ako plánovaná úloha.
Pozrieť viac: