Ansible内置模块之known_hosts
发布作者:微思网络 发布时间:2024-11-12 浏览量:0次
选项 必须 类型 默认值 说明 url 是 str 无 要下载文件的 URL dest 是 str 无 目标文件路径 mode 否 str 无 目标文件的权限,如 0644、0755 等 owner 否 str 无 目标文件的所有者 group 否 str 无 目标文件的属组 checksum 否 str no 用于验证下载文件的 SHA256 校验和 force 否 bool 无 如果目标文件存在,是否强制覆盖 timeout 否 int no 设置下载的超时时间(秒) headers 否 list 无 用于下载请求的 HTTP 头 url_password 否 str 无 用于下载请求的密码 url_username 否 str 无 用于下载请求的用户名 validate_certs 否 bool yes 如果为 no,忽略 SSL 证书验证错误 use_proxy 否 bool yes 是否使用系统中定义的代理 client_cert 否 str 无 用于下载请求的客户端证书文件路径 client_key 否 str 无 用于下载请求的客户端密钥文件路径 http_agent 否 str ansible-httpget 设置下载请求的 HTTP User-Agent 头
# 利用文件向 known_hosts 文件添加主机公钥
- name: Tell the host about our servers it might want to ssh to
ansible.builtin.known_hosts:
path: /etc/ssh/ssh_known_hosts
name: foo.com.invalid
key: "{{ lookup('ansible.builtin.file', 'pubkeys/foo.com.invalid') }}"
# 向 known_hosts 文件添加主机公钥
- name: Another way to call known_hosts
ansible.builtin.known_hosts:
name: host1.example.com # or 10.9.8.77
key: host1.example.com,10.9.8.77 ssh-rsa ASDeararAIUHI324324
path: /etc/ssh/ssh_known_hosts
state: present
# 向 known_hosts 文件添加特定ssh端口的主机公钥
- name: Add host with custom SSH port
ansible.builtin.known_hosts:
name: '[host1.example.com]:2222'
key: '[host1.example.com]:2222 ssh-rsa ASDeararAIUHI324324'
path: /etc/ssh/ssh_known_hosts
state: present
# 向 known_hosts 文件添加多个主机公钥
- name: Add multiple host keys to known_hosts
ansible.builtin.known_hosts:
path: /home/user/.ssh/known_hosts
host: "{{ item.host }}"
key: "{{ item.key }}"
state: present
loop:
- { host: "git.example.com", key: "ssh-rsa AAAAB3NzaC1yAQEYb... user@host" }
- { host: "hg.example.com", key: "ssh-rsa AAAAB3NzaC1ycAAr5zYb... user@host" }
# 向默认的 known_hosts 文件添加主机公钥并哈希化主机名
- name: Add a host key to known_hosts with hashed hostnames
ansible.builtin.known_hosts:
host: git.example.com
key: ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAr5zYb... user@host
hash_host: yes
# 从 known_hosts 文件中删除主机公钥
- name: Remove a host key from known_hosts
ansible.builtin.known_hosts:
path: /home/user/.ssh/known_hosts
host: git.example.com
state: absent