如何为Ansible自动化平台Git项目同步配置SSL证书认证
配置Ansible Automation Platform通过SSL证书/密钥访问Git仓库
方法1:给AAP运行用户配置gitconfig
AAP的项目同步由awx用户执行,直接给这个用户配置Git的SSL参数:
- 登录AAP控制器节点,切换到
awx用户:
sudo su - awx
- 编辑
~/.gitconfig,添加对应Git服务器的配置:
[http "https://my.git.server/"] sslCert = /var/lib/awx/.git/awx-git.crt sslKey = /var/lib/awx/.git/awx-git.key
把你的证书和密钥文件放到
/var/lib/awx/.git/目录,给文件设600权限,确保awx用户能读取。
- 退出
awx用户,重启AAP服务:
sudo systemctl restart awx.service
方法2:在项目里添加环境变量
不想修改全局配置的话,直接在项目设置里指定SSL路径:
- 打开AAP Web界面,编辑目标项目。
- 找到「额外环境变量」字段,填入:
{ "GIT_SSL_CERT": "/var/lib/awx/.git/awx-git.crt", "GIT_SSL_KEY": "/var/lib/awx/.git/awx-git.key" }
同样要保证
awx用户能读取这两个文件。
方法3:用AAP凭据存储证书(更安全)
把证书和密钥存成AAP的文件凭据,避免明文路径暴露:
- 创建两个「文件」类型的凭据:
- 上传证书文件,命名为
Git SSL Cert - 上传密钥文件,命名为
Git SSL Key
- 上传证书文件,命名为
- 编辑项目,把这两个凭据加到「凭据」列表里。
- 在「额外环境变量」里引用凭据的挂载路径:
{ "GIT_SSL_CERT": "{{ Git SSL Cert.path }}", "GIT_SSL_KEY": "{{ Git SSL Key.path }}" }
验证配置
手动触发项目的「同步」操作,查看日志是否成功。如果失败,检查以下几点:
- 证书/密钥的权限是不是
600,awx用户有没有读取权限 - Git服务器的CA证书是否在AAP控制器的信任存储里(自签名证书的话,要把CA证书放到
/etc/pki/ca-trust/source/anchors/,然后执行update-ca-trust) - 路径有没有写错,环境变量或gitconfig里的地址要和实际文件一致
内容的提问来源于stack exchange,提问作者jeremywat
相关产品推荐
相关产品推荐

