linux-system-roles.nbde_server
nbde_server
ネットワークバウンドディスク暗号化サーバー(例:tang)を設定するためのAnsibleロールです。
このロールは現在、tangをプロバイダーとしてサポートしており、tangサーバーをセットアップできます。
対応ディストリビューション
- RHEL-7以上、CentOS-7以上
- Fedora
必要条件
以下を参照してください
コレクションの要件
ロールでは、meta/collection-requirements.yml
に指定された追加のコレクションが必要です。これは自動的にはインストールされません。以下のコマンドでインストールする必要があります。
ansible-galaxy install -vv -r meta/collection-requirements.yml
ロール変数
ロールに渡すことのできる変数は以下の通りです。
変数 | デフォルト | 説明 |
---|---|---|
nbde_server_provider |
tang |
nbde_server ロールのプロバイダーを識別します。現在、tang をサポートしており、nbde_server ロールはtangサーバーのプロビジョニング/デプロイが可能です。 |
nbde_server_service_state |
started |
nbde_serverの状態を示します。started (デフォルト)またはstopped のいずれかです。started はサーバーが接続を受け入れる状態を意味し、stopped は接続を受け入れない状態を意味します。 |
nbde_server_rotate_keys |
false |
既存のキーのローテーションの必要性を示します。デフォルトの動作(false )では、新しいキーがない場合に新しいキーを作成し、既存のキーには手を付けません。true に設定すると、既存のキーがローテーションされ、新しいキーが作成されます。 |
nbde_server_fetch_keys |
false |
コントロールノードにキーをフェッチするかどうかを示します。この場合、nbde_server_keys_dir に配置されます。nbde_server_keys_dir を設定する必要があります。 |
nbde_server_deploy_keys |
false |
nbde_server_keys_dir ディレクトリ内のキーをリモートホストにデプロイするかどうかを示します。nbde_server_keys_dir を設定する必要があります。 |
nbde_server_keys_dir |
リモートホストにデプロイするキーが含まれる、コントロールノード内のディレクトリを指定します。トップレベルディレクトリにあるキーはすべてのリモートホストにデプロイされ、インベントリに応じてリモートホスト名の付いたサブディレクトリ内にあるキーは特定のホストにのみデプロイされます。nbde_server_keys_dir は絶対パスである必要があります。 |
|
nbde_server_manage_firewall |
false |
true に設定すると、firewall ロールを使ってnbdeサーバーポートとゾーンを管理します。 |
nbde_server_manage_selinux |
false |
true に設定すると、selinux ロールを使ってnbdeサーバーポートを管理します。 |
nbde_server_port |
80 |
tangdがリスンするポート番号です。ポートのSELinuxラベリングを管理するためには、nbde_server_manage_selinux: true を設定する必要があります。ファイアウォールを管理するためには、nbde_server_manage_firewall: true を設定する必要があります。 |
nbde_server_firewall_zone |
public |
ポートを開放するデフォルトのゾーンを変更します。デフォルトのゾーンを変更するには、nbde_server_manage_firewall: true を設定する必要があります。 |
nbde_server_fetch_keysとnbde_server_deploy_keys
これらのオプションを使用するには、絶対パスを持つディレクトリnbde_server_keys_dir
を指定する必要があります。
これらの変数を使用する際の動作は次の通りです。
nbde_server_fetch_keys
がtrue
に設定されている場合
ロールは次の方法でホストからキーを取得します。
nbde_server_deploy_keys
が設定されていない場合、すべてのホストからキーが取得され、それぞれのホストに名前を付けたディレクトリ内に配置されます。nbde_server_deploy_keys
が設定されている場合、インベントリ内の最初のホストからのみキーが取得され、nbde_server_keys_dir
のトップレベルディレクトリに配置されます。
nbde_server_deploy_keys
がtrue
に設定されている場合
ロールは次の方法でnbde_server_keys_dir
内のキーをデプロイします。
nbde_server_keys_dir
のトップレベルディレクトリにあるキーはすべてのホストにデプロイされます。nbde_server_keys_dir
内のインベントリに名前を付けたサブディレクトリ内にあるキーは、その特定のホストにデプロイされます。
例プレイブック
例1: インベントリ内のすべてのホストにNBDEサーバーをデプロイ
---
- name: nbdeサーバーを管理
hosts: all
roles:
- linux-system-roles.nbde_server
例2: NBDEサーバーインストールからキーを取得
すべてのNBDEサーバーインストールから/root/nbde_server/keys
にキーを取得します。
---
- name: /root/nbde_server/keysからnbdeキーを管理
hosts: all
vars:
nbde_server_fetch_keys: true
nbde_server_keys_dir: /root/nbde_server/keys
roles:
- linux-system-roles.nbde_server
この後、キーは/root/nbde_server/keys
内、ホストごとに名前を付けたサブディレクトリに配置され、バックアップできます。
例3: 例2で取得したバックアップからキーを再デプロイ
キーを再デプロイするには、それらをデプロイ先のホスト名に名前を付けたサブディレクトリに配置する必要があります。例2内の/root/nbde_server/keys
を使用して、同じホストに同じキーを再デプロイするには、以下のプレイブックを使用します。
---
- name: nbdeを管理し、バックアップされたキーを再デプロイ
hosts: all
vars:
nbde_server_deploy_keys: true
nbde_server_keys_dir: /root/nbde_server/keys
roles:
- linux-system-roles.nbde_server
例4: 同じキーをすべてのホストで使用してNBDEサーバーをデプロイ
注意 これは推奨されませんが、サポートされています。
---
- name: すべてのホストで同じキーを使用してnbdeを管理
hosts: all
vars:
nbde_server_fetch_keys: true
nbde_server_deploy_keys: true
nbde_server_keys_dir: /root/nbde_server/keys
roles:
- linux-system-roles.nbde_server
例5: カスタムポートとゾーンでNBDEサーバーをデプロイ
---
- name: カスタムポートとゾーンでnbdeを管理
hosts: all
vars:
nbde_server_manage_firewall: true
nbde_server_manage_selinux: true
nbde_server_port: 7500
nbde_server_firewall_zone: dmz
roles:
- linux-system-roles.nbde_server
rpm-ostree
README-ostree.mdを参照してください。
ライセンス
MIT