Kromě vytváření a úprav textových souborů můžeme soubory také šifrovat pomocí editoru Vim. Tento stručný průvodce vám ukáže, jak chránit textové soubory heslem pomocí editoru Vim v operačních systémech Linux a Unix.
Úvod
Vim editor je výkonná a na funkce bohatá aplikace sloužící k vytváření a úpravě textových souborů. Je to multiplatformní aplikace, takže ji můžete používat na všech platformách, včetně Androidu, iOS, Linuxu, Unixu, macOS a MS Windows.
Vim není jen pro vytváření nebo úpravu souborů, můžeme dokonce šifrovat textové soubory pomocí editoru Vim. Jinými slovy, Vim je schopen zapisovat soubory zašifrované a číst je zpět.
Zašifrovaný text nelze přečíst bez správného klíče. Kdykoli se pokusíte upravit zašifrovaný soubor pomocí Vim, budete požádáni o zadání správného klíče.
Pokud napíšete stejnou klávesu, jakou jste použili pro psaní, můžete si text přečíst znovu. Pokud použijete nesprávný klíč, uvidíte nějaké nevyžádané a chaotické znaky.
Dost řečí! Pokračujme a zašifrujeme soubory pomocí editoru Vim v Linuxu.
Nainstalujte si Vim Editor v Linuxu
Vim je k dispozici v oficiálních repozitářích téměř všech distribucí Linuxu a Unixu. Vim můžete nainstalovat pomocí výchozího správce balíčků vaší distribuce.
Chcete-li nainstalovat editor Vim v Alpine Linux, spusťte:
$ sudo apk update
$ sudo apk add vim
Nainstalujte editor Vim v Arch Linuxu:
$ sudo pacman -S vim
Nainstalujte editor Vim v Debianu, Ubuntu, Pop!_OS, Linux Mint:
$ sudo apt install vim
Nainstalujte editor Vim ve Fedoře, RHEL, AlmaLinux, Rocky Linux:
$ sudo dnf install vim
Nainstalujte editor Vim v openSUSE:
$ sudo zypper install vim
Nainstalujte editor Vim v Gentoo:
# emerge --ask app-editors/vim
Nainstalujte editor Vim na plochu FreeBSD:
# pkg install vim
Nainstalujte editor Vim na server FreeBSD:
# pkg install vim-console
Textové soubory chráněné heslem pomocí editoru Vim v Linuxu
Všechny níže uvedené kroky jsou testovány na systému Fedora 34. Postup je však stejný pro ostatní distribuce.
Typickým způsobem šifrování textového souboru pomocí Vim je použití :x
možnost (malá písmena x
) při vytváření nového souboru.
Krok 1: Otevřete textový soubor pomocí editoru Vim s -x
možnost:
$ vim -x ostechnix.txt
Krok 2: Dvakrát zadejte heslo a stiskněte ENTER
klíč.

Důležitá poznámka: Neztraťte heslo. Bez správné přístupové fráze nemůžete soubor přečíst. Také pokud při zadávání klíče uděláte chybu při psaní, možná nebudete mít zpětný přístup k textu!
Krok 3: Nyní stiskněte i
pro vstup do insert
režimu. Začněte psát nebo upravovat soubor jako obvykle.

Krok 4: Po dokončení úprav stiskněte ESC
pro ukončení insert
režimu a zadejte :wq
uložte soubor a zavřete jej.

Gratulujeme! Právě jsme zašifrovali textový soubor heslem pomocí Vim.
Zpřístupněte nebo čtěte soubor chráněný heslem pomocí editoru Vim
Kdykoli se pokusíte otevřít nebo upravit soubor chráněný heslem pomocí Vim, budete vyzváni k zadání správného přístupového hesla.
$ vim ostechnix.txt

Po zadání správné přístupové fráze bude textový soubor znovu čitelný.
Pokud nezadáte správné heslo, bude text jednoduše vypadat jako nepořádek.
VimCrypt~03!ÉØ®IÛ<92>af19F<95>uQ<94>:Dw^MlW^NïX<96>N<89><83>Û^CÍ)^TUZ½Èt^^^Sç]<85>6$<ø£>XJ¦3<9d>X*g¨k^N ÜÚ'è^C;ºí<8c>^Zº^VLp^C°K\«^HÛ/n&^O<84>þüâ^C<82>Hóg[:Ñ<92>Ê<84>^Y<86>5ñ-®ó
Poznámka že k souboru chráněnému heslem můžete přistupovat pouze pomocí editoru Vim , ale ne od jiných prohlížečů textu.
Pokud se pokusíte zobrazit soubor chráněný heslem pomocí jiných textových prohlížečů a editorů CLI nebo GUI, neuvidíte nic kromě některých nevyžádaných znaků, jak je znázorněno na obrázku níže.

Změna metody šifrování v editoru Vim
Počínaje verzí 7.4.399
a výše, Vim používá blowfish2
metoda šifrování ve výchozím nastavení pro šifrování souborů.
Chcete-li zobrazit aktuální metodu šifrování, jednoduše otevřete zašifrovaný soubor a v příkazovém režimu zadejte následující:
:setlocal cm?

Uvidíte aktuální metodu ověřování editoru Vim:
cryptmethod=blowfish2

Bluefish2 je silná a doporučená metoda šifrování v nejnovějších vydáních editoru Vim.
Pokud používáte nějaké staré verze, měli byste změnit metodu šifrování pomocí příkazu:
:setlocal cm=blowfish2
Zde cm
odkazuje na cryptmethod
.
Pokud chcete přejít na méně bezpečné metody šifrování, jako je blowfish
a zip
, spustit:
:setlocal cm=blowfish
:setlocal cm=zip
Po výběru metody šifrování nezadávejte :w
aplikujte změny.
Důrazně vám doporučuji vždy používat blowfish2
metoda, která je pro zabezpečení nejlepší.
Viz cryptmethod
sekce nápovědy pro další podrobnosti.
Chcete-li otevřít cryptmethod(cm)
sekce nápovědy spusťte v příkazovém režimu následující:
:help 'cm'
Ukázkový výstup:
'cryptmethod' 'cm' 'cryptmethod' 'cm' string (default "blowfish2") global or local to buffer global-local Method used for encryption when the buffer is written to a file: pkzip zip PkZip compatible method. A weak kind of encryption. Backwards compatible with Vim 7.2 and older. blowfish blowfish Blowfish method. Medium strong encryption but it has an implementation flaw. Requires Vim 7.3 or later, files can NOT be read by Vim 7.2 and older. This adds a "seed" to the file, every time you write the file the encrypted bytes will be different. blowfish2 blowfish2 Blowfish method. Medium strong encryption. Requires Vim 7.4.401 or later, files can NOT be read by Vim 7.3 and older. This adds a "seed" to the file, every time you write the file the encrypted bytes will be different. [...]
Změna hesla souboru pomocí editoru Vim
Pokud chcete změnit heslo zašifrovaného souboru, měli byste znát aktuální heslo.
Krok 1: Otevřete zašifrovaný soubor pomocí Vim:
$ vim ostechnix.txt
Chcete-li zobrazit jeho obsah, zadejte aktuální přístupovou frázi.
Krok 2: Zadejte :X
(Velká x ) a stiskněte klávesu ENTER. Dále dvakrát zadejte své nové heslo a stiskněte klávesu ENTER.

Krok 3: Zadejte :w
aplikujte změny na soubor.
Odstranění hesla ze souboru pomocí editoru Vim
Krok 1: Otevřete soubor v editoru Vim:
$ vim ostechnix.txt
Krok 2: Zadejte :X
(Velká x ) a stiskněte klávesu ENTER. Dále NEZADÁVEJTE žádné heslo . Stačí nechat pole pro heslo prázdné a dvakrát stiskněte klávesu ENTER.

Krok 3: Nakonec zadejte :w
a stiskněte ENTER pro uložení změn do souboru.
Nyní můžete soubor otevřít bez hesla.
Závěr
V této příručce jsme se naučili šifrovat textový soubor nebo chránit textový soubor heslem pomocí Vim. Kromě toho jsme také diskutovali o tom, jak zobrazit a změnit metodu ověřování v editoru Vim.
Nakonec jsme viděli, jak změnit heslo textových souborů a jak heslo úplně odstranit pomocí editoru Vim.
Učení Vim stojí za váš čas. Naučte se jedno téma denně. Za pár dní budete mistrem ve Vimu.
Užitečné tipy a triky Vim na tomto blogu:
- Jak komentovat více řádků najednou v editoru Vim
- Čtení a zápis vzdálených souborů pomocí Vim v systému Linux
- Upravujte vzdálené soubory pomocí Vim v systému Linux
- Jak upravit více souborů pomocí editoru Vim
- Jak používat funkci kontroly pravopisu v textovém editoru Vim
- Jak používat editor Vim k zadávání textu kdekoli v systému Linux
- PacVim – CLI hra pro výuku příkazů Vim
- Vimium vám pomůže procházet web pomocí klávesových zkratek Vim