24.8. 송신 방화벽 및 네트워크 정책 규칙에 대한 로깅
클러스터 관리자는 클러스터에 대한 감사 로깅을 구성하고 하나 이상의 네임스페이스에 대해 로깅을 활성화할 수 있습니다. OpenShift Container Platform은 송신 방화벽 및 네트워크 정책 모두에 대한 감사 로그를 생성합니다.
감사 로깅은 OVN-Kubernetes 네트워크 플러그인 에서만 사용할 수 있습니다.
24.8.1. 감사 로깅 링크 복사링크가 클립보드에 복사되었습니다!
OVN-Kubernetes 네트워크 플러그인은 OVN(Open Virtual Network) ACL을 사용하여 송신 방화벽 및 네트워크 정책을 관리합니다. 감사 로깅은 ACL 이벤트를 허용 및 거부합니다.
syslog 서버 또는 UNIX 도메인 소켓과 같은 감사 로그의 대상을 구성할 수 있습니다.
네임스페이스 주석의 예
로깅 형식은 RFC5424에 정의된 대로 syslog와 호환됩니다. 예제 로그 항목은 다음과 유사합니다.
네트워크 정책의 ACL 거부 로그 항목 예
2021-06-13T19:33:11.590Z|00005|acl_log(ovn_pinctrl0)|INFO|name="verify-audit-logging_deny-all", verdict=drop, severity=alert: icmp,vlan_tci=0x0000,dl_src=0a:58:0a:80:02:39,dl_dst=0a:58:0a:80:02:37,nw_src=10.128.2.57,nw_dst=10.128.2.55,nw_tos=0,nw_ecn=0,nw_ttl=64,icmp_type=8,icmp_code=0
2021-06-13T19:33:11.590Z|00005|acl_log(ovn_pinctrl0)|INFO|name="verify-audit-logging_deny-all", verdict=drop, severity=alert: icmp,vlan_tci=0x0000,dl_src=0a:58:0a:80:02:39,dl_dst=0a:58:0a:80:02:37,nw_src=10.128.2.57,nw_dst=10.128.2.55,nw_tos=0,nw_ecn=0,nw_ttl=64,icmp_type=8,icmp_code=0
다음 표에서는 네임스페이스 주석 값에 대해 설명합니다.
주석 | 값 |
---|---|
|
|
24.8.2. 감사 구성 링크 복사링크가 클립보드에 복사되었습니다!
감사 로깅 구성은 OVN-Kubernetes 클러스터 네트워크 공급자 구성의 일부로 지정됩니다. 다음 YAML은 감사 로깅의 기본값을 보여줍니다.
감사 로깅 구성
다음 표에서는 감사 로깅을 위한 구성 필드를 설명합니다.
필드 | 유형 | 설명 |
---|---|---|
| integer | 노드당 1초마다 생성할 최대 메시지 수입니다. |
| integer |
감사 로그의 최대 크기(바이트)입니다. 기본값은 |
| string | 다음 추가 감사 로그 대상 중 하나입니다.
|
| string |
RFC5424에 정의된 |
24.8.3. 클러스터에 대한 송신 방화벽 및 네트워크 정책 감사 구성 링크 복사링크가 클립보드에 복사되었습니다!
클러스터 관리자는 클러스터에 대한 감사 로깅을 사용자 지정할 수 있습니다.
사전 요구 사항
-
OpenShift CLI(
oc
)를 설치합니다. -
cluster-admin
권한이 있는 사용자로 클러스터에 로그인합니다.
프로세스
감사 로깅 구성을 사용자 정의하려면 다음 명령을 입력합니다.
oc edit network.operator.openshift.io/cluster
$ oc edit network.operator.openshift.io/cluster
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 작은 정보또는 다음 YAML을 사용자 지정하고 적용하여 감사 로깅을 구성할 수 있습니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
네트워크 정책을 사용하여 네임스페이스를 생성하려면 다음 단계를 완료합니다.
검증을 위해 네임스페이스를 생성합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
namespace/verify-audit-logging created
namespace/verify-audit-logging created
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 감사 로깅을 활성화합니다.
oc annotate namespace verify-audit-logging k8s.ovn.org/acl-logging='{ "deny": "alert", "allow": "alert" }'
$ oc annotate namespace verify-audit-logging k8s.ovn.org/acl-logging='{ "deny": "alert", "allow": "alert" }'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow namespace/verify-audit-logging annotated
namespace/verify-audit-logging annotated
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 네임스페이스의 네트워크 정책을 생성합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
networkpolicy.networking.k8s.io/deny-all created networkpolicy.networking.k8s.io/allow-from-same-namespace created
networkpolicy.networking.k8s.io/deny-all created networkpolicy.networking.k8s.io/allow-from-same-namespace created
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
default
네임스페이스에서 소스 트래픽에 사용할 Pod를 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow verify-audit-logging
네임스페이스에 두 개의 Pod를 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
pod/client created pod/server created
pod/client created pod/server created
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 트래픽을 생성하고 네트워크 정책 감사 로그 항목을 생성하려면 다음 단계를 완료합니다.
verify-audit-logging
네임스페이스에서server
라는 Pod의 IP 주소를 가져옵니다.POD_IP=$(oc get pods server -n verify-audit-logging -o jsonpath='{.status.podIP}')
$ POD_IP=$(oc get pods server -n verify-audit-logging -o jsonpath='{.status.podIP}')
Copy to Clipboard Copied! Toggle word wrap Toggle overflow default
네임스페이스에 있는client
라는 Pod에서 이전 명령의 IP 주소를 ping하고 모든 패킷이 삭제되었는지 확인합니다.oc exec -it client -n default -- /bin/ping -c 2 $POD_IP
$ oc exec -it client -n default -- /bin/ping -c 2 $POD_IP
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
PING 10.128.2.55 (10.128.2.55) 56(84) bytes of data. --- 10.128.2.55 ping statistics --- 2 packets transmitted, 0 received, 100% packet loss, time 2041ms
PING 10.128.2.55 (10.128.2.55) 56(84) bytes of data. --- 10.128.2.55 ping statistics --- 2 packets transmitted, 0 received, 100% packet loss, time 2041ms
Copy to Clipboard Copied! Toggle word wrap Toggle overflow verify-audit-logging
네임스페이스의client
라는 Pod에서POD_IP
쉘 환경 변수에 저장된 IP 주소를 ping하고 모든 패킷이 허용되는지 확인합니다.oc exec -it client -n verify-audit-logging -- /bin/ping -c 2 $POD_IP
$ oc exec -it client -n verify-audit-logging -- /bin/ping -c 2 $POD_IP
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
네트워크 정책 감사 로그의 최신 항목을 표시합니다.
for pod in $(oc get pods -n openshift-ovn-kubernetes -l app=ovnkube-node --no-headers=true | awk '{ print $1 }') ; do oc exec -it $pod -n openshift-ovn-kubernetes -- tail -4 /var/log/ovn/acl-audit-log.log done
$ for pod in $(oc get pods -n openshift-ovn-kubernetes -l app=ovnkube-node --no-headers=true | awk '{ print $1 }') ; do oc exec -it $pod -n openshift-ovn-kubernetes -- tail -4 /var/log/ovn/acl-audit-log.log done
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
24.8.4. 네임스페이스에 대한 송신 방화벽 및 네트워크 정책 감사 로깅 활성화 링크 복사링크가 클립보드에 복사되었습니다!
클러스터 관리자는 네임스페이스에 대한 감사 로깅을 활성화할 수 있습니다.
사전 요구 사항
-
OpenShift CLI(
oc
)를 설치합니다. -
cluster-admin
권한이 있는 사용자로 클러스터에 로그인합니다.
프로세스
네임스페이스에 대한 감사 로깅을 활성화하려면 다음 명령을 입력합니다.
oc annotate namespace <namespace> \ k8s.ovn.org/acl-logging='{ "deny": "alert", "allow": "notice" }'
$ oc annotate namespace <namespace> \ k8s.ovn.org/acl-logging='{ "deny": "alert", "allow": "notice" }'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음과 같습니다.
<namespace>
- 네임스페이스의 이름을 지정합니다.
작은 정보다음 YAML을 적용하여 감사 로깅을 활성화할 수 있습니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
namespace/verify-audit-logging annotated
namespace/verify-audit-logging annotated
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
감사 로그의 최신 항목을 표시합니다.
for pod in $(oc get pods -n openshift-ovn-kubernetes -l app=ovnkube-node --no-headers=true | awk '{ print $1 }') ; do oc exec -it $pod -n openshift-ovn-kubernetes -- tail -4 /var/log/ovn/acl-audit-log.log done
$ for pod in $(oc get pods -n openshift-ovn-kubernetes -l app=ovnkube-node --no-headers=true | awk '{ print $1 }') ; do oc exec -it $pod -n openshift-ovn-kubernetes -- tail -4 /var/log/ovn/acl-audit-log.log done
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
2021-06-13T19:33:11.590Z|00005|acl_log(ovn_pinctrl0)|INFO|name="verify-audit-logging_deny-all", verdict=drop, severity=alert: icmp,vlan_tci=0x0000,dl_src=0a:58:0a:80:02:39,dl_dst=0a:58:0a:80:02:37,nw_src=10.128.2.57,nw_dst=10.128.2.55,nw_tos=0,nw_ecn=0,nw_ttl=64,icmp_type=8,icmp_code=0
2021-06-13T19:33:11.590Z|00005|acl_log(ovn_pinctrl0)|INFO|name="verify-audit-logging_deny-all", verdict=drop, severity=alert: icmp,vlan_tci=0x0000,dl_src=0a:58:0a:80:02:39,dl_dst=0a:58:0a:80:02:37,nw_src=10.128.2.57,nw_dst=10.128.2.55,nw_tos=0,nw_ecn=0,nw_ttl=64,icmp_type=8,icmp_code=0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
24.8.5. 네임스페이스에 대한 송신 방화벽 및 네트워크 정책 감사 로깅 비활성화 링크 복사링크가 클립보드에 복사되었습니다!
클러스터 관리자는 네임스페이스에 대한 감사 로깅을 비활성화할 수 있습니다.
사전 요구 사항
-
OpenShift CLI(
oc
)를 설치합니다. -
cluster-admin
권한이 있는 사용자로 클러스터에 로그인합니다.
프로세스
네임스페이스에 대한 감사 로깅을 비활성화하려면 다음 명령을 입력합니다.
oc annotate --overwrite namespace <namespace> k8s.ovn.org/acl-logging-
$ oc annotate --overwrite namespace <namespace> k8s.ovn.org/acl-logging-
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음과 같습니다.
<namespace>
- 네임스페이스의 이름을 지정합니다.
작은 정보다음 YAML을 적용하여 감사 로깅을 비활성화할 수 있습니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
namespace/verify-audit-logging annotated
namespace/verify-audit-logging annotated
Copy to Clipboard Copied! Toggle word wrap Toggle overflow