AlphaHydrae.ssh-key
Ansible SSHキー
Ansibleのロールで、ユーザー用のSSHキーを生成します。
ssh_key_root_linkをtrueに設定すると、キーがルートユーザーの.sshディレクトリにシンボリックリンクされます。
ロール変数
SSHキーのプロパティ
ssh_key_user(またはuser) - 必須 - SSHキーを生成するユーザー(デフォルトはuser変数の値)。ssh_key_bits[整数]- 生成されるキーのビット数(デフォルトは8192)。ssh_key_comment- SSHキーのブロックの末尾にあるコメント(デフォルトは{{ ssh_key_user }}@{{ ansible_hostname }}、例:jdoe@mycomputer)。
非ルートユーザーのSSHキーの場所
ssh_key_dir- キーが生成される.sshディレクトリ(デフォルトは{{ host_user_homes }}/{{ ssh_key_user }}/.ssh、host_user_homesはAlphaHydrae.multipassロールによって提供されます)。ssh_key_file- SSHキーのファイルの場所(デフォルトは{{ ssh_key_dir }}/id_rsa)。
ルートユーザーのSSHキーの場所
ssh_key_root_dir- ルートユーザーの.sshディレクトリ(デフォルトは{{ host_root_home }}/.ssh;host_root_home変数はAlphaHydrae.multipassロールによって提供されます)。ssh_key_root_file- ルートユーザーのSSHキーのファイルの場所(デフォルトは{{ ssh_key_root_dir }}/id_rsa)。
ルートシンボリックリンク変数
ssh_key_root_link[ブール値]- 生成されたキーをルートユーザーの.sshディレクトリにシンボリックリンクするかどうか(デフォルトはfalse;ssh_key_userがルートユーザーの場合は効果がありません)。
依存関係
AlphaHydrae.multipassロールは、ユーザーホームディレクトリがどこにあるかを判断するために使用されます。 このロールは、ターゲットホストのプラットフォームに応じて合理的なデフォルト値を設定します:
host_root_user- ルートユーザーのユーザー名(例:root)。host_root_group- ルートユーザーのグループ(例:root)。host_root_home- ルートユーザーのホームディレクトリ(例:/root)。host_user_homes- ユーザーホームディレクトリの基準ディレクトリ(例:Linuxでは/home、OS Xでは/Users)。
例プレイブック
- hosts: servers
roles:
- role: AlphaHydrae.ssh-key
ssh_key_user: jdoe
カスタムSSHキーのプロパティ
- hosts: servers
roles:
- role: AlphaHydrae.ssh-key
ssh_key_user: jdoe
ssh_key_bits: 2048
ssh_key_comment: my-key
デフォルトのユーザーが定義されている場合(例:プレイブックレベルで)
- hosts: servers
vars:
user: jdoe
roles:
- role: AlphaHydrae.ssh-key
キーをルートユーザーの.sshディレクトリにシンボリックリンクする
- hosts: servers
roles:
- role: AlphaHydrae.ssh-key
ssh_key_user: jdoe
ssh_key_root_link: true
