【发布时间】:2019-09-08 05:12:48
【问题描述】:
我正在尝试创建一个 Ansible 游戏,其中之前下载的 SSL 证书然后分发到我们的 F5。我已经更新到我们的许可证允许的最新版本,12.1.4。我可以在 F5 上放置密钥和证书文件。我可以手动配置这些证书,一切正常……但我需要通过 Ansible 自动执行此过程。
我们的 F5 目前被用作监控音频源的 WaveForm 服务的故障转移。我正在尝试使用 bigip_profile_client_ssl 更新 WaveForm 的客户端配置文件,以指向在前面的步骤中上传的新 SSL 证书。问题是我不知道如何更新现有的配置文件, bigip_profile_client_ssl 似乎只创建了一个同名的新配置文件。我搜索了文档、谷歌等,但找不到如何执行的答案,特别是客户端 SSL 配置文件的更新。
所以,很自然地,我想也许我可以删除旧条目并创建一个新条目。很简单,对吧?但是我在那里也遇到了问题:我似乎无法弄清楚如何使用 bigip_profile_client_ssl 模块设置应用程序或分区/路径。我认为具体的应用程序设置是将 SSL 配置绑定到实际网络资源的内容。
查看 Ansible 文档:https://docs.ansible.com/ansible/latest/modules/bigip_profile_client_ssl_module.html
请注意,这都是在内部网络上运行的,无法从外部访问。
这是我遇到问题的模块:
# fullpath from facts: "/Common/wf.site.com.app/wf.site.com_client-ssl"
- name: Update Client SSL Profile for WaveForm
bigip_profile_client_ssl:
provider:
server: "{{ server }}"
server_port: "{{ server_port }}"
user: "{{ f5_ad_user }}"
password: "{{ f5_ad_password }}"
transport: rest
validate_certs: no # temporary ignore SSL validation
state: present # as opposed to absent
name: "wf.site.com_client-ssl"
parent: "/Common/clientssl"
cert_key_chain:
- cert: "/Common/default.crt" #test-cert-fullchain.crt"
key: "/Common/default.key" #test-key.key"
# chain:
delegate_to: localhost
运行后,我最终得到了 wf.site.com_client-ssl 的 2 个条目。一个是新的,包含正确的证书,但未配置为通过应用程序设置使用,正在使用的另一个条目保持不变。
Local Traffic›Profiles:SSL:Client 页面上的正确条目如下所示:
姓名 |应用 |家长简介 |分区/路径 wf.site.com_client-ssl | wf.site.com |客户sl |常见/wf.site.com.app
新条目看起来像这样:
姓名 |应用 |家长简介 |分区/路径 wf.site.com_client-ssl | (空白) |客户sl |常见
我在这里有什么选择?外壳命令?
【问题讨论】: