NSX는 환경에서 다중 테넌시를 설정할 때 정책 생성을 지원합니다.
프로젝트에 대한 분산 방화벽
긴급, 인프라, 환경 및 애플리케이션 DFW 범주는 조직 내의 프로젝트에 대해 지원됩니다. /infra
정책의 우선순위가 가장 높고 프로젝트 정책이 그다음으로 높습니다. /infra
공간의 DFW 규칙은 프로젝트로 확장될 수 있습니다.
/infra
공간에서 생성된 규칙은 기본적으로 환경의 모든 워크로드에 적용됩니다.- 규칙의 범위를 정의하려면 NSX UI에서 적용 대상에 대한 적합한 옵션을 선택합니다. 예를 들어 적용 대상 옵션을 사용하여 규칙을 특정 워크로드로 제한할 수 있습니다.
/infra
공간에서 생성된 그룹 또는 시스템에서 생성되고 프로젝트의 모든 VM을 포함하는 프로젝트 기본 그룹(ORG-default-PROJECT-<project-name>
)에 대해 적용 대상 옵션을 사용할 수도 있습니다.
- 다음은
/infra
공간에서 생성된 그룹에 적용됩니다.- 동적 멤버 자격은 프로젝트의 VM을 포함하여 시스템의 모든 VM을 평가합니다. 예를 들어 그룹 멤버 자격에 web 태그가 지정된 모든 VM이 포함된 경우 그룹에는 프로젝트 내부와 외부 모두에서 web 태그가 있는 VM이 포함됩니다.
- 고정 멤버 자격의 경우 Vm(메모리
ORG-default-PROJECT-<project-name>
)을 사용하여 프로젝트에 연결된 워크로드를 추가할 수 있습니다. 프로젝트에서 생성된 다른 리소스는/infra
공간의 그룹에서 지원되지 않습니다.
)을 명시적으로 참조하거나 프로젝트 기본 그룹(
기본 규칙
프로젝트 생성 시 기본 보안 정책은 애플리케이션 범주의 정책 목록 맨 아래에 있는 프로젝트 내에 생성됩니다. 기본 정책은 다른 규칙이 발생하지 않는 경우 프로젝트 내의 VM에 대한 동작을 정의합니다.
기본 정책에는 다음 규칙이 포함됩니다.
- DHCP에 대한 통신을 허용하는 규칙.
(src:ANY dst:ANY services:DHCP Client|DHCP Server Action Allow)
- 프로젝트 내 워크로드 간 통신을 허용하는 규칙.
(src:Project default groups (ORG-default-PROJECT-<project-name> dst:Project default groups (ORG-default-PROJECT-<project-name> services:ANY Action Allow)
- 다른 모든 통신을 거부하는 규칙.
(src:ANY dst:ANY services:ANY Action Deny)
기본 정책은 프로젝트 내의 VM이 DHCP 서버를 포함하여 동일한 프로젝트(및 DHCP)의 다른 VM에만 연결할 수 있도록 합니다. 프로젝트 외부 또는 다른 시스템 생성 IP 주소와의 VM과의 통신은 차단되며 기본 보안 정책에서 규칙을 추가하거나 규칙을 수정해야만 허용됩니다.
프로젝트에 대한 분산 방화벽 추가
프로젝트 정책의 경우 범위가 [임의]로 설정되면 정책이 해당 프로젝트로 제한됩니다. 프로젝트 규칙은 프로젝트의 그룹 및 프로젝트와 공유된 그룹에만 액세스할 수 있습니다.
PATCH /policy/api/v1/orgs/default/projects/<project-id>/infra/domains/default/security-policies/<security-policy-id>
샘플 요청:
PATCH https://{{nsx-manager-ip}}/policy/api/v1/orgs/default/projects/project-1/infra/domains/default/security-policies/web-db본문:
{ "resource_type": "SecurityPolicy", "description": "web-db", "display_name": "web-db", "rules": [ { "resource_type": "Rule", "description": "web-db-rule-1", "display_name": "web-db-rule-1", "sequence_number": 1, "source_groups": [ "/orgs/default/projects/project-1/infra/domains/default/groups/group-1" ], "destination_groups": [ "/orgs/default/projects/project-1/infra/domains/default/groups/group-1" ], "services" : ["/infra/services/HTTP"], "action" : "ALLOW", "_revision": 0 } ], "sequence_number": 1, "_revision": 0 }