Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Network Bound Disk Encryptionとは

Kazuo Moriwaka
September 14, 2018

Network Bound Disk Encryptionとは

RHEL 7.4から提供が始まったNetwork Bound Disk Encryption(NBDE)の概要を紹介します

Kazuo Moriwaka

September 14, 2018
Tweet

More Decks by Kazuo Moriwaka

Other Decks in Technology

Transcript

  1. 2 Copyright Red Hat K.K. All rights reserved. このスライドの位置スライドの位置付けと目のスライドの位置位置付けと目的けと目的 •

    対象 • セキュリティ向上のためスト向上のためストレーのためストレージ暗号ストレージ暗号化と、自動暗号化と、自動的に暗と、自動的に暗号自動的に暗号に暗号暗号 化と、自動的に暗解除するするNBDEを活用したい人活用したい人したい人人 • 目的に暗号 • RHEL 7.4から提供が始まった提供が始まったが始まった始まったまったNetwork Bound Disk Encryption(NBDE)の概要紹介 • NBDEが始まった解決するストレージするストレージ暗号化と、自動暗号化と、自動的に暗の問題と、解決しないと、自動的に暗号解決するストレージしない人問 題と、解決しないを活用したい人把握するする
  2. 3 Copyright Red Hat K.K. All rights reserved. 概要 •

    通常のストレージ暗のストレージ暗号化と、自動暗号化と、自動的に暗 • Network Bound Disk Encryption(NBDE)とは • tangサーバとはとは? • clevisとは? • tangサーバとはを活用したい人どこに暗号置くかくか? • RHELでNBDEを活用したい人利用したい人する
  3. 4 Copyright Red Hat K.K. All rights reserved. 通常のストレージ暗のスライドの位置ストレージ暗号化暗号化 •

    LUKSストレージ暗号化と、自動暗号化と、自動的に暗 • ストレージ暗号化と、自動に暗号暗号化と、自動的に暗された鍵を保存を活用したい人保存 • ユーザーが始まったパスフレーズを入力を活用したい人入力 • パスフレーズを入力で鍵を保存を活用したい人復号 • 暗号化と、自動的に暗/復号化と、自動的に暗を活用したい人しなが始まったら提供が始まったストレージ暗号化と、自動を活用したい人読み書きみ書き書きき アプリケーション プログラム 暗号化/復号化 ファイルシステム I/O 鍵 ストレージ パス フレーズ #%&*?! linux kernel 人が入力が入力入力
  4. 5 Copyright Red Hat K.K. All rights reserved. ストレージ暗号化暗号化のスライドの位置目的 •

    ストレージ暗号化と、自動を活用したい人紛失しても情報が漏しても情報が漏れない情報が漏れないようが始まった漏れないようにすれない人ように暗号する • 想定している問題してい人る問題と、解決しない: 物理的に暗号盗難、自動的に暗号移動中の紛失、不適切の紛失しても情報が漏、自動的に暗号不適切 な廃棄 etc. ※目的に暗号ではない人(実現されないされない人)こと: • システムに侵入されてデに暗号侵入されてデータを盗まれることを活用したい人盗まれることの予防 • 特定している問題のアプリケーション以外からはデー以外からはデータをから提供が始まったはデータを盗まれることを活用したい人参照できでき ない人ように暗号制限するする
  5. 6 Copyright Red Hat K.K. All rights reserved. ストレージ暗号化暗号化のスライドの位置課題 •

    「ストレージ暗号化と、自動を活用したい人紛失しても情報が漏しても情報が漏れない情報が漏れないようが始まった漏れないようにすれない人」ようにすように暗号す るためストレージ暗号、自動的に暗号ストレージ暗号化と、自動の中の紛失、不適切に暗号鍵を保存そのも情報が漏れないのは置くかけない人 → 最初に人間がパスフに暗号人間がパスフレーズが始まったパスフレーズを入力を活用したい人入力する • 問題と、解決しないに暗号なるケース • システムに侵入されてデ台数が多い場合が始まった多い場合い人場合 • 負荷に応じてシステに暗号応じてシステムをじてシステムに侵入されてデを活用したい人増減させたい場合させたい人場合 • その他短い時間でストレい人時間がパスフレーズでストレージ暗号化と、自動を活用したい人使いはじめたい場い人はじめストレージ暗号たい人場合
  6. 7 Copyright Red Hat K.K. All rights reserved. Network Bound

    Disk Encryptionとは • ストレージ暗号化と、自動のパスフレーズを入力を活用したい人自動的に暗号に暗号生成するする • 「特定している問題のサーバとは(tang サーバとは)群」ようにすに暗号アクセスできる =パスフレーズを入力を活用したい人生成するできる =自動的に暗号に暗号暗号化と、自動的に暗を活用したい人解除するできる • 冗長化と、自動的に暗のためストレージ暗号複数が多い場合のtangサーバとはを活用したい人利用したい人して、自動的に暗号あら提供が始まったかじめストレージ暗号 決するストレージめストレージ暗号た台数が多い場合以上のためストレーに暗号アクセスできた場合に暗号鍵を保存を活用したい人生成する • それぞれのtangサーバとはは独自の鍵を保存を活用したい人持ち共有しないち共有しない共有しないしない人 ※ストレージ暗号化と、自動とtangサーバとは秘密鍵を保存の両方が漏洩すると暗が始まった漏れないようにす洩すると暗号化解すると暗号化と、自動的に暗解除するされる
  7. 8 Copyright Red Hat K.K. All rights reserved. tangサーバとはとは? •

    何か文字列を送るか文字列を送ると秘密鍵を活用したい人送ると秘密鍵で変ると秘密鍵を保存で変換してから返信すしてから提供が始まった返信するだけするだけ • クライアン以外からはデートでさら提供が始まったに暗号変換してから返信すしてパスフレーズを入力を活用したい人生成する 使い捨てランダムい捨てランダム文捨てランダム文字てランダム文字列ランダム文字列 変換された文字列された文字列文字列 クライアント株式会社 tangサーバ 通信内容を見てもを見ても見てもてランダム文字列も ストレージの鍵は鍵は わからない捨てランダム文 秘密鍵で変換変換された文字列 秘密鍵、使い捨てランダムい捨てランダム文捨てランダム文字てランダム文字列文字 列、tangサーバ応答から応答からから パスフレーズを見ても生成 ストレージを見ても 見てもてランダム文字列も、 クライアントの鍵は 秘密鍵だけで変換 パスフレーズは わからない捨てランダム文 tangサーバ応答からの鍵は秘密鍵は 漏洩しても更新できしてランダム文字列も更新できるで変換きる (定期的な更新を推奨な更新できるを見ても推奨)
  8. 9 Copyright Red Hat K.K. All rights reserved. clevisとは? •

    複数が多い場合のtangサーバとは、自動的に暗号TPMなどを活用したい人組み合わせて利用み書き合わせて利用したい人する 仕組み合わせて利用み書き • 例: • tangサーバとは2台以上のためストレーに暗号接続できると自動的できると自動的に暗号に暗号パスフレー ズを入力を活用したい人生成するできる • tangサーバとは2台以上のためストレーに暗号接続できると自動的できるかTPM2.0で保存され た鍵を保存が始まったあれば自動的に自動的に暗号に暗号パスフレーズを入力を活用したい人生成するできる
  9. 10 Copyright Red Hat K.K. All rights reserved. NBDEイメージ暗号化図 tang

    サーバ応答から tang サーバ応答から tang サーバ応答から クライアント クライアント クライアント クライアント 暗号化 ストレージ 暗号化 ストレージ 暗号化 ストレージ 暗号化 ストレージ たとえば自動的に2台以上のためストレーのtangサーバとはに暗号アクセスできると復号できる
  10. 11 Copyright Red Hat K.K. All rights reserved. tangサーバとははどこに置くか置くか? •

    tangサーバとはの秘密鍵を保存と、自動的に暗号clevisが始まった管理するメタを盗まれることデータを盗まれることの 両方が漏洩すると暗が始まった揃うとストレージうとストレージ暗号化と、自動の暗号化と、自動的に暗を活用したい人解除するできる • 仮想化と、自動的に暗を活用したい人利用したい人する場合に暗号tangサーバとはの鍵を保存と暗号化と、自動的に暗スト レージ暗号化と、自動が始まった同一のストレージにのストレージ暗号化と、自動に暗号配置くかされない人ように暗号する • そも情報が漏れないそも情報が漏れない暗号化と、自動的に暗した目的に暗号は「ストレージ暗号化と、自動を活用したい人紛失しても情報が漏しても情報が漏れない情 報が漏れないようが始まった漏れないようにすれない人ように暗号する」ようにすこと • 別のデータセンタのデータを盗まれることセン以外からはデータを盗まれることに暗号置くかい人てVPNで接続できると自動的する等
  11. 12 Copyright Red Hat K.K. All rights reserved. RHELでNBDEを利用するする •

    tangサーバとは側 # yum install tang # systemctl enable --now tangd.socket • 暗号化と、自動的に暗ストレージ暗号化と、自動利用したい人側 # yum install clevis-luks clevis-dracut clevis-systemd # clevis luks bind -d /dev/sdX tang \ '{“url”:”http://tang.example.com”}' → tangサーバとはのキーを活用したい人確認し、既存のパスし、自動的に暗号既存のパスフレーズを入力を活用したい人入力 # dracut -f ※ root fsを活用したい人暗号化と、自動的に暗する場合DHCPではなく固定している問題のネットワーク設定している問題が始まったdracutで必要。 ※ root fs以外からはデータをを活用したい人暗号化と、自動的に暗する場合 /etc/cryetc/etc/crycrypttab で _netdev netdev 指定している問題を活用したい人おこなう。
  12. 14 Copyright Red Hat K.K. All rights reserved. 関連資料 •

    RHEL 7ドキュメン以外からはデート「Security Guide」ようにす内「Network Bound Disk Encryption」ようにす • https://access.redhat.com/documentation/en-us/ red_hat_enterprise_linux/7/html/security_guide/sec- using_network-bound_disk_encryption • clevis • https://github.com/latchset/clevis • tang • https://github.com/latchset/tang • 理論的に暗号な背景であるであるMcCallum-Relyea exchangeの説明
  13. 15 Copyright Red Hat K.K. All rights reserved. 想定Q&A(1/2) •

    今はストレージをはストレージ暗号化と、自動を活用したい人暗号化と、自動的に暗してい人ない人けど後からから提供が始まったin-placeで暗号化と、自動的に暗 するように暗号変更できるできる? • できません • 既存パスフレーズを入力は使いはじめたい場えなくなるの? • clevisの既存のパスフレーズを入力の他に暗号自動暗号化と、自動的に暗解除するを活用したい人使いはじめたい場えるように暗号 します • 暗号化と、自動的に暗するとパフォーマン以外からはデースは落ちるち共有しないる? • はい人。暗号/復号のためストレージ暗号CPUが始まった消費されます。ストされます。ストレージ暗号化と、自動I/Oが始まった多い場合い人 場合は事前に影響を確認しに暗号影響を確認してくだを活用したい人確認し、既存のパスしてください人。
  14. 16 Copyright Red Hat K.K. All rights reserved. 想定Q&A(2/2) •

    tangの鍵を保存の更できる新ってどうするのってどうするの? • tangサーバとはで新ってどうするのしい人鍵を保存を活用したい人作成する • クライアン以外からはデートでclevis bind luksを活用したい人再度実行 • 古い鍵を使うクラい人鍵を保存を活用したい人使いはじめたい場うクライアン以外からはデートが始まったなくなったあとtangサーバとはから提供が始まった古い鍵を使うクラい人 鍵を保存を活用したい人削除する
  15. 17 Copyright Red Hat K.K. All rights reserved. (おまけ)tangサーバとはのスライドの位置仕組みみ •

    登録 クライアン以外からはデート側 クライアン以外からはデートの秘密A ラン以外からはデーダムに侵入されてデなパスフレーズを入力Kを活用したい人生成する Kを活用したい人使いはじめたい場い人ストレージ暗号化と、自動暗号化と、自動的に暗 a=gA, b, k=KbAを活用したい人保存 AとKは破棄 • 回復 使いはじめたい場い人捨てのてのXを活用したい人作り x = agX を活用したい人送ると秘密鍵で変信するだけ → • k÷(xB ÷bX) するとKが始まった回復  tangサーバとは側 サーバとはの秘密B ← b = gB を活用したい人送ると秘密鍵で変信するだけ     ← xBを活用したい人送ると秘密鍵で変信するだけ
  16. 18 Copyright Red Hat K.K. All rights reserved. (おまけ)複数tangサーバとはに置くかよる回復 •

    「シャミアの秘密分散法」を利用」ようにすを活用したい人利用したい人 • パスフレーズを入力を活用したい人回復するためストレージ暗号に暗号必要なサーバとは数が多い場合を活用したい人k台 とする • 関数が多い場合 f(x)=a 0 +a 1 x+a 2 x2+...+a k-1 xk-1 として、自動的に暗号パスフレー ズを入力回復に暗号使いはじめたい場う秘密を活用したい人a 0 とする。a 1 から提供が始まったa k-1 は乱数が多い場合 • tangサーバとはから提供が始まった回復した鍵を保存が始まったそれぞれf(x)上のためストレーの異なるなる 点(ただしx!=0)を活用したい人示すよう構成するすよう構成するする • k-1次関数が多い場合上のためストレーのk個の点が確定するの点が始まった確定している問題するとf(x)が始まった確定している問題 し、自動的に暗号f(0)=a 0 を活用したい人求めることができめストレージ暗号ることが始まったできるので秘密が始まった回復で きる 3点を通るを見ても通る2次関数はは 一意に定まるが、に定まるが、定まるが入力、 2点を通るしかわからない捨てランダム文と 関数はは定まらない捨てランダム文