Linuxでgocryptfsを使用してファイルを暗号化する方法

公開: 2022-01-29
ラップトップのターミナルウィンドウのグラフィック。
Fatmawati Achmad Zaenuri / Shutterstock

Linuxシステムのハードドライブ全体ではなく、重要なファイルを暗号化しますか? その場合は、 gocryptfsをお勧めします。 基本的に、保存するすべてのものを暗号化および復号化するディレクトリを取得します。

gocryptfsはデータ侵害からの保護を提供します

プライバシーは大きなニュースです。 ある組織または別の組織での違反の発表がなければ、1週間はほとんど過ぎません。 企業は最近の事件を報告するか、少し前に起こった違反を開示します。 どちらの場合も、データが公開されている人にとっては悪いニュースです。

何百万もの人々がDropbox、Googleドライブ、Microsoft OneDriveなどのサービスを使用しているため、一見終わりのないデータのストリームが毎日クラウドにプッシュされます。 データの一部(またはすべて)をクラウドに保存する場合、機密情報や個人文書を保護するために、侵害が発生した場合に何ができるでしょうか。

もちろん、データ侵害にはさまざまな形とサイズがあり、クラウドに限定されません。 メモリースティックの紛失やノートパソコンの盗難は、小規模なデータ侵害にすぎません。 しかし、規模は重要な要素ではありません。 データが機密または機密である場合、他の誰かがそれを持っていると悲惨な結果になる可能性があります。

1つの解決策は、ドキュメントを暗号化することです。 従来、これはハードドライブ全体を暗号化することによって行われます。 これは安全ですが、コンピュータの速度もわずかに低下します。 さらに、壊滅的な障害が発生した場合、バックアップからシステムを復元するプロセスが複雑になる可能性があります。

広告

gocryptfsシステムを使用すると、保護が必要なディレクトリのみを暗号化し、暗号化と復号化のシステム全体のオーバーヘッドを回避できます。 高速、軽量、そして使いやすいです。 暗号化されたディレクトリを他のコンピュータに移動するのも簡単です。 そのデータにアクセスするためのパスワードを持っている限り、他のコンピューターにファイルの痕跡を残すことはありません。

gocryptfsシステムは、軽量の暗号化されたファイルシステムとして構築されています。 また、Filesystem in Userspace(FUSE)パッケージを使用しているため、root以外の通常のアカウントでもマウントできます。 これは、 gocryptfsとアクセスする必要のあるカーネルファイルシステムルーチンの間のブリッジとして機能します。

gocryptfsのインストール

ubuntuにgocryptfsをインストールするには、次のコマンドを入力します。

 sudo apt-get install gocryptfs 

Fedoraタイプにインストールするには:

 sudo dnf install gocryptfs 

Manjaroでは、コマンドは次のとおりです。

 sudo pacman -Syu gocryptfs 

暗号化されたディレクトリの作成

gocryptfsの栄光の一部は、使い方がいかに簡単かということです。 原則は次のとおりです。

  • 保護するファイルとサブディレクトリを含むディレクトリを作成します。
  • gocryptrfsを使用して、そのディレクトリを初期化します。
  • マウントポイントとして空のディレクトリを作成し、暗号化されたディレクトリをマウントします。
  • マウントポイントでは、復号化されたファイルを表示して使用し、新しいファイルを作成できます。
  • 完了したら、暗号化されたフォルダをアンマウントします。

暗号化されたデータを保持するために、「vault」というディレクトリを作成します。 これを行うには、次のように入力します。

 mkdirボールト

新しいディレクトリを初期化する必要があります。 この手順では、ディレクトリ内にgocryptfsファイルシステムを作成します。

 gocryptfs -init vault 

プロンプトが表示されたらパスワードを入力します。 正しいことを確認するために、2回入力します。 強力な単語を選択してください。句読点、数字、記号を含む3つの無関係な単語が適切なテンプレートです。

マスターキーが生成されて表示されます。 これをコピーして、安全でプライベートな場所に保存します。 この例では、各記事が書き込まれた後にワイプされるリサーチマシン上にgocryptfsディレクトリを作成しています。

広告

例として必要なので、このディレクトリのマスターキーを確認できます。 あなたは間違いなくあなたのことをもっと秘密にしたいでしょう。 誰かがあなたのマスターキーを取得すると、その人はあなたの暗号化されたデータのすべてにアクセスできます。

新しいディレクトリに移動すると、2つのファイルが作成されていることがわかります。 次のように入力します。

 cdボールト
ls -ahl 

「gocryptfs.diriv」は短いバイナリファイルですが、「gocryptfs.conf」には安全に保管する必要のある設定と情報が含まれています。

暗号化されたデータをクラウドにアップロードしたり、小さくて移動可能なメディアにバックアップしたりする場合は、このファイルを含めないでください。 ただし、管理下にあるローカルメディアにバックアップする場合は、このファイルを含めることができます。

十分な時間と労力があれば、以下に示すように、「暗号化されたキー」と「ソルト」のエントリからパスワードを抽出できる可能性があります。

 cat gocryptfs.conf 

暗号化されたディレクトリのマウント

暗号化されたディレクトリは、単に空のディレクトリであるマウントポイントにマウントされます。 「オタク」と呼ばれるものを作成します。

 mkdirオタク
広告

これで、暗号化されたディレクトリをマウントポイントにマウントできます。 厳密に言えば、実際にマウントされるのは、暗号化されたディレクトリ内のgocryptfsファイルシステムです。 パスワードの入力を求められます。

 gocryptfsボールトオタク

暗号化されたディレクトリがマウントされると、他のディレクトリと同じようにマウントポイントディレクトリを使用できます。 このディレクトリで編集および作成するものはすべて、実際にはマウントされた暗号化されたディレクトリに書き込まれます。

次のような簡単なテキストファイルを作成できます。

 タッチシークレット-notes.txt

編集し、コンテンツを追加して、ファイルを保存できます。

 gedit secret-notes.txt

新しいファイルが作成されました:

 ls 

以下に示すように、暗号化されたディレクトリに切り替えると、暗号化された名前で新しいファイルが作成されたことがわかります。 名前からそれがどのファイルタイプであるかさえわかりません:

 cdボールト
ls -hl 

暗号化されたファイルの内容を表示しようとすると、それが本当にスクランブルされていることがわかります。

 少ないaJGzNoczahiSif_gwGl4eAUnwxo9CvOa6kcFf4xVgYU 

広告

以下に示す単純なテキストファイルは、解読するのが簡単ではありません。

暗号化されたディレクトリのアンマウント

暗号化されたディレクトリの使用が終了したら、 fusermountコマンドを使用してディレクトリをアンマウントできます。 FUSEパッケージの一部である次のコマンドは、暗号化されたディレクトリ内のgocryptfsファイルシステムをマウントポイントからアンマウントします。

 フューザーマウント-uオタク

次のように入力してマウントポイントディレクトリを確認すると、まだ空であることがわかります。

 ls 

あなたがしたことはすべて暗号化されたディレクトリに安全に保存されます。

シンプルで安全

単純なシステムには、より頻繁に使用されるという利点がありますが、より複雑なプロセスは途中で失敗する傾向があります。 gocryptfsの使用は簡単であるだけでなく、安全でもあります。 セキュリティのないシンプルさは価値がありません。

必要な数の暗号化されたディレクトリを作成することも、すべての機密データを保持するために1つだけ作成することもできます。 また、暗号化されたファイルシステムをマウントおよびマウント解除し、プロセスをさらに簡素化するために、いくつかのエイリアスを作成することもできます。

関連: Linuxでエイリアスとシェル関数を作成する方法