compscidr.gpg
ansible-gpg
GPGキーをkeybase.ioまたはファイルを使ってインポートおよび削除するためのAnsibleモジュールです。
このモジュールは、Brandon KalinowskiとThelonius Kortの作業に基づいています。Ansible Galaxyに公開できるように更新されました。
このモジュールを使うことで、GPGキーの管理がとても簡単になります。keybaseのユーザー名と、キーのメールアドレスまたは指紋を指定するだけです。また、ファイルからキーをインポートすることもできます。
ansibleのfetch_urlメソッドを使って、公開キーを安全にhttps経由でダウンロードします。
key_file
を使用する場合、key_id
はファイルから自動的に決定されます。
keybase.ioの機能を追加するだけでなく、このモジュールは追加されたキーを自動的に信頼されたキーとしてマークします。これにより、プロビジョニングされたマシンがインポートされたユーザーのためにファイルを暗号化できるようになります。
オプション
名称 | デフォルト | 説明 |
---|---|---|
keybase_user | null | Keybaseで取得するためのユーザー名。指定すると、モジュールはhttps://keybase.io/ |
key_id | null | 取得してインポートするキーのID。公開キーのみに適用されます。key_fileまたはkey_idのいずれかが必要です。 |
key_file | null | インポートするキーのファイル名。リモートマシンに存在する必要があります(ローカルではなく)。key_fileまたはkey_idのいずれかが必要です。 |
key_type | 'public' | インポートするキーのタイプ。key_fileにのみ適用されます。 |
bin_path | /usr/bin/gpg | リモートのgpgバイナリの場所 |
state | 'present' | 希望する状態 'present', 'latest', または 'absent' |
奇妙な動作が、異常なキーと使用する際に発生しますが、これはgpgの問題です。
Galaxyからのインストール:
ansible-galaxy install compscidr.gpg
Galaxy / requirementsからのインストール
requirements.yml
に以下を追加します。
roles:
- name: compscidr.gpg
その後、以下のコマンドを実行します。
ansible-galaxy install -r requirements.yml
Git / requirementsからのインストール
requirements.yml
ファイルに以下を追加します:
# GitHubから
- src: https://github.com/compscidr/ansible-gpg
name: compscidr.gpg
その後、以下のコマンドを実行します。
ansible-galaxy install -r requirements.yml
例としてのPlaybook
---
- name: GPGモジュールの例
hosts: vagrant
gather_facts: false
roles:
- role: compscidr.gpg
tasks:
- name: KeybaseからGPGキーをインポート
gpg:
keybase_user: brandonkal
state: present
key_id: F33344CEF855F4FE4C2C55820E9D2E07D3D89BDD
# キーのIDは、指紋またはメールアドレスとして指定できます
tags:
- keybase
- name: 偽のKeybaseキーをインポート | 失敗する
gpg:
keybase_user: jijd
state: present
tags:
- fake
- name: GPGファイルをコピー
copy:
src: publickey.asc
dest: publickey.asc
tags:
- file
- name: ファイルから公開GPGキーをインポート
gpg:
key_file: publickey.asc
tags:
- file
- name: ファイルからプライベートGPGキーをインポート
gpg:
key_file: privatekey.asc
key_type: private
state: latest
tags:
- private
- name: GPGキーを削除
gpg:
keybase_user: gpgtools
key_id: [email protected]
state: absent
インストール
ansible-galaxy install compscidr.gpg
ライセンス
mit
ダウンロード
8.1k
所有者
Software engineer. Interested in robotics, mesh networks, machine learning and decentralization