Failu šifrēšana un failu atšifrēšana var būt nedaudz sarežģīts darbs. Tomēr, izmantojot PowerShell , varat vienkāršot šo procesu līdz tikai vienas rindas komandai. Lai to izdarītu, mums jāinstalē Gpg4win un Powershell modulis. Izmantojiet skriptus, lai automatizētu šifrēšanas un atšifrēšanas procesu. Šajā rakstā tiks parādīts, kā ar skriptu automātiski šifrēt failus operētājsistēmā Windows 10.
Pirms darba sākšanas lietotājiem ir jāinstalē un jākonfigurē GPG4Win rīki . Šajā modulī jūs izmantosit GPG4Win simetrisko kriptogrāfijas funkcionalitāti.
Šis Powershell modulis apstrādā failu šifrēšanu, izmantojot paroli, nevis atslēgu pāri. Šifrēšanas stiprums ir atkarīgs no paroles stipruma . Lietotājiem ir jāizvēlas sarežģītas paroles, iespējams, izmantojot rīku LastPass vai citu paroļu pārvaldnieku . Visbeidzot, pabeidziet instalēšanu un pārejiet uz Powershell moduli.

Powershell moduļi ir iesaiņotas funkciju kopas, izmantojot PSM1 faila formātu. Varat saglabāt šos failus sava profila mapē Moduļi un pēc tam pievienot moduli sesijai/skriptam, izmantojot Import-Module .
Ir pieejamas visas moduļa cmdlet. Paplašinot savas Powershell prasmes, varat pat izveidot savus moduļus. Lai instalētu failu šifrēšanas moduli, lejupielādējiet moduli no TechNet . Pēc tam jums tas ir jākopē vienā no moduļu mapēm. Ja vēlaties to instalēt pats, kopējiet to uz PowershellModules savā lietotāja direktorijā. Kopējiet tālāk esošo rindiņu pārlūkprogrammā Explorer, lai izveidotu saīsni:
%UserProfile%\Documents\WindowsPowerShell\Modules
Ja vēlaties instalēt moduļus visiem lietotājiem, izmantojiet mapi Program Files\Windows PowerShell\Modules . Ielīmējiet šo rindiņu pārlūkprogrammā Explorer, lai izveidotu saīsni:
%ProgramFiles%\Windows PowerShell\Modules
Mapē Moduļi izveidojiet jaunu mapi ar nosaukumu GNUPG un ielīmējiet tur PSM1 failu.

Modulis ir jāimportē katru reizi, kad to izmantojat: Import-Module GnuPG . Tomēr jūs varat pielāgot izpildi uz Unrestricted, palaižot cmdlet Set-ExecutionPolicy RemoteSigned .

Tā kā esat ielādējis šo moduli, jums tas ir jāatzīmē kā lokāls fails. Ar peles labo pogu noklikšķiniet uz faila un atlasiet Rekvizīti . Pēc tam dialoglodziņā atzīmējiet Atbloķēt . Apstipriniet darbību UAC dialoglodziņā, un jūs varat izmantot moduli.
Cmdlet komandas
Izlaidiet pirmo Cmdlet komandu, ko izmanto, lai instalētu GPG4Win. Ja neesat pabeidzis šo darbību, varat izmantot šo cmdlet, lai instalētu un konfigurētu programmu. Cmdlet ielādē to jūsu izvēlētajā direktorijā un palaiž instalētāju. Pārējās divas cmdlet komandas ir papildu: Add-Encryption un Remove-Encryption . Abiem ir trīs parametri.

Pirmais parametrs ir mape: -FolderPath . Šis modulis izies cauri katram mapē esošajam failam, lai šifrētu vai atšifrētu failu. Ja nevēlaties to norādīt uz mapi Dokumenti, jums vajadzētu izveidot apakšmapju pāri, lai strādātu ar šo skriptu. Ja paskatās uz moduļa avota kodu, tas izmanto Get-ChildItem , lai iegūtu visu direktorijā. Atšifrēšanas funkcija ierobežo meklēšanu līdz failiem, kas beidzas ar .GPG.

Nākamais parametrs ir parole, ko izmanto failu šifrēšanai: -Password . Pārliecinieties, vai šī parole ir sarežģīta, jo tā aizsargā jūsu failus. Šī funkcija veiks katru failu ar ForEach cilpu. Fails un parole apvienoti kā argumenti GPG4Win sākuma procesā .
Pēdējais parametrs -GPGPath nav obligāts. Tā ir instalēta kā GPG4Win noklusējuma vieta. Ja instalējat to citā diskdzinī, varat to atjaunināt, izmantojot šo parametru, lai mainītu Start-Process mērķi .
Rakstīt skriptus
Tagad ir pienācis laiks automatizēt procesu. Šis skripts šifrēs failus mapē, pārvietos atšifrētos failus uz jaunu mapi un izdzēsīs sākotnējo failu.
Vispirms importējiet moduli, izmantojot mport-Module GnuPG . Jums ir jāiestata daži mainīgie. Pirmais mainīgais $EncryptionTarget ir mērķa direktorijs. (Piemēram, vides mainīgais tiek izmantots, lai norādītu uz pašreizējā lietotāja dokumentu direktoriju). Iestatiet otro mainīgo kā ieejas frāzi. Šī darbība atvieglo paroles maiņu.
Importēšanas modulis GnuPG
$EncryptionTarget = "$($env:USERPROFILE)\Documents\Files-ToEncrypt"
$Passphrase = "MakeAVeryLongSecurePhrase"
Pievienot-Šifrēšana $EncryptionTarget -Parole $Passphrase
Sākums - Miega režīms - Sekundes 60
$EcnryptedFiles = Get-ChildItem $EncryptionTarget | Kur-Object $_.Name, piemēram, "*.gpg"
foreach ($gpg failā $EcnryptedFiles){
Pārvietot vienumu - Ceļš $gpg.FullName - Galamērķis "$($env:USERPROFILE)\Documents\$($gpg.Name)"
}
$UnEncryptedFiles = Get-ChildItem $EncryptionTarget | Kur-Object $_.Name -notlike "*.gpg"
foreach ($nongpg failā $UnEcnryptedFiles){
Remove-Item -Path $nongpg.FullName -Apstiprināt $false
}
Šie mainīgie kā parametri tiek norādīti uz Add-Encryption . Lietotājs izmanto sākuma miega režīmu , lai iestatītu laiku faila šifrēšanas pabeigšanai, piemēram, laiks ir trīs minūtes. Šis laiks var atšķirties atkarībā no apstrādājamo failu lieluma un skaita.
Jūs iegūstat .GPG failu, apvienojot Get-ChildItem ar Kur-Object . Izmantojiet ForEach cilpu , lai katrs fails tiktu kopēts jaunā direktorijā. Varat atkārtot šīs darbības, bet konvertēt -like par -notlike, lai otrā ForEach cilpa notīrītu sākotnējos failus.
Iestatiet cron darbus
Tagad, kad jums ir skripts, jums ir jāizveido ieplānots uzdevums. Atveriet uzdevumu plānotāju un noklikšķiniet uz Izveidot uzdevumu .

Nosauciet to AutoEncrypt . Ja vēlaties izpildīt uzdevumu tikai tad, kad esat pieteicies, atstājiet iestatījumus kā noklusējuma iestatījumus. Ja iestatīts palaist neatkarīgi no tā, vai lietotājs ir pieteicies vai nē, atlasiet " Palaist neatkarīgi no tā, vai lietotājs ir pieteicies vai nav ", tas var piekļūt tikai datora mapēm. Tomēr, ja jūsu galamērķis atrodas attālā datorā, jums ir jāsaglabā parole. Turklāt varat iestatīt sekundāro kontu, lai aizsargātu savu galveno kontu.

Noklikšķiniet uz cilnes Trigeri un iestatiet nosacījumus. Pēc tam noklikšķiniet uz Jauns , lai atvērtu plānošanas logu. Varat atstāt iestatījumus kā noklusējuma iestatījumus, pēc tam noklikšķiniet uz lodziņa blakus Atkārtot uzdevumu un iestatiet to uz 5 minūtes . Varat izvēlēties vairāk laika, ja jūsu nepieciešamība nav steidzama. Nolaižamajā izvēlnē blakus par ilgumu: atlasiet Nenoteiktu laiku , noklikšķiniet uz Labi , lai atgrieztos logā Izveidot uzdevumu.

Cilnē Darbības noklikšķiniet uz Jauns , uznirstošajā logā lodziņā Programma iestatiet ceļu uz Powershell :
%SystemRoot%/system32/Windows PowerShell/v1.0/powershell.exe
Argumentu lodziņā ievietojiet ./ un ceļu uz skriptu. Divreiz noklikšķiniet uz Labi , un skripts tiks iestatīts kā ieplānots uzdevums.
Redzēt vairāk: