首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用ansible的maven_artifact进行证书验证

使用ansible的maven_artifact进行证书验证
EN

Stack Overflow用户
提问于 2019-02-28 09:07:23
回答 1查看 2K关注 0票数 1

我试图从使用自签名证书的Nexus中提取一个jar。

代码语言:javascript
复制
ansible -m maven_artifact -a "repository_url=https://<nexus_host>/repository/maven-snampshots group_id=<group_id> artifact_id=<artifact_id> dest=/tmp/jars validate_certs=yes username=admin password=admin123" -i inventory.ini env_dev

我得到了以下错误:

"msg":“无法验证XXXXXX的SSL证书。确保您的托管系统安装了有效的CA证书。如果服务url的网站使用SNI,您需要托管机器上的python >= 2.7.9 (所使用的python可执行文件(/usr/bin/ python )是版本: 2.6 (r26:66714,2011年5月6日,15:10:21) [GCC 4.3.5-4_3-分支版本152973]),或者您可以安装urllib3pyOpenSSLndg-httpsclientpyasn1 python模块在python>= 2.6中执行SNI验证。如果不需要确认服务器标识,则可以使用validate_certs=False,但这是不安全的,不建议使用。为该平台检查的路径: /etc/ssl/certs、/etc/pki/ca信任/提取/pem、/etc/pki/tls/certs、/usr/share/ca-证书/acacert.org、/etc/ansible。例外消息是: Errno 1 _ssl.c:482:_ssl.c:482:14090086:SSL_ssl.c:482验证失败。

Chrome允许我从Nexus服务器下载证书(.cer)。但我不知道该把它安装在哪里。以及怎么做。

代码语言:javascript
复制
Nexus : OSS 3.14.0-04
Server Ansible : CentOS Linux release 7.6.1810
Client Ansible : SUSE Linux Enterprise Server 11 (x86_64)
EN

回答 1

Stack Overflow用户

发布于 2019-04-08 16:57:39

获得证书的方法是使用openssl并将其指向所讨论的站点,将其下载为.pem,然后将该.pem安装到进行调用或被调用的服务器上。

获得证书:

代码语言:javascript
复制
openssl s_client -connect  site.com:636 </dev/null 2>/dev/null  | openssl x509 -outform PEM > site.pem

将证书导入CAcerts:

代码语言:javascript
复制
sudo keytool -importcert -noprompt -alias site-`date "+%Y%m%d%H%M%S"` -file ./site.pem -keystore /usr/java/latest/lib/security/cacerts -storepass changeit
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54921924

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档