15.3. 使用带有 TLS 的 logging RHEL 系统角色
传输层安全性(TLS)是一种加密协议,旨在允许通过计算机网络的安全通信。
您可以使用 logging
RHEL 系统角色配置日志消息的安全传输,其中一个或多个客户端可以从 systemd-journal
服务获取日志,并使用 TLS 将它们传送到远程服务器。
当通过不太可信的或公共网络(如互联网)发送敏感数据时,通常使用远程日志记录解决方案中的 TLS 来传输日志。另外,通过在 TLS 中使用证书,您可以确保客户端将日志转发到正确的可信服务器。这可以防止诸如"中间人"的攻击。
15.3.1. 配置带有 TLS 的客户端日志 复制链接链接已复制到粘贴板!
您可以使用 logging
RHEL 系统角色在 RHEL 客户端上配置日志,并使用 TLS 加密将日志传送到远程日志系统。
此流程创建一个私钥和证书。接下来,它对 Ansible 清单中的 clients 组中的所有主机配置 TLS。TLS 对信息的传输进行加密,确保日志在网络安全传输。
您不必在 playbook 中调用 certificate
RHEL 系统角色来创建证书。当设置了 logging_certificates
变量时,logging
RHEL 系统角色会自动调用它。
要让 CA 能够为创建的证书签名,受管节点必须在 IdM 域中注册。
先决条件
- 您已准备好控制节点和受管节点。
- 您以可在受管主机上运行 playbook 的用户身份登录到控制节点。
-
您用于连接到受管节点的帐户对它们具有
sudo
权限。 - 受管节点已在 IdM 域中注册。
流程
创建一个包含以下内容的 playbook 文件,如
~/playbook.yml
:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例 playbook 中指定的设置包括如下:
logging_certificates
-
此参数的值被传到
certificate
RHEL 系统角色中的certificate_requests
,用来创建私钥和证书。 logging_pki_files
使用这个参数,您可以配置日志记录用来查找用于 TLS 的 CA、证书和密钥文件的路径和其他设置,使用以下一个或多个子参数指定:
ca_cert
、ca_cert_src
、cert
、cert_src
、private_key
、private_key_src
和tls
。注意如果您使用
logging_certificates
在受管节点上创建文件,请不要使用ca_cert_src
,cert_src
和private_key_src
,它们用于复制不是由logging_certificates
创建的文件。ca_cert
-
表示受管节点上 CA 证书文件的路径。默认路径为
/etc/pki/tls/certs/ca.pem
,文件名由用户设置。 cert
-
表示受管节点上证书文件的路径。默认路径为
/etc/pki/tls/certs/server-cert.pem
,文件名由用户设置。 private_key
-
表示受管节点上私钥文件的路径。默认路径为
/etc/pki/tls/private/server-key.pem
,文件名由用户设置。 ca_cert_src
-
代表控制节点上 CA 证书文件的路径,该路径将复制到目标主机上
ca_cert
指定的位置。如果使用logging_certificates
,请不要使用它。 cert_src
-
表示控制节点上证书文件的路径,其将被复制到目标主机上
cert
指定的位置。如果使用logging_certificates
,请不要使用它。 private_key_src
-
表示控制节点上私钥文件的路径,其将被复制到目标主机上
private_key
指定的位置。如果使用logging_certificates
,请不要使用它。 tls
-
将此参数设置为
true
可确保通过网络安全地传输日志。如果您不想要安全封装器,您可以设置tls: false
。
有关 playbook 中使用的所有变量的详情,请查看控制节点上的
/usr/share/ansible/roles/rhel-system-roles.logging/README.md
文件。验证 playbook 语法:
ansible-playbook --syntax-check ~/playbook.yml
$ ansible-playbook --syntax-check ~/playbook.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 请注意,这个命令只验证语法,不能防止错误的、但有效的配置。
运行 playbook:
ansible-playbook ~/playbook.yml
$ ansible-playbook ~/playbook.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
其他资源
-
/usr/share/ansible/roles/rhel-system-roles.logging/README.md
文件 -
/usr/share/doc/rhel-system-roles/logging/
目录 -
/usr/share/ansible/roles/rhel-system-roles.certificate/README.md
文件 -
/usr/share/doc/rhel-system-roles/certificate/
目录 - 使用 RHEL 系统角色请求证书。
-
rsyslog.conf (5)
和syslog (3)
手册页
15.3.2. 配置带有 TLS 的服务器日志 复制链接链接已复制到粘贴板!
您可以使用 logging
RHEL 系统角色在 RHEL 服务器上配置日志,并将它们设置为使用 TLS 加密从远程日志系统接收日志。
此流程创建一个私钥和证书。接下来,它对 Ansible 清单中 server 组中的所有主机配置 TLS。
您不必在 playbook 中调用 certificate
RHEL 系统角色来创建证书。logging
RHEL 系统角色会自动调用它。
要让 CA 能够为创建的证书签名,受管节点必须在 IdM 域中注册。
先决条件
- 您已准备好控制节点和受管节点。
- 您以可在受管主机上运行 playbook 的用户身份登录到控制节点。
-
您用于连接到受管节点的帐户对它们具有
sudo
权限。 - 受管节点已在 IdM 域中注册。
流程
创建一个包含以下内容的 playbook 文件,如
~/playbook.yml
:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例 playbook 中指定的设置包括如下:
logging_certificates
-
此参数的值被传到
certificate
RHEL 系统角色中的certificate_requests
,用来创建私钥和证书。 logging_pki_files
使用这个参数,您可以配置日志记录用来查找用于 TLS 的 CA、证书和密钥文件的路径和其他设置,使用以下一个或多个子参数指定:
ca_cert
、ca_cert_src
、cert
、cert_src
、private_key
、private_key_src
和tls
。注意如果您使用
logging_certificates
在受管节点上创建文件,请不要使用ca_cert_src
,cert_src
和private_key_src
,它们用于复制不是由logging_certificates
创建的文件。ca_cert
-
表示受管节点上 CA 证书文件的路径。默认路径为
/etc/pki/tls/certs/ca.pem
,文件名由用户设置。 cert
-
表示受管节点上证书文件的路径。默认路径为
/etc/pki/tls/certs/server-cert.pem
,文件名由用户设置。 private_key
-
表示受管节点上私钥文件的路径。默认路径为
/etc/pki/tls/private/server-key.pem
,文件名由用户设置。 ca_cert_src
-
代表控制节点上 CA 证书文件的路径,该路径将复制到目标主机上
ca_cert
指定的位置。如果使用logging_certificates
,请不要使用它。 cert_src
-
表示控制节点上证书文件的路径,其将被复制到目标主机上
cert
指定的位置。如果使用logging_certificates
,请不要使用它。 private_key_src
-
表示控制节点上私钥文件的路径,其将被复制到目标主机上
private_key
指定的位置。如果使用logging_certificates
,请不要使用它。 tls
-
将此参数设置为
true
可确保通过网络安全地传输日志。如果您不想要安全封装器,您可以设置tls: false
。
有关 playbook 中使用的所有变量的详情,请查看控制节点上的
/usr/share/ansible/roles/rhel-system-roles.logging/README.md
文件。验证 playbook 语法:
ansible-playbook --syntax-check ~/playbook.yml
$ ansible-playbook --syntax-check ~/playbook.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 请注意,这个命令只验证语法,不能防止错误的、但有效的配置。
运行 playbook:
ansible-playbook ~/playbook.yml
$ ansible-playbook ~/playbook.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow