compscidr.gpg

ansible-gpg

GPGキーをkeybase.ioまたはファイルを使ってインポートおよび削除するためのAnsibleモジュールです。

このモジュールは、Brandon KalinowskiThelonius Kortの作業に基づいています。Ansible Galaxyに公開できるように更新されました。

このモジュールを使うことで、GPGキーの管理がとても簡単になります。keybaseのユーザー名と、キーのメールアドレスまたは指紋を指定するだけです。また、ファイルからキーをインポートすることもできます。

ansibleのfetch_urlメソッドを使って、公開キーを安全にhttps経由でダウンロードします。

key_fileを使用する場合、key_idはファイルから自動的に決定されます。

keybase.ioの機能を追加するだけでなく、このモジュールは追加されたキーを自動的に信頼されたキーとしてマークします。これにより、プロビジョニングされたマシンがインポートされたユーザーのためにファイルを暗号化できるようになります。

オプション

名称 デフォルト 説明
keybase_user null Keybaseで取得するためのユーザー名。指定すると、モジュールはhttps://keybase.io//pgp_keys.ascを自動的にダウンロードします。key_idを定義する必要があります。
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
プロジェクトについて

Enables import and removal of GPG-keys using keybase.io or files

インストール
ansible-galaxy install compscidr.gpg
ライセンス
mit
ダウンロード
8.1k
所有者
Software engineer. Interested in robotics, mesh networks, machine learning and decentralization