gametize.install-root-cert

Ansibleロール: ルートCA証明書のインストール

ビルドステータス

このAnsibleロールは、ターゲットホストにルートCA証明書をインストールします。この機能を利用するには特権アクセスが必要です。

なぜこれが必要かを簡単に説明すると:

では、このAnsibleロールは何のためにあるのでしょうか?

このプレイブックは、以下のプラットフォームで使用できます:

  • CentOS 6, 7
  • Ubuntu 14.04, 16.04
  • Mac OS 10.12(冪等性がなく、十分にテストされていません)

依存関係

このロールはルートCA証明書を必要とします。

変数

  • install_root_cert_pem ローカルマシンにおけるルートCA証明書(.pem)のフルパス

使用方法

例のプレイブック:

---
- hosts: all
  become: yes
  vars:
    install_root_cert_pem: files/root_ca.pem
  roles:
    - gametize.install-root-cert

テスト

Travisテスト(.travis.yml)は、geerlingguyによるこの記事に従って設定されています。

Gitlab CIテストも同様に設定されており、gitlab-runnerで実行できます。ローカルでの実行例:

gitlab-ci-multi-runner exec shell test_centos7

テストで使用されるアーティファクト

鍵と証明書は、以下のコマンドを使って生成できます。これらの設定を本番環境で使用しないでください!

$ ### ルートCAのための鍵と証明書を生成
$ openssl genrsa -out root_ca.key 1024
$ openssl req -x509 \
    -subj '/C=SG/ST=Singapore/L=Singapore/O=Example Inc/OU=Example Inc Certificate Authority/CN=example.com' \
    -new -nodes -key root_ca.key -sha256 -days 1024 \
    -out root_ca.pem

$ ### デバイスのための鍵と証明書を生成
$ openssl genrsa -out localhost.key 1024    # デバイス `localhost.key` のための鍵を生成
$ openssl req -new \
    -subj '/C=SG/ST=Singapore/L=Singapore/O=Example Inc/OU=Example Inc Testing Department/CN=localhost' \
    -new -nodes -key localhost.key -sha256 -days 1024 \
    -out localhost.csr

$ ### デバイス証明書をルートCA証明書と鍵で署名
$ openssl x509 -req \
    -in localhost.csr -CA root_ca.pem -CAkey root_ca.key \
    -CAcreateserial -out localhost.crt -days 1024 -sha256
$ cat localhost.crt localhost.key > localhost.pem

ライセンス

MIT

作者情報

LIM EnSheng (ensheng@gametize.com)

プロジェクトについて

This role will install the Root CA Certificate on the target hosts

インストール
ansible-galaxy install gametize.install-root-cert
ライセンス
Unknown
ダウンロード
17.1k
所有者