Automatisera filkryptering i Windows med detta Powershell-skript
Filkryptering och fildekryptering kan vara lite arbete. Tro inte dessa 5 myter om kryptering! Tro inte dessa 5 myter om kryptering! Kryptering låter komplex, men är mycket enklare än de flesta tror. Ändå kan du känna dig lite för mörk för att använda kryptering, så låt oss byta några krypteringsmyter! Läs mer . Med en PowerShell-förlängning kan du dock smala ner processen till ett kommando med en rad. För att göra detta måste vi installera Gpg4win och en PowerShell-modul. Med hjälp av skript kan vi automatisera filkryptering och dekrypteringsprocessen.
Låt oss ta en titt på hur man krypterar filer i Windows 10 automatiskt med ett skript.
Förutsättningarna: Installer, Moduler och Certs
Du vill ha GPG4Win-verktygen installerade och konfigurerad innan du börjar. Gå över till projektsidan och hämta den senaste versionen. (Om du behöver hjälp med att installera och konfigurera verktyget, använd den här PDF-guiden.) Du ska använda den symmetriska chifferfunktionen för GPG4Win i den här modulen.
Denna Powershell-modul hanterar filkryptering med hjälp av en lösenordsfras snarare än en keypair. Hur fungerar kryptering och är det verkligen säkert? Hur fungerar kryptering och är det verkligen säkert? Läs mer . Krypteringsstyrkan beror på styrkan i ditt lösenfras. Du bör vara säker på att välja något komplext. Generera det med hjälp av LastPass eller en annan lösenordsadministratör Mäter dina lösenord för att vara bra med Lastpass säkerhetsutmaning Mäta dina lösenord för att vara bra med Lastpass säkerhetsutmaning Vi spenderar så mycket tid online, med så många konton som att minnas lösenord kan vara väldigt tufft. Bekymrad om riskerna? Ta reda på hur du använder LastPass säkerhetsutmaning för att förbättra din säkerhetshygien. Läs mer . Slutligen slutför installationen och fortsätt till Powershell-modulen.
Powershell Moduler är förpackade samlingar av funktioner. De använder PSM1-filformatet. Du sparar dessa filer i mappens modulkatalog. Lägg sedan till modulen i din session / script med Import-Module.
Alla modulens cmdlets finns tillgängliga. När du avancerar på dina Powershell-färdigheter kan du till och med skapa egna moduler. För att installera filen Krypteringsmodul, ladda ner den från TechNet.
Därefter måste du kopiera den till en av modulkatalogerna. Om du vill installera det för dig själv, kopiera det till PowershellModules i din användarmapp. Kopiera detta till Explorer för en genväg:
% Användarprofil% \ Documents \ Windows \ Modules
Om du vill installera modulen för alla användare, använd Programfiler \ Windows PowerShell \ Moduler mapp. Klistra in det här i Utforskaren för en genväg:
% ProgramFiler% \ Windows PowerShell \ Moduler
Skapa en ny mapp med namnet GNUPG i katalogen Moduler och klistra in PSM1-filen i den.
Du måste importera modulen varje gång med: Import-modul GnuPG. Du kan dock behöva justera din exekveringspolicy till obegränsad. Gör detta genom att köra cmdlet Set-ExecutionPolicy RemoteSigned.
Sedan du hämtade den här modulen behöver du fortfarande markera den som en lokal fil. Högerklicka på filen och välj, Egenskaper. Därefter klickar du i dialogrutan avblockera. Bekräfta din åtgärd i UAC-dialogrutan, och du är inställd på att använda modulen.
Arbeta med Cmdlets
Hoppa över den första Cmdlet som används för att installera GPG4Win PGP Me: Ganska bra Sekretess förklarade PGP Me: Ganska bra Sekretess förklarade Pretty Good Privacy är en metod för att kryptera meddelanden mellan två personer. Så här fungerar det och om det står upp till granskning. Läs mer . Du borde redan ha genomfört det här steget. Om inte, kan du använda denna cmdlet för att installera och konfigurera programmet. Cmdleten hämtar den till en mapp du väljer och kör installationsprogrammet. De andra två är komplementära: Add-kryptering och Ta-kryptering. Båda dessa tar tre parametrar.
Den första är en katalog, passerad som -Sökväg. Modulen kommer att gå igenom alla filer i en katalog för att tillämpa eller ta bort filkryptering. Du vill inte peka på den i mappen Dokument. Du vill skapa ett par undermappar för att arbeta med det här skriptet. Om du tittar på källkoden för modulen använder den Get-ChildItem att få allt i katalogen. Dekrypteringsfunktionen begränsar sökningen till filer som slutar i .GPG.
Nästa parameter är lösenordsfrasen som används för filkryptering: -Lösenord. Se till att det här är komplicerat, eftersom det är skyddet för din fil. Funktionen går igenom varje fil med en ForEach-slinga. Filen och lösenfrasen kombineras som argument i Start Process för GPG4Win.
Den sista parametern, -GPGPath är inte obligatorisk. Den är inställd på standardinstallationsplatsen för GPG4Win. Om du har den på en annan enhet kan du uppdatera den med den här parametern. Det ändrar målet för Start Process.
Skriva skriptet
Nu är det dags att automatisera processen. Detta skript kommer att kryptera filerna i en katalog. Flytta de dekrypterade filerna till en ny katalog. Skriptet tar bort originalfilen.
Du börjar ditt skript med lite prep. Först importera modulen med Import-modul GnuPG. Du måste ange ett par variabler. Den första variabeln $ EncryptionTarget är din målmapp. (I exemplet används en miljövariabel för att peka på den aktuella användarens dokumentmapp.) Ange den andra variabeln som ditt lösenordsfras. Detta steg gör det lättare att ändra det senare.
Import-modul GnuPG $ EncryptionTarget = "$ ($ env: USERPROFILE) \ Documents \ Files-ToEncrypt" $ Passphrase = "MakeAVeryLongSecurePhrase" Add-Encryption $ KrypteringTargets -Password $ Lösenordsstart -Sekunder 60 $ EcnryptedFiles = Get-ChildItem $ EncryptionTarget | Var-Objekt $ _. Namn -likt "* .gpg" foreach ($ gpg i $ EcnryptedFiles) Move-Item -Path $ gpg.FullName -Destination "$ ($ env: USERPROFILE) \ Documents \ $ ($ gpg. Namn) " $ UnEncryptedFiles = Get-ChildItem $ EncryptionTarget | Var-Objekt $ _. Namn -Innehållet "* .gpg" foreach ($ nongpg i $ UnEcnryptedFiles) Remove-Item -Path $ nongpg.FullName-bekräfta $ false
Dessa variabler går till Add-kryptering som parametrar. Du använder en Start Sleep för att ge filen krypteringstid att slutföra. Exemplet använder tre minuter. Du kan ändra det baserat på storleken och antalet filer du arbetar med.
Du får .GPG-filerna genom att kombinera Get-ChildItem med Var-Object. Använder en För varje loop, var och en av dessa filer kopieras till en ny katalog. Vi upprepar dessa steg, men byter -tycka om för -notlike. en andra För varje öglan rensar upp originalfilerna.
Ställa in återkommande uppgift
Du har manuset, nu behöver du skapa en schemalagd uppgift Kör program automatiskt med hjälp av Windows Task Scheduler Kör program automatiskt med hjälp av Windows Task Scheduler Läs mer. Öppna Aktivitetsschemaläggare och klicka Skapa uppgift.
Namn det något som AutoEncrypt. Om du bara vill att uppgiften ska köras när du är inloggad, lämna bara standard. Om du anger att den ska köras oberoende, kan den bara nå lokala kataloger. Om din destination är på en fjärrmaskin måste du dock lagra ditt lösenord för att jobbet ska köras. Du kanske vill skapa ett sekundärt konto Hur man skapar begränsade gästkonton i Windows 10 det enkla sättet Hur man skapar begränsade gästkonton i Windows 10 det enkla sättet Windows 10 tog bort gästkontot, men du kan göra egna på några få minuter. Detta är ett utmärkt sätt att låta någon använda din dator utan att komma åt dina data. Läs mer för att skydda säkerheten för ditt huvudkonto.
Klicka på triggers fliken och ställa in villkoren. Klicka sedan på Ny att dra upp schemaläggningsfönstret. Du kan lämna inställningsinställningarna inställda till standardvärdet. Klicka på kryssrutan bredvid Upprepa uppgift varje och ställ den till 5 minuter. Du kan välja att köra detta mindre ofta om ditt behov inte är brådskande. I rullgardinsmenyn bredvid under hela tiden: Välj Obegränsat. Klick ok att gå tillbaka till fönstret Skapa uppgift.
På Åtgärder fliken, klicka Ny. I popup-fönstret lägger du sökvägen till Powershell i programfältet:
% SystemRoot% / system32 / Windows PowerShell / v1.0 / powershell.exe
I rutan för argument läggs ./ och sökvägen till ditt skript. Klick ok två gånger och ditt skript är inställt att köras som en schemalagd uppgift.
Vissa säkerhetshinder och andra idéer
Var medveten om att du har lösenordet för att dekryptera filerna på samma maskin där du lagrar dem. Dessa typer av filkrypteringar är mer för att kryptera en fil innan du skickar den, eller lagrar den på en annan maskin. (Om du vill ha ett låst filsystem, använd Full Disk Encryption TrueCrypt är död: 4 Disk Encryption Alternativ för Windows TrueCrypt är död: 4 Disk Encryption Alternativ för Windows TrueCrypt är inte längre, men lyckligtvis finns det andra användbara krypteringsprogram. kan inte vara exakta ersättningar, de borde passa dina behov. Läs mer.) Du kan ställa in en liknande uppgift att göra detsamma med dekryptering.
Har du ett projekt som behöver ett snabbt och smutsigt filkrypteringsskript? Låt oss veta i kommentarerna.
Utforska mer om: Kryptering, Online-säkerhet.