openssl_publickey モジュール

2019/05/11

Ansible

 Ansible Documentation

openssl_publickey – Generate an OpenSSL public key from its private key.

 機能

  •  秘密鍵から公開鍵を生成します
  • このモジュールを実行するには対象ホストに pyOpenSSL パッケージがインストールされている必要があります

 パラメータ

パラメータ選択肢/
Default
説明
forceno
・yes
公開鍵が生成済みのときでも再生成する
formatPEM
・OpenSSH
公開鍵のフォーマット
path
※必須※
-生成した公開鍵を格納するファイル名
privatekey_passphrase-公開鍵のパスフレーズ
privatekey_path
※必須※
-秘密鍵ファイルのファイル名
statepresent
・absent
・present
公開鍵を作成する
・absent
公開鍵を削除する

 例

    - name: 秘密鍵から公開鍵を作成する
      openssl_publickey:
        path: ~/.ssh/id_rsa.pub
        privatekey_path: ~/.ssh/id_rsa

 その他

この記事を作成した 2019/05/11 時点で対象ホストが CentOS 7.6.1810 の場合、openssl_publickey モジュールの実行は失敗します( openssl_privatekey モジュールは正常に実行できます)。
■ 対象ホストが CentOS 7.6.1810 の場合
[ansibleman@ansiblesv ansible]$ ansible-playbook -i hosts.yml site.yml

PLAY [all] *********************************************************************

TASK [秘密鍵から公開鍵を作成する] ***********************************************************
fatal: [node-c0706]: FAILED! => {"changed": false, "msg": "the python pyOpenSSL module is required"}
        to retry, use: --limit @/home/ansibleman/ansible/site.retry

PLAY RECAP *********************************************************************
node-c0706                 : ok=0    changed=0    unreachable=0    failed=1   

[ansibleman@ansiblesv ansible]$ 
■ 対象ホストが Ubuntu 18.04.2 LTS の場合
[ansibleman@ansiblesv ansible]$ ansible-playbook -i hosts.yml site.yml

PLAY [all] *********************************************************************

TASK [秘密鍵から公開鍵を作成する] ***********************************************************
changed: [node-u1804]

PLAY RECAP *********************************************************************
node-u1804                 : ok=1    changed=1    unreachable=0    failed=0   

[ansibleman@ansiblesv ansible]$ 

カテゴリー

目次

QooQ