GNU/Linux >> Znalost Linux >  >> Linux

Jak šifrovat soubory pomocí gocryptfs na Linuxu

Gocryptfs je program pro šifrování na úrovni souborů připojený k systému souborů v uživatelském prostoru (FUSE). FUSE-mounted znamená, že zašifrované soubory jsou uloženy v jediném stromu adresářů, který je připojen jako USB klíč pomocí rozhraní FUSE. To umožňuje každému uživateli provést připojení – nemusíte být root. Protože gocryptfs šifruje na úrovni souborů, synchronizační operace, které kopírují vaše soubory, mohou efektivně fungovat na každém souboru. To kontrastuje se šifrováním na úrovni disku, kde je celý disk zašifrován jako jeden velký binární blob.

Když používáte gocryptfs v normálním režimu, vaše soubory jsou uloženy na disku v zašifrovaném formátu. Když však připojíte zašifrované soubory, získáte nešifrovaný přístup ke svým souborům, stejně jako jakýkoli jiný soubor ve vašem počítači. To znamená, že všechny vaše běžné nástroje a programy mohou používat vaše nešifrované soubory. Změny, nové soubory a smazání se projeví v reálném čase v zašifrované verzi souborů uložených na vašem disku.

Instalovat gocryptfs

Instalace gocryptfs je na Fedoře snadná, protože je zabalena pro Fedoru 30 a Rawhide. Proto sudo dnf nainstalujte gocryptfs provede všechny požadované instalační práce. Pokud Fedoru nepoužíváte, podrobnosti o instalaci ze zdroje, na Debianu nebo přes Homebrew najdete v Rychlém startu.

Inicializujte svůj šifrovaný souborový systém

Linuxový terminál

  • 7 nejlepších emulátorů terminálu pro Linux
  • 10 nástrojů příkazového řádku pro analýzu dat v systému Linux
  • Stáhnout nyní:SSH cheat sheet
  • Cheat sheet pro pokročilé příkazy systému Linux
  • Výukové programy příkazového řádku systému Linux

Chcete-li začít, musíte se rozhodnout, kam chcete uložit šifrované soubory. Tento příklad zachová soubory v ~/.sekrit_files aby se nezobrazovaly při běžném ls .

Začněte inicializací souborového systému. To bude vyžadovat, abyste si zvolili heslo. Důrazně se doporučuje používat jedinečné heslo, které jste nikdy nikde jinde nepoužili, protože to je váš klíč k odemknutí vašich souborů. Autoři projektu doporučují heslo s 64 až 128 bity entropie. Za předpokladu, že používáte velká a malá písmena a čísla, znamená to, že vaše heslo by mělo mít 11 až 22 znaků. Pokud používáte správce hesel, mělo by to být snadné provést pomocí vygenerovaného hesla.

Když inicializujete souborový systém, uvidíte jedinečný klíč. Tento klíč si někde bezpečně uložte, protože vám umožní přístup k vašim souborům, pokud potřebujete soubory obnovit, ale zapomněli jste heslo. Klíč funguje bez vašeho hesla, takže jej uchovejte v soukromí!

Inicializační rutina vypadá takto:

$ mkdir ~/.sekrit_files
$ gocryptfs -init ~/.sekrit_files
Choose a password for protecting your files.
Password:
Repeat:

Your master key is:

    XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX-
    XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX

If the gocryptfs.conf file becomes corrupted or you ever forget your password,
there is only one hope for recovery: The master key. Print it to a piece of
paper and store it in a drawer. This message is only printed once.
The gocryptfs filesystem has been created successfully.
You can now mount it using: gocryptfs .sekrit_files MOUNTPOINT

Pokud se podíváte do ~/.sekrit_files adresář, uvidíte dva soubory:konfigurační soubor a jedinečný inicializační vektor na úrovni adresáře. Tyto dva soubory nebudete muset upravovat ručně. Ujistěte se, že tyto soubory nesmažete.

Použijte svůj šifrovaný souborový systém

Chcete-li používat váš šifrovaný souborový systém, musíte jej připojit. To vyžaduje prázdný adresář, kam můžete připojit souborový systém. Použijte například ~/my_files adresář. Jak můžete vidět z inicializace, montáž je snadná:

$ gocryptfs ~/.sekrit_files ~/my_files
Password:
Decrypting master key
Filesystem mounted and ready.

Pokud se podíváte na ~/my_files adresář, uvidíte, že je prázdný. Konfigurační a inicializační vektorové soubory nejsou data, takže se nezobrazují. Umístíme nějaká data do souborového systému a uvidíme, co se stane:

$ cp /usr/share/dict/words ~/my_files/
$ ls -la ~/my_files/ ~/.sekrit_files/
~/my_files/:
.rw-r--r-- 5.0M bexelbie 19 Jul 17:48 words

~/.sekrit_files/:
.r--------@  402 bexelbie 19 Jul 17:39 gocryptfs.conf
.r--------@   16 bexelbie 19 Jul 17:39 gocryptfs.diriv
.rw-r--r--@ 5.0M bexelbie 19 Jul 17:48 xAQrtlyYSFeCN5w7O3-9zg

Všimněte si, že v ~/.sekrit_files je nový soubor adresář. Toto je zašifrovaná kopie slovníku, do kterého jste zkopírovali (název souboru se bude lišit). Klidně použijte kočka a další nástroje k prozkoumání těchto souborů a experimentování s přidáváním, mazáním a úpravou souborů. Ujistěte se, že testujete s několika aplikacemi, jako je LibreOffice.

Pamatujte, že toto je připojení souborového systému, takže obsah ~/my_files nejsou uloženy na disk. Můžete to ověřit spuštěním mount | grep my_files a pozorování výstupu. Na váš disk se zapisují pouze zašifrované soubory. Rozhraní FUSE provádí šifrování a dešifrování souborů v reálném čase a předkládá je vašim aplikacím a prostředí jako souborový systém.

Odpojte souborový systém

Až budete se soubory hotovi, můžete je odpojit. To způsobí, že nešifrovaný souborový systém již nebude dostupný. Šifrované soubory v ~/.sekrit_files jsou nedotčeny. Odpojte souborový systém pomocí programu pro připojení FUSE pomocí fusermount -u ~/my_files .

Zálohujte svá data

Jednou ze skvělých výhod gocryptfs pomocí šifrování na úrovni souborů je to, že usnadňuje zálohování šifrovaných dat. Soubory lze bezpečně uložit na synchronizačním systému, jako je OwnCloud nebo Dropbox. Platí standardní prohlášení o neupravování stejného souboru ve stejnou dobu. Soubory však lze zálohovat, i když jsou připojeny. Data můžete také uložit jiným způsobem, jakým byste obvykle zálohovali soubory. Nepotřebujete nic speciálního.

Při zálohování nezapomeňte zahrnout gocryptfs.diriv soubor. Tento soubor není tajný a lze jej uložit se zálohou. Nicméně váš gocryptfs.conf je tajemství. Když ovládáte celý řetězec zálohování, například páskou, můžete jej zálohovat se zbytkem souborů. Když jsou však soubory zálohovány do cloudu nebo veřejně, možná budete chtít tento soubor vynechat. Teoreticky, pokud někdo získá tento soubor, jediná věc, která chrání vaše soubory, je síla vašeho hesla. Pokud jste zvolili silné heslo, může to stačit; musíte však svou situaci pečlivě zvážit. Další podrobnosti jsou v tomto vydání gocryptfs upstream.

Bonus:Reverzní režim

Vychytávkou gocryptfs je funkce obráceného režimu. V obráceném režimu nasměrujte gocryptfs na vaše nezašifrovaná data a vytvoří se přípojný bod se zašifrovaným pohledem na tato data. To je užitečné pro věci, jako je vytváření šifrovaných záloh. To je snadné:

$ gocryptfs -reverse -init my_files
Choose a password for protecting your files.
Password:
Repeat:

Your master key is:

    XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX-
    XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX

If the gocryptfs.conf file becomes corrupted or you ever forget your password,
there is only one hope for recovery: The master key. Print it to a piece of
paper and store it in a drawer. This message is only printed once.
The gocryptfs-reverse filesystem has been created successfully.
You can now mount it using: gocryptfs -reverse my_files MOUNTPOINT

$ gocryptfs -reverse my_files sekrit_files
Password:
Decrypting master key
Filesystem mounted and ready.

Nyní sekrit_files obsahuje zašifrovaný pohled na vaše nezašifrovaná data z my_files . To lze zálohovat, sdílet nebo zpracovávat podle potřeby. Adresář je pouze pro čtení, protože s těmito soubory nemůžete dělat nic užitečného kromě jejich zálohování.

Nový soubor .gocryptfs.reverse.conf , byl přidán do my_files poskytnout stabilní zašifrovaný pohled. Tento konfigurační soubor zajistí, že každé zpětné připojení bude používat stejný šifrovací klíč. Tímto způsobem můžete například zálohovat pouze změněné soubory.

Gocryptfs je flexibilní nástroj pro šifrování souborů, který vám umožňuje ukládat vaše data šifrovaným způsobem, aniž byste výrazně měnili váš pracovní postup nebo procesy. Návrh prošel bezpečnostním auditem a vývojáři mají zkušenosti s jinými systémy, jako je encfs . Doporučuji vám přidat gocryptfs do svého systému ještě dnes a začít chránit svá data.


Linux
  1. Jak rozbalit soubory v Linuxu (s příklady)

  2. Jak najít všechny soubory končící na .rb s Linuxem?

  3. Jak zkopíruji složku se soubory do jiné složky v Unixu/Linuxu?

  1. Jak zašifrovat jeden souborový systém Linux

  2. Jak najít soubory pomocí příkazu fd v Linuxu

  3. Jak šifrovat soubory cloudového úložiště pomocí Rclone

  1. Jak přejmenovat soubory v Linuxu

  2. Jak zašifrovat oddíl pomocí DM-Crypt LUKS na Linuxu

  3. Jak mohu přesouvat soubory pomocí xargs v Linuxu?