我有一个问题,是否可以创建SSH密钥而不在本地存储,而不是我可以将其保存为变量。是否有任何选项,以便我可以安全地拥有我的密钥而不保存本地。
由于
答案 0 :(得分:1)
有点hacky,但回答了这个问题:
---
- hosts: localhost
tasks:
- expect:
command: ssh-keygen -b 2048 -t rsa -f /dev/stdout -q
responses:
Overwrite: y
Enter: "\n"
failed_when: "'BEGIN RSA PRIVATE KEY' not in priv_key_raw.stdout"
changed_when: false
register: priv_key_raw
- set_fact:
priv_key: "{{ (priv_key_raw.stdout_lines[3:])[:-1] }}"
- shell: "/bin/echo -e \"{{ priv_key | join('\\n') }}\" | ssh-keygen -y -f /dev/stdin"
register: pub_key_raw
changed_when: false
- set_fact:
pub_key: "{{ pub_key_raw.stdout }}"
- debug: var=priv_key
- debug: var=pub_key