Startpagina » hoe » Hoe tekstbestanden met een wachtwoord te beveiligen met Vim op Linux (of macOS)

    Hoe tekstbestanden met een wachtwoord te beveiligen met Vim op Linux (of macOS)

    De vim-teksteditor, een standaardtool onder Linux en macOS, kan tekstbestanden snel coderen met een wachtwoord. Het is sneller en handiger dan het coderen van een tekstbestand met een afzonderlijk hulpprogramma. Hier leest u hoe u het instelt.

    Zorg dat het Vim van uw systeem ondersteuning biedt voor codering

    Sommige Linux-distributies, waaronder Ubuntu, bevatten standaard een minimale versie van vim, die alleen bedoeld is voor standaardtekstbewerking. Ubuntu noemt dit pakket bijvoorbeeld "vim-tiny". Als u codering in zo'n minimale versie van vim probeert te gebruiken, ziet u het bericht 'Sorry, dit commando is niet beschikbaar in deze versie'.

    Mogelijk moet je de volledige versie van vim installeren om deze functie op je Linux-distributie te krijgen. Op Ubuntu kun je bijvoorbeeld de volledige versie van vim krijgen door de volgende opdracht uit te voeren:

    sudo apt vim installeren

    De versie van vim standaard meegeleverd met macOS bevat encryptie-ondersteuning, dus je hoeft niets anders op een Mac te installeren. Start gewoon een terminalvenster vanuit Finder> Toepassingen> Hulpprogramma's> Terminal en de opdrachten werken hetzelfde op macOS als op Linux.

    Hoe een bestand versleutelen met een wachtwoord

    Het basisproces is relatief eenvoudig als u weet hoe u vi moet gebruiken. Als je dat niet doet, kun je worden opgehangen aan de modale interface van vi. Wanneer u een tekstbestand in vim opent, zijn er twee modi. Standaard bevindt u zich in een "opdrachtmodus", waar u de toetsen op uw toetsenbord kunt gebruiken om opdrachten uit te voeren. U kunt ook op "i" drukken om naar de "invoegmodus" te gaan, waar u normaal kunt typen en de cursor met de pijltjestoetsen kunt verplaatsen, net als bij andere teksteditors. Om de invoegmodus te verlaten, druk je op "Esc" en je keert terug naar de commandomodus.

    Start eerst vim. Met de volgende opdracht start u bijvoorbeeld vim en verwijst u naar een bestand met de naam 'example' in de huidige directory. Als dat bestand niet bestaat, maakt vim een ​​bestand met de naam "example" in de huidige map wanneer u het opslaat:

    vi voorbeeld

    Je kunt ook vi op een ander pad plaatsen met een commando zoals hieronder. U hoeft geen bestand in de huidige map aan te maken.

    vi / pad / naar / bestand

    Bewerk het bestand normaal. U kunt bijvoorbeeld op "i" drukken om de invoegmodus te openen en vervolgens de tekst normaal te typen. Druk tijdens het bewerken van een bestand op Esc om ervoor te zorgen dat u zich in de opdrachtmodus bevindt en niet in de modus invoegen. Type :X en druk op Enter.

    U wordt gevraagd om een ​​wachtwoord in te voeren, waarmee het tekstbestand wordt gecodeerd. Typ het wachtwoord dat je wilt gebruiken, druk op Enter en typ het nogmaals om te bevestigen. U moet dit wachtwoord invoeren wanneer u het bestand in de toekomst wilt openen.

    Vim waarschuwt u dat u standaard een zwakke coderingsmethode gebruikt. We laten u later zien hoe u een veiligere versleutelingsmethode kunt gebruiken.

    Er wordt een wachtwoord gekoppeld aan het huidige tekstbestand in Vim, maar u moet uw wijzigingen opslaan voordat het wachtwoord daadwerkelijk aan het bestand is toegewezen. Hiervoor drukt u op Esc om ervoor te zorgen dat u zich in de opdrachtmodus bevindt en typt u : wq en druk op Enter om het bestand naar schijf te schrijven en Vim te sluiten.

    De volgende keer dat u probeert het bestand in Vim te openen, bijvoorbeeld door "vi voorbeeld"-Vim vraagt ​​u om het wachtwoord dat aan het bestand is gekoppeld.

    Als u een verkeerd wachtwoord invoert, is de inhoud van het bestand onzin.

    Waarschuwing: Sla het bestand niet op als u het opent en wartaal ziet. Hiermee worden de beschadigde gegevens in het bestand opgeslagen en worden de gecodeerde gegevens overschreven. Ren gewoon q om Vim af te sluiten zonder het bestand op schijf op te slaan.

    Er is nog een andere sneltoets die u hier kunt gebruiken. In plaats van een bestand te maken of te openen met "vim / pad / naar / bestand", Kunt u de volgende opdracht uitvoeren om vim een ​​bestand te laten maken of openen en onmiddellijk aan te zetten om het bestand met een wachtwoord te versleutelen:

    vi -x / pad / naar / bestand

    Merk op dat je hier een kleine x moet gebruiken, terwijl je een hoofdletter X moet gebruiken wanneer je de bijbehorende coderingsopdracht vanuit Vim uitvoert.

    Hoe u krachtigere versleuteling in Vim kunt inschakelen

    Vim gebruikt standaard zeer slechte codering voor deze bestanden. De standaard "zip" - of "pkzip" -versleutelingsmethode is achterwaarts compatibel met versies 7.2 en lager van vim. Helaas kan het heel gemakkelijk en zeer gemakkelijk worden gekraakt, zelfs op hardware uit de jaren 90. Zoals de officiële documentatie het stelt: "Het algoritme dat wordt gebruikt voor 'cryptmethod'" zip "is breekbaar. Een toets van 4 tekens in ongeveer een uur, een toets van 6 tekens in één dag (op een Pentium 133 pc). "

    Gebruik geen pkzip-codering voor uw tekstdocumenten als u helemaal geen beveiliging wenst. Vim biedt echter betere versleutelingsmethoden. Versie 7.3 van Vim uitgebracht in 2010 heeft een "blowfish" -versleutelingsmethode toegevoegd, wat beter is. Versie 7.4.399 uitgebracht in 2014 bevatte een nieuwe Blowfish-versleutelingsmethode die beveiligingsproblemen in de oorspronkelijke "blowfish" -versleutelingsmethode oplost en deze "blowfish2" noemt..

    Het enige probleem is dat bestanden die u maakt met sterkere coderingsmethoden deze nieuwere versies van Vim vereisen. Dus als u de "blowfish2" -codering wilt gebruiken, kunt u dat bestand alleen openen met Vim-versies 7.4.399 en hoger. Zolang je daarmee akkoord gaat, moet je de sterkste versleutelingsmethode gebruiken die mogelijk is.

    Als u wilt controleren welke versleutelingsmethode een bestand gebruikt, opent u het bestand in vim, drukt u op de Esc-toets om ervoor te zorgen dat u zich in de opdrachtmodus bevindt, typt u de volgende opdracht en drukt u op Enter.

    : setlocal cm?

    De "cm" staat hier voor "cryptmethode".

    U ziet de versleutelingsmethode die wordt gebruikt voor het huidige bestand dat onderaan het vim-scherm wordt weergegeven.

    Kies een van de volgende opdrachten om een ​​versleutelingsmethode te kiezen. De "blowfish2" -codering is het beste voor de beveiliging.

    : setlocal cm = blowfish2: setlocal cm = blowfish: setlocal cm = zip

    Nadat u uw versleutelingsalgoritme hebt geselecteerd, gebruikt u de : w commando om het bestand naar schijf te schrijven of naar : wq commando om het bestand naar schijf te schrijven en te stoppen.

    De volgende keer dat u het bestand opnieuw opent in Vim, zal het niet klagen over een zwak coderingsalgoritme. U ziet ook het coderingsalgoritme dat u onder aan het vim-scherm hebt geselecteerd wanneer u het bestand opent.

    Hoe een wachtwoord te wijzigen of te verwijderen

    Om een ​​wachtwoord uit een bestand te verwijderen, opent u dat bestand in Vim en voert u het uit :X commando. U wordt gevraagd een nieuwe coderingssleutel op te geven. Voer het nieuwe wachtwoord in dat u hier wilt gebruiken. Als u het wachtwoord volledig wilt verwijderen, laat u het wachtwoordveld leeg en drukt u tweemaal op Enter.

    Sla het bestand op en stop daarna met : wq . Het bestand wordt gedecodeerd, dus u wordt niet gevraagd om een ​​wachtwoord in te voeren wanneer u het bestand in de toekomst opent.

    Vergeet niet het wachtwoord te onthouden dat u hebt ingesteld of u zult in de toekomst geen toegang meer hebben tot de inhoud van het bestand.