簡體   English   中英

ansible 從用戶輸入讀取 openssl 公鑰 (.pem) 內容並在服務器上創建文件

[英]ansible to read openssl public key (.pem) content from user input and create a file on server

我基本上是在創建一個用於創建 pkcs12 文件的劇本,其中要求提供公鑰(.pem)和私鑰。 我的私鑰在服務器上,所以我可以傳遞文件的位置。 但我的公鑰(.pem)不在服務器上,我也不能從本地復制粘貼。 所以我想創建一個 ansible-playbook,它可以從用戶那里讀取公鑰內容作為變量,並在遠程服務器上創建一個文件以用於 pkcs12 文件創建。

我的公鑰內容分布在多行,如下所示。

-----BEGIN CERTIFICATE-----
(64-character alphanumeric content)
.
.
.
.
-----END CERTIFICATE-----

你能建議實現這一目標的簡單方法嗎? 我正在使用復制模塊“內容”選項,但無法實現這一點。

  tasks:
  - name: copy content
    copy:
     content: "{{ my_pub_key }}"
     dest: /tmp/{{file}}.pem

ansible-playbook abc.yaml -e "my_pub_key=
-----BEGIN CERTIFICATE-----
.
.
.
.
-----END CERTIFICATE-----

“〜請建議是否有其他方法可以實現這一目標?

不完全確定,下面的陳述是什么意思。 從問題中,猜測沒有寫入目標文件。

...但無法實現這一目標...

你的任務看起來不錯。 但是,要將多行字符串作為參數傳遞,請添加引號 ( ' ) 以像這樣定義變量值。

$ ansible-playbook abc.yaml -e "my_pub_key='
-----BEGIN CERTIFICATE-----
.
.
.
.
-----END CERTIFICATE-----'"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM