11.6. TLS를 사용하여 로깅 시스템 역할 사용
TLS(Transport Layer Security)는 컴퓨터 네트워크를 통해 안전하게 통신하도록 설계된 암호화 프로토콜입니다.
관리자는 로깅
RHEL 시스템 역할을 사용하여 Red Hat Ansible Automation Platform을 사용하여 로그의 보안 전송을 구성할 수 있습니다.
11.6.1. TLS로 클라이언트 로깅 구성
로깅
시스템 역할을 사용하여 로컬 시스템에 로깅하고 Ansible 플레이북을 실행하여 TLS를 사용하여 원격 로깅 시스템으로 로그를 전송할 수 있는 RHEL 시스템에 로깅을 구성할 수 있습니다.
이 절차에서는 Ansible 인벤토리의 clients 그룹에 있는 모든 호스트에 TLS를 구성합니다. TLS 프로토콜은 네트워크를 통해 로그를 안전하게 전송하기 위해 메시지 전송을 암호화합니다.
사전 요구 사항
- TLS를 구성할 관리 노드에서 플레이북을 실행할 수 있는 권한이 있습니다.
- 관리형 노드는 제어 노드의 인벤토리 파일에 나열됩니다.
-
ansible
및rhel-system-roles
패키지는 제어 노드에 설치됩니다.
절차
다음 콘텐츠를 사용하여
playbook.yml
파일을 생성합니다.--- - name: Deploying files input and forwards output with certs hosts: clients roles: - rhel-system-roles.logging vars: logging_pki_files: - ca_cert_src: /local/path/to/ca_cert.pem cert_src: /local/path/to/cert.pem private_key_src: /local/path/to/key.pem logging_inputs: - name: input_name type: files input_log_path: /var/log/containers/*.log logging_outputs: - name: output_name type: forwards target: your_target_host tcp_port: 514 tls: true pki_authmode: x509/name permitted_server: 'server.example.com' logging_flows: - name: flow_name inputs: [input_name] outputs: [output_name]
플레이북은 다음 매개 변수를 사용합니다.
logging_pki_files
-
이 매개변수를 사용하면 TLS를 구성할 수 있으며
ca_cert_src
,cert_src
,private_key_src
매개변수를 전달해야 합니다. ca_cert
-
CA 인증서의 경로를 나타냅니다. 기본 경로는
/etc/pki/tls/certs/ca.pem
이며 파일 이름은 사용자가 설정합니다. cert
-
인증서 경로를 나타냅니다. 기본 경로는
/etc/pki/tls/certs/server-cert.pem
이며 파일 이름은 사용자가 설정합니다. private_key
-
개인 키의 경로를 나타냅니다.Represents the path to private key. 기본 경로는
/etc/pki/tls/private/server-key.pem
이며 파일 이름은 사용자가 설정합니다. ca_cert_src
-
대상 호스트에 복사되는 로컬 CA 인증서 파일 경로를 나타냅니다.
ca_cert
를 지정하면 해당 위치에 복사됩니다. cert_src
-
대상 호스트에 복사되는 로컬 인증서 파일 경로를 나타냅니다.
cert
가 지정되면 해당 위치에 복사됩니다. private_key_src
-
대상 호스트에 복사되는 로컬 키 파일 경로를 나타냅니다.
private_key
를 지정하면 위치에 복사됩니다. tls
-
이 매개변수를 사용하면 네트워크를 통해 안전한 로그를 전송할 수 있습니다. 보안 래퍼를 원하지 않는 경우
tls: true
를 설정할 수 있습니다.
플레이북 구문을 확인합니다.
# ansible-playbook --syntax-check playbook.yml
인벤토리 파일에서 플레이북을 실행합니다.
# ansible-playbook -i inventory_file playbook.yml
11.6.2. TLS를 사용하여 서버 로깅 구성
로깅
시스템 역할을 사용하여 RHEL 시스템에 서버로 로깅을 구성하고 Ansible 플레이북을 실행하여 TLS를 사용하여 원격 로깅 시스템에서 로그를 수신할 수 있습니다.
이 절차에서는 Ansible 인벤토리의 서버 그룹에 있는 모든 호스트에 TLS를 구성합니다.
사전 요구 사항
- TLS를 구성할 관리 노드에서 플레이북을 실행할 수 있는 권한이 있습니다.
- 관리형 노드는 제어 노드의 인벤토리 파일에 나열됩니다.
-
ansible
및rhel-system-roles
패키지는 제어 노드에 설치됩니다.
절차
다음 콘텐츠를 사용하여
playbook.yml
파일을 생성합니다.--- - name: Deploying remote input and remote_files output with certs hosts: server roles: - rhel-system-roles.logging vars: logging_pki_files: - ca_cert_src: /local/path/to/ca_cert.pem cert_src: /local/path/to/cert.pem private_key_src: /local/path/to/key.pem logging_inputs: - name: input_name type: remote tcp_ports: 514 tls: true permitted_clients: ['clients.example.com'] logging_outputs: - name: output_name type: remote_files remote_log_path: /var/log/remote/%FROMHOST%/%PROGRAMNAME:::secpath-replace%.log async_writing: true client_count: 20 io_buffer_size: 8192 logging_flows: - name: flow_name inputs: [input_name] outputs: [output_name]
플레이북은 다음 매개 변수를 사용합니다.
logging_pki_files
-
이 매개변수를 사용하면 TLS를 구성할 수 있으며
ca_cert_src
,cert_src
,private_key_src
매개변수를 전달해야 합니다. ca_cert
-
CA 인증서의 경로를 나타냅니다. 기본 경로는
/etc/pki/tls/certs/ca.pem
이며 파일 이름은 사용자가 설정합니다. cert
-
인증서 경로를 나타냅니다. 기본 경로는
/etc/pki/tls/certs/server-cert.pem
이며 파일 이름은 사용자가 설정합니다. private_key
-
개인 키의 경로를 나타냅니다.Represents the path to private key. 기본 경로는
/etc/pki/tls/private/server-key.pem
이며 파일 이름은 사용자가 설정합니다. ca_cert_src
-
대상 호스트에 복사되는 로컬 CA 인증서 파일 경로를 나타냅니다.
ca_cert
를 지정하면 해당 위치에 복사됩니다. cert_src
-
대상 호스트에 복사되는 로컬 인증서 파일 경로를 나타냅니다.
cert
가 지정되면 해당 위치에 복사됩니다. private_key_src
-
대상 호스트에 복사되는 로컬 키 파일 경로를 나타냅니다.
private_key
를 지정하면 위치에 복사됩니다. tls
-
이 매개변수를 사용하면 네트워크를 통해 안전한 로그를 전송할 수 있습니다. 보안 래퍼를 원하지 않는 경우
tls: true
를 설정할 수 있습니다.
플레이북 구문을 확인합니다.
# ansible-playbook --syntax-check playbook.yml
인벤토리 파일에서 플레이북을 실행합니다.
# ansible-playbook -i inventory_file playbook.yml