iT邦幫忙

2017 iT 邦幫忙鐵人賽
DAY 3
0

主題

OpenStack KeyStone

前言

繼昨天的OpenStack初始化安裝過程之後來到了第一個核心元件--KeyStone,今天主要會介紹他如何安裝及使用,也未介紹到使用Common模式登入使用OpenStack。

主要內容

KeyStone使要用於身分管理的服務
軟體組建主要分成3種

  • Server : 主在在管理對外API部分
  • Drivers : 作為一個連結使用者管理資料庫的間階層
  • Modules : 對於額外的服務像是增加憑證的功能可以加入

防火牆部分他會把登入的端點(API)因為安全性分成3種分別是

  • admin
  • internal
  • public

使用者方面OpenStack會大致上分成3種分別是

  • Service
  • Admin
  • User
    而其中最特別的使用者Service他也是一個使用者群組,像是Nova、Neutron、Glance... ...等等的核心元件就是放在這邊,另外兩個才是我們平常在講的USER

建立Database喔

sudo mysql -u root -p
輸入密碼

建立Database

CREATE DATABASE keystone;

安全設定

GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'KEYSTONE資料庫密碼';
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'KEYSTONE資料庫密碼';

從安裝開始說起

sudo apt install keystone -y

編輯設定檔

sudo vim /etc/keystone/keystone.conf
[database]
connection = mysql+pymysql://keystone:KEYSTONE資料庫密碼@controller/keystone
[token]
provider = fernet(使用它作為範例,預設是UUID)

講到這邊來說一下他Token的產生及驗證方式,他主要分成3種

  • UUID
  • Frtnet
  • PKI or PKIZ

驗證原理圖
UUID

Fernet

PKI

PKIZ

其實看到這邊我相信都很好懂了
我們一般看到的OpenStack-KeyStone認證順序圖都是以UUID作為DEMO
那UUID和Fernet的認證加密使用對稱性金鑰
這兩個主要差在當User取的認證之後會得到一組Token,且這組Token會不會有條件性的消失,像是時間一到自動清除

比較不一樣的是PKI與PKIZ他是以非對稱性金鑰進行
當User連線進來的時候KeyStone會給予一組私鑰
屆時再將此私鑰給予OpenStack做認證
這樣就可以完成認證手續
那這兩個的細部差別是在Token的部分有沒有被經過壓縮
但基本上沒有太大的差異性

後記

今天因為時間比較趕的關係內容沒有非常的多,但對於我來說我非常喜歡加密的部分,因為我自己還有再做其他安全性的架設,所以說我覺得這些都是一個很好的加密參考模式。
希望大家可以在這一個月中讀到非常多的應用技巧,那如果有問題可以以私訊我的方式是使用問題回復,我會盡可能地回答問題,那會在後面統一做回覆,或者如果有想知道的相關的應用也可以提出討論喔。

參考資料

OpenStack cn
OpenStack Doc


上一篇
OpenStack 初始步驟
下一篇
OpenStack KeyStone(2)
系列文
OpenStack-多到數不清的套件改36

尚未有邦友留言

立即登入留言