Automatiser filkryptering i Windows med dette Powershell-script

Filkryptering og fil dekryptering kan være lidt arbejde. Men ved hjælp af en PowerShell-udvidelse kan du slanke processen ned i en kommando med en linje.

Filkryptering og fil dekryptering kan være lidt arbejde.  Men ved hjælp af en PowerShell-udvidelse kan du slanke processen ned i en kommando med en linje.
Reklame

Filkryptering og fil dekryptering kan være lidt arbejde. Tro ikke disse 5 myter om kryptering! Tro ikke disse 5 myter om kryptering! Kryptering lyder kompleks, men er langt mere ligetil end de fleste tænker. Ikke desto mindre kan du måske føle sig lidt for mørk for at gøre brug af kryptering, så lad os buste nogle krypteringsmyter! Læs mere . Men ved hjælp af en PowerShell-udvidelse kan du slanke processen ned i en kommando med en linje. For at gøre dette skal vi installere Gpg4win og et PowerShell-modul. Ved hjælp af scripts kan vi automatisere filkryptering og dekrypteringsprocessen.

Lad os se på, hvordan du krypterer filer i Windows 10 automatisk med et script.

Forudsætningerne: Installer, Moduler og Certs

Du vil have GPG4Win-værktøjerne installeret og konfigureret, før du begynder. Gå over til projektsiden og download den nyeste version. (Hvis du har brug for vejledning i installation og konfiguration af værktøjet, skal du bruge denne PDF guide.) Du bruger den symmetriske chifferfunktion i GPG4Win i dette modul.

Dette Powershell-modul håndterer filkryptering ved hjælp af en adgangskode i stedet for et keypair. Hvordan virker kryptering, og er det virkelig sikkert? Hvordan virker kryptering, og er det virkelig sikkert? Læs mere . Styrken af ​​din kryptering afhænger af styrken af ​​din adgangskode. Du skal sørge for at vælge noget komplekst. Generer det ved hjælp af LastPass eller en anden adgangskodeadministrator Master dine adgangskoder til gavn med Lastpass 'Security Challenge Master dine adgangskoder til gode med Lastpass' sikkerhedsudfordring Vi bruger så meget tid online, med så mange konti, at huske adgangskoder kan være meget hårde. Bekymret for risiciene? Find ud af hvordan du bruger LastPass 'Security Challenge for at forbedre din sikkerhedshygiejne. Læs mere . Endelig fuldfør installationen og fortsæt til Powershell-modulet.

automatisere filkrypteringsvinduer powershell

Powershell Moduler er pakket samlinger af funktioner. De bruger PSM1 filformatet. Du gemmer disse filer i din profilens modulkatalog. Tilføj derefter modulet til din session / script ved hjælp af Import-Module .

Alle modulets cmdlets er tilgængelige. Når du avancerer på dine Powershell-færdigheder, kan du endda oprette dine egne moduler. For at installere filen Krypteringsmodul, download det fra TechNet.

Derefter skal du kopiere det til en af ​​modulkatalogerne. Hvis du kun vil installere det selv, skal du kopiere det til PowershellModules i din brugermappe. Kopier dette til Explorer for en genvej:

%UserProfile%\Documents\WindowsPowerShell\Modules 

Hvis du vil installere modulet til alle brugere, skal du bruge mappen Program Files \ Windows PowerShell \ Modules . Indsæt dette i Explorer for en genvej:

 %ProgramFiles%\Windows PowerShell\Modules 

Opret en ny mappe ved navn GNUPG i modulet bibliotek og indsæt PSM1 filen i den.

automatisere filkrypteringsvinduer powershell

Du skal importere modulet hver gang med: Import-modul GnuPG . Du skal dog muligvis justere din udførelsespolitik til ubegrænset. Gør dette ved at køre cmdlet Set-ExecutionPolicy RemoteSigned .

automatisere filkrypteringsvinduer powershell

Siden du downloadede dette modul, skal du stadig markere det som en lokal fil. Højreklik på filen og vælg Egenskaber . Klik derefter på Fjern blokering i dialogboksen. Bekræft din handling i UAC-dialogboksen, og du er indstillet til at bruge modulet.

Arbejder med Cmdlets

Spring over den første Cmdlet, som bruges til at installere GPG4Win PGP Me: Pretty Good Privacy Forklaret PGP Me: Pretty Good Privacy Forklaret Pretty Good Privacy er en metode til kryptering af meddelelser mellem to personer. Sådan fungerer det, og om det står op til kontrol. Læs mere . Du skulle allerede have gennemført dette trin. Hvis ikke, kan du bruge denne cmdlet til at installere og konfigurere programmet. Cmdleten overfører den til en mappe, du vælger og kører installationsprogrammet. De to andre er komplementære: Add-Encryption og Remove-Encryption . Begge disse tager tre parametre.

automatisere filkrypteringsvinduer powershell

Den første er en mappe, bestået som -FolderPath . Modulet træder gennem hver fil i en mappe for at anvende eller fjerne filkryptering. Du vil ikke gerne pege på det i mappen Dokumenter. Du vil gerne oprette et par undermapper til at arbejde med dette script. Hvis du kigger på kildekoden til modulet, bruger det Get-ChildItem til at hente alt i mappen. Dekrypteringsfunktionen begrænser søgningen til filer, der slutter i .GPG.

automatisere filkrypteringsvinduer powershell

Den næste parameter er den passord, der bruges til filkryptering: -Password . Sørg for, at dette er komplekst, da det er beskyttelsen for din fil. Funktionen trin gennem hver af filerne med en ForEach-loop. Filen og adgangskoden kombineres som argumenter i Start-Process for GPG4Win.

Den endelige parameter, -GPGPath er ikke obligatorisk. Den er indstillet til standardinstallationsstedet for GPG4Win. Hvis du har det på et andet drev, kan du opdatere det ved hjælp af denne parameter. Det ændrer målet for Start-processen .

Skrivning af scriptet

Nu er det tid til at automatisere processen. Dette script vil kryptere filerne i en mappe. Flyt de dekrypterede filer til en ny mappe. Scriptet vil slette den oprindelige fil.

Du starter dit script med noget prep. Først importerer du modulet ved hjælp af Import-Module GnuPG . Du skal oprette et par variabler. Den første variable $ EncryptionTarget er din målmappe. (I eksemplet bruges en miljøvariabel til at pege på den aktuelle brugers dokumentmappe.) Indstil den anden variabel som din adgangskode. Dette trin gør det nemmere at ændre det senere.

 Import-Module GnuPG $EncryptionTarget = "$($env:USERPROFILE)\Documents\Files-ToEncrypt" $Passphrase = "MakeAVeryLongSecurePhrase" Add-Encryption $EncryptionTarget -Password $Passphrase Start-Sleep -Seconds 60 $EcnryptedFiles = Get-ChildItem $EncryptionTarget | Where-Object $_.Name -like "*.gpg" foreach ($gpg in $EcnryptedFiles){ Move-Item -Path $gpg.FullName -Destination "$($env:USERPROFILE)\Documents\$($gpg.Name)" } $UnEncryptedFiles = Get-ChildItem $EncryptionTarget | Where-Object $_.Name -notlike "*.gpg" foreach ($nongpg in $UnEcnryptedFiles){ Remove-Item -Path $nongpg.FullName -Confirm $false } 

Disse variabler går til Add-Encryption som parametre. Du bruger en Start-søvn til at give filen krypteringstid for at fuldføre. Eksemplet bruger tre minutter. Du kan ændre det ud fra størrelsen og antallet af filer, du arbejder med.

Du får .GPG-filer ved at kombinere Get-ChildItem med Where-Object . Ved at bruge en ForEach- loop, kopieres hver enkelt af disse filer til en ny mappe. Vi gentager disse trin, men skifter -likt for-ikke-lignende. En anden ForEach- loop løser oprindelige filer op.

Indstilling af den tilbagevendende opgave

Du har scriptet, nu skal du oprette en planlagt opgave Kør programmer automatisk Brug Windows Task Scheduler Kør programmer automatisk ved hjælp af Windows Task Scheduler Læs mere. Åbn Opgaveplanlægning og klik på Opret opgave .

automatisere filkrypteringsvinduer powershell

Navngiv det noget som AutoEncrypt . Hvis du kun vil have opgaven at køre, når du er logget ind, skal du bare forlade standard. Hvis du indstiller det til at køre uanset, kan det kun få adgang til lokale mapper. Men hvis din destination er på en fjernmaskine, skal du gemme dit kodeord, så jobbet kan køre. Du kan muligvis oprette en sekundær konto Sådan oprettes begrænsede gæstekonti i Windows 10 Den nemme måde Sådan oprettes begrænsede gæstekonti i Windows 10 Den nemme måde Windows 10 fjernede gæstekontoen, men du kan lave dine egne på nogle få minutter. Dette er en fantastisk måde at lade nogen bruge din computer uden at få adgang til dine data. Læs mere for at beskytte sikkerheden til din hovedkonto.

automatisere filkrypteringsvinduer powershell

Klik på fanen Triggers og indstil betingelserne. Klik derefter på Ny for at trække op i planlægningsvinduet. Du kan lade triggerindstillingerne indstilles til standardindstillingen. Klik på afkrydsningsfeltet ud for Gentag opgave hver og indstil det til 5 minutter . Du kan vælge at køre dette mindre ofte, hvis dit behov ikke er presserende. I rullelisten ved siden af for varigheden af: vælg Uendeligt . Klik på OK for at gå tilbage til vinduet Opret opgave.

automatisere filkrypteringsvinduer powershell

Klik på Ny på fanen Handlinger . I popup-vinduet skal du sætte stien til Powershell i programfeltet:

 %SystemRoot%/system32/Windows PowerShell/v1.0/powershell.exe 

I argumentboksen sæt ./ og stien til dit script. Klik OK to gange, og dit script er indstillet til at køre som en Planlagt opgave.

Nogle sikkerhedsproblemer og andre ideer

Vær opmærksom på at du har adgangskoden til at dekryptere filerne på samme maskine, hvor du gemmer dem. Disse typer af filkrypteringer er mere for at kryptere en fil, før du sender den, eller gem den på en anden maskine. (Hvis du vil have et låst filsystem, skal du bruge Fuld Disk Encryption TrueCrypt er Dead: 4 Disk Encryption Alternativer til Windows TrueCrypt er Dead: 4 Disk Encryption Alternativer til Windows TrueCrypt er ikke mere, men heldigvis er der andre nyttige krypteringsprogrammer. Må ikke være nøjagtige udskiftninger, de skal passe til dine behov. Læs mere.) Du kan oprette en lignende opgave for at gøre det samme med dekryptering.

Har du et projekt, der har brug for et hurtigt og beskidt filkrypterings script? Lad os vide i kommentarerne.

In this article