成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用 Stratis 的網絡綁定磁盤加密

運維 系統運維
在一個有許多加密磁盤的環境中,解鎖所有的磁盤是一項困難的任務。網絡綁定磁盤加密(NBDE)有助于自動解鎖 Stratis 卷的過程。這是在大型環境中的一個關鍵要求。Stratis 2.1 版本增加了對加密的支持,這在《Stratis 加密入門》一文中介紹過。

[[396620]]

在一個有許多加密磁盤的環境中,解鎖所有的磁盤是一項困難的任務。網絡綁定磁盤加密Network bound disk encryption(NBDE)有助于自動解鎖 Stratis 卷的過程。這是在大型環境中的一個關鍵要求。Stratis 2.1 版本增加了對加密的支持,這在《Stratis 加密入門》一文中介紹過。Stratis 2.3 版本最近在使用加密的 Stratis 池時引入了對網絡綁定磁盤加密(NBDE)的支持,這是本文的主題。

Stratis 網站 將 Stratis 描述為一個“易于使用的 Linux 本地存儲管理”。短視頻《使用 Stratis 管理存儲》對基礎知識進行了快速演示。該視頻是在 Red Hat Enterprise Linux 8 系統上錄制的,然而,視頻中顯示的概念也適用于 Fedora Linux 中的 Stratis。

先決條件

本文假設你熟悉 Stratis,也熟悉 Stratis 池加密。如果你不熟悉這些主題,請參考這篇 文章 和前面提到的 Stratis 概述視頻。

NBDE 需要 Stratis 2.3 或更高版本。本文中的例子使用的是 Fedora Linux 34 的預發布版本。Fedora Linux 34 的最終版本將包含 Stratis 2.3。

網絡綁定磁盤加密(NBDE)概述

加密存儲的主要挑戰之一是有一個安全的方法在系統重啟后再次解鎖存儲。在大型環境中,手動輸入加密口令并不能很好地擴展。NBDE 解決了這一問題,允許以自動方式解鎖加密存儲。

在更高層次上,NBDE 需要環境中的 Tang 服務器??蛻舳讼到y(使用 Clevis Pin)只要能與 Tang 服務器建立網絡連接,就可以自動解密存儲。如果網絡沒有連接到 Tang 服務器,則必須手動解密存儲。

這背后的想法是,Tang 服務器只能在內部網絡上使用,因此,如果加密設備丟失或被盜,它將不再能夠訪問內部網絡連接到 Tang 服務器,因此不會被自動解密。

關于 Tang 和 Clevis 的更多信息,請參見手冊頁(man tangman clevis)、Tang 的 GitHub 頁面 和 Clevis 的 GitHub 頁面。

設置 Tang 服務器

本例使用另一個 Fedora Linux 系統作為 Tang 服務器,主機名為 tang-server。首先安裝 tang 包。

  1. dnf install tang

然后用 systemctl 啟用并啟動 tangd.socket

  1. systemctl enable tangd.socket --now

Tang 使用的是 TCP 80 端口,所以你也需要在防火墻中打開該端口。

  1. firewall-cmd --add-port=80/tcp --permanent
  2. firewall-cmd --add-port=80/tcp

最后,運行 tang-show-keys 來顯示輸出簽名密鑰指紋。你以后會需要這個。

  1. # tang-show-keys
  2. l3fZGUCmnvKQF_OA6VZF9jf8z2s

創建加密的 Stratis 池

上一篇關于 Stratis 加密的文章詳細介紹了如何設置加密的 Stratis 池,所以本文不會深入介紹。

第一步是捕獲一個將用于解密 Stratis 池的密鑰。即使使用 NBDE,也需要設置這個,因為在 NBDE 服務器無法到達的情況下,可以用它來手動解鎖池。使用以下命令捕獲 pool1 密鑰。

  1. # stratis key set --capture-key pool1key
  2. Enter key data followed by the return key:

然后我將使用 /dev/vdb 設備創建一個加密的 Stratis 池(使用剛才創建的 pool1key),命名為 pool1。

  1. # stratis pool create --key-desc pool1key pool1 /dev/vdb。

接下來,在這個 Stratis 池中創建一個名為 filesystem1 的文件系統,創建一個掛載點,掛載文件系統,并在其中創建一個測試文件:

  1. # stratis filesystem create pool1 filesystem1
  2. # mkdir /filesystem1
  3. # mount /dev/stratis/pool1/filesystem1 /filesystem1
  4. # cd /filesystem1
  5. # echo "this is a test file" > testfile

將 Stratis 池綁定到 Tang 服務器上

此時,我們已經創建了加密的 Stratis 池,并在池中創建了一個文件系統。下一步是將你的 Stratis 池綁定到剛剛設置的 Tang 服務器上。使用 stratis pool bind nbde 命令進行。

當你進行 Tang 綁定時,需要向該命令傳遞幾個參數:

  • 池名(在本例中,pool1
  • 鑰匙描述符名稱(本例中為 pool1key
  • Tang 服務器名稱(在本例中,http://tang-server

記得之前在 Tang 服務器上,運行了 tang-show-keys,顯示 Tang 輸出的簽名密鑰指紋是 l3fZGUCmnvKQF_OA6VZF9jf8z2s。除了前面的參數外,還需要用參數 -thumbprint l3fZGUCmnvKQF_OA6VZF9jf8z2s 傳遞這個指紋,或者用 -trust-url 參數跳過對指紋的驗證。

使用 -thumbprint 參數更安全。例如:

  1. # stratis pool bind nbde pool1 pool1key http://tang-server --thumbprint l3fZGUCmnvKQF_OA6VZF9jf8z2s

用 NBDE 解鎖 Stratis 池

接下來重啟主機,并驗證你可以用 NBDE 解鎖 Stratis 池,而不需要使用密鑰口令。重啟主機后,該池不再可用:

  1. # stratis pool list
  2. Name Total Physical Properties

要使用 NBDE 解鎖池,請運行以下命令:

  1. # stratis pool unlock clevis

注意,你不需要使用密鑰口令。這個命令可以在系統啟動時自動運行。

此時,Stratis 池已經可以使用了:

  1. # stratis pool list
  2. Name Total Physical Properties
  3. pool1 4.98 GiB / 583.65 MiB / 4.41 GiB ~Ca, Cr

你可以掛載文件系統,訪問之前創建的文件:

  1. # mount /dev/stratis/pool1/filesystem1 /filesystem1/
  2. # cat /filesystem1/testfile
  3. this is a test file

輪換 Tang 服務器密鑰

最好定期輪換 Tang 服務器密鑰,并更新 Stratis 客戶服務器以使用新的 Tang 密鑰。

要生成新的 Tang 密鑰,首先登錄到 Tang 服務器,查看 /var/db/tang 目錄的當前狀態。然后,運行 tang-show-keys 命令:

  1. # ls -al /var/db/tang
  2. total 8
  3. drwx------. 1 tang tang 124 Mar 15 15:51 .
  4. drwxr-xr-x. 1 root root 16 Mar 15 15:48 ..
  5. -rw-r--r--. 1 tang tang 361 Mar 15 15:51 hbjJEDXy8G8wynMPqiq8F47nJwo.jwk
  6. -rw-r--r--. 1 tang tang 367 Mar 15 15:51 l3fZGUCmnvKQF_OA6VZF9jf8z2s.jwk
  7. # tang-show-keys
  8. l3fZGUCmnvKQF_OA6VZF9jf8z2s

要生成新的密鑰,運行 tangd-keygen 并將其指向 /var/db/tang 目錄:

  1. # /usr/libexec/tangd-keygen /var/db/tang

如果你再看看 /var/db/tang 目錄,你會看到兩個新文件:

  1. # ls -al /var/db/tang
  2. total 16
  3. drwx------. 1 tang tang 248 Mar 22 10:41 .
  4. drwxr-xr-x. 1 root root 16 Mar 15 15:48 ..
  5. -rw-r--r--. 1 tang tang 361 Mar 15 15:51 hbjJEDXy8G8wynMPqiq8F47nJwo.jwk
  6. -rw-r--r--. 1 root root 354 Mar 22 10:41 iyG5HcF01zaPjaGY6L_3WaslJ_E.jwk
  7. -rw-r--r--. 1 root root 349 Mar 22 10:41 jHxerkqARY1Ww_H_8YjQVZ5OHao.jwk
  8. -rw-r--r--. 1 tang tang 367 Mar 15 15:51 l3fZGUCmnvKQF_OA6VZF9jf8z2s.jwk

如果你運行 tang-show-keys,就會顯示出 Tang 所公布的密鑰:

  1. # tang-show-keys
  2. l3fZGUCmnvKQF_OA6VZF9jf8z2s
  3. iyG5HcF01zaPjaGY6L_3WaslJ_E

你可以通過將兩個原始文件改名為以句號開頭的隱藏文件,來防止舊的密鑰(以 l3fZ 開頭)被公布。通過這種方法,舊的密鑰將不再被公布,但是它仍然可以被任何沒有更新為使用新密鑰的現有客戶端使用。一旦所有的客戶端都更新使用了新密鑰,這些舊密鑰文件就可以刪除了。

  1. # cd /var/db/tang
  2. # mv hbjJEDXy8G8wynMPqiq8F47nJwo.jwk .hbjJEDXy8G8wynMPqiq8F47nJwo.jwk
  3. # mv l3fZGUCmnvKQF_OA6VZF9jf8z2s.jwk .l3fZGUCmnvKQF_OA6VZF9jf8z2s.jwk

此時,如果再運行 tang-show-keys,Tang 只公布新鑰匙:

  1. # tang-show-keys
  2. iyG5HcF01zaPjaGY6L_3WaslJ_E

下一步,切換到你的 Stratis 系統并更新它以使用新的 Tang 密鑰。當文件系統在線時, Stratis 支持這樣做。

首先,解除對池的綁定:

  1. # stratis pool unbind pool1

接下來,用創建加密池時使用的原始口令設置密鑰:

  1. # stratis key set --capture-key pool1key
  2. Enter key data followed by the return key:

最后,用更新后的密鑰指紋將 Stratis 池綁定到 Tang 服務器上:

  1. # stratis pool bind nbde pool1 pool1key http://tang-server --thumbprint iyG5HcF01zaPjaGY6L_3WaslJ_E

Stratis 系統現在配置為使用更新的 Tang 密鑰。一旦使用舊的 Tang 密鑰的任何其他客戶系統被更新,在 Tang 服務器上的 /var/db/tang 目錄中被重命名為隱藏文件的兩個原始密鑰文件就可以被備份和刪除了。

如果 Tang 服務器不可用怎么辦?

接下來,關閉 Tang 服務器,模擬它不可用,然后重啟 Stratis 系統。

重啟后,Stratis 池又不可用了:

  1. # stratis pool list
  2. Name Total Physical Properties

如果你試圖用 NBDE 解鎖,會因為 Tang 服務器不可用而失?。?/p>

  1. # stratis pool unlock clevis
  2. Execution failed:
  3. An iterative command generated one or more errors: The operation 'unlock' on a resource of type pool failed. The following errors occurred:
  4. Partial action "unlock" failed for pool with UUID 4d62f840f2bb4ec9ab53a44b49da3f48: Cryptsetup error: Failed with error: Error: Command failed: cmd: "clevis" "luks" "unlock" "-d" "/dev/vdb" "-n" "stratis-1-private-42142fedcb4c47cea2e2b873c08fcf63-crypt", exit reason: 1 stdout: stderr: /dev/vdb could not be opened.

此時,在 Tang 服務器無法到達的情況下,解鎖池的唯一選擇就是使用原密鑰口令:

  1. # stratis key set --capture-key pool1key
  2. Enter key data followed by the return key:

然后你可以使用鑰匙解鎖池:

  1. # stratis pool unlock keyring

接下來,驗證池是否成功解鎖:

  1. # stratis pool list
  2. Name Total Physical Properties
  3. pool1 4.98 GiB / 583.65 MiB / 4.41 GiB ~Ca, Cr

 

 

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2021-04-19 16:31:33

Stratis加密Linux

2018-06-11 12:53:53

LinuxStratis本地存儲

2020-11-23 10:57:08

Linux加密磁盤自動解鎖

2021-05-06 08:04:37

存儲StratisCentos 8

2018-06-19 16:05:27

LinuxStratis存儲

2011-04-11 11:31:39

Linux加密

2024-08-19 10:29:26

SQL加密選項模式綁定

2009-06-25 13:52:40

磁盤加密FDE億賽通

2022-06-06 15:41:51

加密貨幣安全勒索軟件

2023-09-10 08:21:26

全磁盤加密Ubuntu

2022-06-06 08:00:59

Kvm虛擬機磁盤

2021-09-01 10:37:25

鴻蒙HarmonyOS應用

2024-11-11 14:45:34

2015-12-29 10:29:15

2009-07-07 22:33:49

2017-01-15 23:11:28

2015-03-06 09:16:55

LUKS加密磁盤備份

2015-05-20 16:17:32

網絡·安全技術周刊

2011-01-13 09:57:24

2023-09-11 06:57:02

Ubuntu
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲一区自拍 | 成人黄色网址大全 | 久久日韩精品一区二区三区 | 欧美日韩a | 九九伊人sl水蜜桃色推荐 | 久久精品二区亚洲w码 | 国产精品毛片无码 | 亚洲精品乱码久久久久久9色 | 欧美日韩一区二区三区视频 | 91精品国产综合久久精品 | 国产精品久久久精品 | 中文字幕在线视频精品 | 国产精品一区在线 | 在线观看三级av | 午夜精品一区二区三区在线观看 | av大片 | 国产精品久久久久久久久久免费 | 日日夜夜精品视频 | 久色 | 国产精品视频专区 | 国产精品高潮呻吟久久久久 | 国产精品视屏 | h片免费在线观看 | 午夜影院在线观看 | 久久成人免费 | 一级a性色生活片久久毛片 一级特黄a大片 | av黄色片在线观看 | 亚洲三区在线 | 成人看片在线观看 | 日韩高清成人 | 国产成人精品久久二区二区 | 狠狠骚 | 伊人中文字幕 | 欧美中文字幕在线观看 | 精品国产一区二区国模嫣然 | 特黄av| 一区二区三区四区免费视频 | 噜噜噜噜狠狠狠7777视频 | 欧美精品一区二区三区四区五区 | 亚洲网站在线播放 | 99re视频在线免费观看 |