金鱼哥RHCA回忆录:DO447Ansible Tower的维护和常规管理--配置TLS/SSL

举报
金鱼哥 发表于 2022/07/11 11:06:33 2022/07/11
【摘要】 第十四章 Ansible Tower的维护和常规管理--配置TLS/SSL

🎹 个人简介:大家好,我是 金鱼哥,CSDN运维领域新星创作者,华为云·云享专家,阿里云社区·专家博主
📚个人资质:CCNA、HCNP、CSNA(网络分析师),软考初级、中级网络工程师、RHCSA、RHCE、RHCA、RHCI、ITIL😜
💬格言:努力不一定成功,但要想成功就必须努力🔥

🎈支持我:可点赞👍、可收藏⭐️、可留言📝


📜14.2.1 Nginx web服务器在ansible Tower上

Ansible Tower web Ul是由运行在Tower服务器上的Nginx web服务器提供的。安装后,Ansible Tower会创建一个自签名的TLS证书和匹配的私钥文件,Nginx使用这个私钥文件进行HTTPS通信。

Nginx的主要配置文件在/etc/nginx目录下,其中最重要的是/etc/nginx/nginx.conf。Nginx web服务器托管Ansible Tower web Ul的访问日志位于/var/log/nginx/access。日志和错误日志在/var/log/ nginx/error目录下。这两个日志文件都是定期循环的,在/var/log目录中可以找到这些文件的旧版本的gzip压缩档案。

一般情况下,不需要修改/etc/nginx/nginx.conf配置文件。但是,当服务器的默认HTTPS配置需要调整时,更改可能会很有用。


📜14.2.2 默认的TLS配置

管理员可能需要知道如何找到Ansible Tower的TLS服务上的TLS配置,这有两个原因。第一个是定位TLS证书和私钥,以便它们可以替换为由访问Ansible Tower的浏览器所信任的证书颁发机构签署的版本。第二种情况是,如果需要对TLS配置进行定制,特别是在发现密码算法中的漏洞时去除密码。

Nginx web服务器的TLS配置在/etc/nginx/nginx.conf配置文件中定义。服务器块侦听端口443上的SSL连接,它包含相关的配置指令。特别是,这表明TLS证书是/ etc/tower/tower.cert和匹配的私钥是/etc/tower/tower.key:
在这里插入图片描述


📜14.2.3 替换TLS证书和密钥

大多数组织都希望将Ansible Tower自签名证书替换为由受组织web浏览器信任的TLS证书颁发机构(CA)签名的证书。这可能是公共CA,也可能是公司内部CA。

在每种情况下,您都需要为服务器获取由CA正确签名的TLS证书,以及匹配的私钥,都是PEM格式的。使用它们替换现有的自签名证书和密钥:

  • 将ca签名的TLS证书PEM格式保存到 /etc/tower/tower.cert。

  • 保存PEM格式的私钥到 /etc/tower/tower.key。

  • 这两个文件必须只有awx用户(Ansible Tower用户)可读可写,并且必须属于awx组

[root@tower tower]# ls -l /etc/tower/tower.*
-rw-------. 1 awx awx 1281 Mar 31 23:32 tower.cert
-rw-------. 1 awx awx 1704 Mar 31 23:32 tower.key
  • 使用ansible-tower-service restart命令重新启动Ansible Tower。

  • 从一个信任用于接收Ansible Tower服务器证书的CA的浏览器测试连接。查看浏览器提供的证书详细信息,以及浏览器是否认为连接是安全的。如何做到这一点的细节取决于你使用的浏览器。


**环境提示:**在实验环境中,您将使用classroom的FreelPA服务器作为CA。这允许您使用ipa-getcert请求TLS证书,该证书将在过期时由certmonger守护进程自动更新。

然而,Ansible Tower 3.3.1用SELinux类型etc_t标记/etc/tower中的所有文件。这两个tower.cert 和tower.key需要标记为cert_t,以便由FreelPA工具正确管理文件。幸运的是,Nginx可以正确读取标记为cert_t的TLS证书。

要持久地在这两个文件上设置SELinux类型,您需要确保semanage命令可用。执行semanage fcontext -a -t cert_t "/etc/tower/tower.(.*)"命令,设置系统策略中这些文件的默认上下文。最后,运行restorecon -FvvR /etc/tower/,根据当前的策略设置纠正该目录下的SELinux上下文。


📜14.2.4 课本练习(第520页)

[student@workstation ~]$ lab admin-cert start

📑1.在工作站上打开终端,以root身份使用ssh登录Ansible Tower服务器。

接下来的操作使用提供的适合于服务器主机名的证书替换Ansible Tower TLS/SSL证书。

[student@workstation ~]$ ssh root@tower

📑2. 向SELinux策略添加一个新规则,将/etc/tower/tower.cert 和 /etc/tower/tower.key上的类型设置为cert_t。

在这些文件上运行restorecon以确保在这些文件上设置了SELinux类型。在接下来的步骤中,当ipa-getcert请求时,certmonger需要将这些文件写入这些文件。

[root@tower ~]# semanage fcontext -a -t cert_t "/etc/tower(/.*)?"
[root@tower ~]# restorecon -FvvR /etc/tower/

📑3. 备份然后删除现有的/etc/tower/tower.cert 和 /etc/tower/tower.key。

[root@tower ~]# cp /etc/tower/tower.* /root
[root@tower ~]# rm /etc/tower/tower.*
rm: remove regular file ‘/etc/tower/tower.cert’? y
rm: remove regular file ‘/etc/tower/tower.key’? y

📑4. 使用ipa-getcert创建证书。

[root@tower ~]# ipa-getcert request -f /etc/tower/tower.cert -k /etc/tower/tower.key

如果不熟悉FreelPA,不要太担心为什么这个工作。这一步的重要部分是您有一个ca签名的TLS证书和Tower密钥。且已经被复制到您的Ansible Tower服务器上的正确位置


📑5. 重启并退出。

[root@tower ~]# ansible-tower-service restart
[root@tower ~]# exit

📑6. 浏览器重新打开。

(如果SSL证书是由受信任的CA签名的,就不会收到任何SSL证书警告的原因。)

要查看新的证书详细信息,请单击浏览器地址栏中的挂锁符号。新的TLS/SSL证书包含tower.lab.example.com主机名和LAB.EXAMPLE.COM组织。


📑7. 清空实验。

[student@workstation ~]$ lab admin-cert finish

💡总结

RHCA认证需要经历5门的学习与考试,还是需要花不少时间去学习与备考的,好好加油,可以噶🤪。

以上就是【金鱼哥】对 第十四章 Ansible Tower的维护和常规管理–配置TLS/SSL 的简述和讲解。希望能对看到此文章的小伙伴有所帮助。

💾红帽认证专栏系列:
RHCSA专栏:戏说 RHCSA 认证
RHCE专栏:戏说 RHCE 认证
此文章收录在RHCA专栏:RHCA 回忆录

如果这篇【文章】有帮助到你,希望可以给【金鱼哥】点个赞👍,创作不易,相比官方的陈述,我更喜欢用【通俗易懂】的文笔去讲解每一个知识点。

如果有对【运维技术】感兴趣,也欢迎关注❤️❤️❤️ 【金鱼哥】❤️❤️❤️,我将会给你带来巨大的【收获与惊喜】💕💕!

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。