web-dev-qa-db-ja.com

家の暗号化で十分ですか?

現在、完全に暗号化されたWindowsシステムを使用しており、Ubuntuへの切り替えを検討しています。 ホームディレクトリの暗号化 (ecryptfsを使用)で十分ですか?

Windowsでは、ソフトウェアが重要な可能性のある詳細を漏らすため、これは問題になりますが、Linuxでは通常、ホームディレクトリの外の多くの場所への書き込み権限がありません。

もう1つの問題は、システムレベルの暗号化のための強力なパスワード(「オフライン」攻撃用)を現在持っているが、Windowsユーザーアカウントのログインパスワードは弱いことです。 。これは、Windowsが時間間隔ごとに試行できる失敗したログインの数を制限していることを考えると問題ではありません。ただし、ecryptfsの場合、ecryptfsパスワードはそこから導出されるため、私のログインパスワードも強力でなければなりません。ログインパスワードに関係なく、起動後に一度ホームディレクトリをマウントする方法はありますか(その後、Linux/Ubuntuは失敗したログイン/ su試行を制限しますか)?

6
Dexter

実行中のプログラムからのデータは最終的にスワップになる可能性があるため、スワップスペースも暗号化する必要があります。システムを休止状態にする必要がない限り、スワップスペースは、起動ごとに生成されるランダムキーで暗号化できます。これは、インストール時にフルディスク暗号化を選択した場合のデフォルトですが、後でホームディレクトリを暗号化するだけの場合はそうではありません。スワップスペースがまだ暗号化されていない場合は、 `ecryptfs-setup-swap を使用して設定します。スワップ領域と休止状態の両方が必要な場合は、Ubuntuコミュニティドキュメントの 暗号化スワップで休止状態を有効にする を参照してください。

多くのプログラムは一時ファイルを/tmpに配置します。これを処理する最良の方法は、/tmpをディスクバックアップファイルシステムに残すのではなく、メモリバックアップファイルシステムtmpfsに置くことです。また、わずかなパフォーマンス上の利点もあります。これを行う方法については this writeup を参照してください。

これを超えると、プライベートデータは、プライベートストレージ領域ではないさまざまな場所に置かれる可能性があります。これらの領域を暗号化する価値があるかどうかは、機密と見なすものに基づいて決定する必要があります。ここにいくつかの注目すべき場所があります:

  • POPまたはIMAPサーバーからメールを取得するのではなく、ローカルでメールを受信すると、/var/mailに到着します。従来のunixメソッド(sendmail)を使用してメールを送信すると、/var/spool/postfix(またはMTAが何であれ)経由で送信されます。この段落を理解していないと、当てはまりません。
  • 定期的なタスクを設定すると、それらは/var/spool/cronに保存されます。
  • 何かを印刷すると、/var/spool/cupsで転送されます。
  • /var/logのシステムログには、接続しようとしたサイトからのネットワークエラーなど、非公開にしたいデータが含まれている可能性があります。
  • /etcのシステム構成には、ISPやwifiのパスワードなどの機密情報が含まれている可能性があります。

Ecryptfsを使用してホームディレクトリを暗号化する場合、ローカルにログインしていない状態でSSHを使用してリモートでログインするとマウントされないことに注意してください。そうする場合、SSH公開鍵ファイル(~/.ssh/authorized_keys)は暗号化された形式とクリアテキスト形式の両方で存在する。

それはあなたが何を確保するつもりかによる。安全に保持したいものすべてが/ home /にある場合、あなたは黄金です。そうでなければ、いいえ。

例えば、 /var/spool/mail/には、ユーザーに送信されるシステムメールが含まれます。 /var/spool/cron/には、crontabが含まれています。そして、ローカルアクセス( "悪魔のメイド"シナリオ)を持つ悪意のある俳優があなたのセキュリティを乱用することを心配している場合、それは間違いなくnotで十分です。

Homedir暗号化は便利でシンプルであり、個人的なものを姉から保護することができます。しかし、これはディスク全体の暗号化ではなく、おそらくこの質問をする場合に必要なものです。

失敗したログインの試行は、PAMを介して行われた場合レート制限ですが、暗号化に対するブルートフォース攻撃はとにかくオフラインになるため、OSは考慮しません。

2
tylerl

それはあなたが秘密にしたいものに依存します。あなたが気にするすべてのものは/ homeに座っていますか?あなたは/ etcを気にしますか?どのプログラムがインストールされているかを人々が知っていてもかまいませんか?ほとんどのユーザーにとっては/ home /で十分でしょう。ただし、保護する情報はすべて異なります。

編集:/varは、スプール(メールと印刷)やログがそこに存在することを確認するのにも適しています。

1
Rod MacPherson

それはすべてあなたが心配していることに依存します:単にあなたのデバイスを失うか、それを攻撃する動機付けになっている誰かを単に失います。前者の場合、リークの可能性に関する上記のコメントはすべて有効ですが、ホームドライブの暗号化は簡単で、妥当な保護を提供します。攻撃が心配な場合は、ホームドライブの暗号化では不十分です。攻撃者がラップトップに物理的に短時間アクセスした場合(例:ホテルの部屋(イービルメイドアタックと呼ばれます)で、フルディスク暗号化(およびセキュアブートなどの追加)なしでは、USB経由で起動し、いくつかのバイナリを悪意のあるバイナリと交換し、次に家のロックを解除するまで待つことができます。データを取得する前に運転してください。

0
RichUK

Linuxシステムは、その点でWindowsとそれほど違いはありません。 (Linuxユーザーとしての)ホームディレクトリの他に、他のいくつかの場所(例: /tmpおよび/var/tmp仮想メモリ 、別名スワップスペースもあります。ここでは、貴重なデータの抜粋が、アプリケーションの「RAM」から直接、予測が困難な瞬間にコピーされます。さらに、OSの一部にはより高い特権があり、「秘密」の一部を書き込む場合がありますあなたに代わって他の場所に。一般的な例は/etc/shadowで、これにはユーザーのハッシュされたパスワードが含まれます。

すべてを暗号化するのが最も安全で簡単です。

あなたの弱いパスワードについては、よく、それは弱いです。それを救うことはありません。 Windowsシステムの場合でも、攻撃者がマシンの物理的な場所にいる可能性がある場合、ケースを開いてそれに接続することができます。 PCIカード のホットプラグはシステムの正常性のために推奨されていませんが、それは可能です(私はそれが完了したことを確認しました)。PCIカードはRAMを自由に読み書きできます。オペレーティングシステムがそれについてどう考えているかに関係なく。これにより、攻撃者はシステムのロックを解除し、すべてのデータを読み取ることができます。基本的に、想定される攻撃者がmotivatedおよびcompetentの場合、唯一の防御策は、常にマシンをオフにすることです(notスリープ状態にするか、休止状態)物理的に不在の場合。

0
Thomas Pornin