ESXi에는 기본적으로 활성화되는 방화벽이 포함됩니다. 설치 시 ESXi 방화벽은 호스트 보안 프로파일에서 활성화된 서비스의 트래픽을 제외하고 들어오고 나가는 트래픽을 차단하도록 구성됩니다. vSphere Client, CLI 및 API를 사용하여 방화벽을 관리합니다.
방화벽에서 포트를 열 때 ESXi 호스트에서 실행되는 서비스에 대한 제한되지 않은 액세스로 인해 외부 공격 및 인증되지 않은 액세스에 호스트가 노출될 수 있는지 고려하십시오. 인증된 네트워크에서만 액세스가 가능하도록 ESXi 방화벽을 구성하여 위험을 줄이십시오.
ESXi 방화벽 포트는 다음과 같이 관리할 수 있습니다.
- vSphere Client의 각 호스트에 대해 을 사용합니다. ESXi 방화벽 설정 관리의 내용을 참조하십시오.
- 명령줄 또는 스크립트에서 ESXCLI 명령을 사용합니다. ESXCLI 방화벽 명령을 사용하여 ESXi 동작 구성의 내용을 참조하십시오.
- 열려는 포트가 보안 프로파일에 포함되어 있지 않은 경우 사용자 지정 VIB를 사용합니다.
사용자 지정 VIB를 설치하려면 ESXi 호스트의 허용 수준을 CommunitySupported로 변경해야 합니다.
참고: CommunitySupported VIB가 설치된 ESXi 호스트의 문제를 조사하기 위해 VMware 기술 지원을 이용하는 경우 VMware 지원팀이 VIB를 제거하도록 요청할 수 있습니다. 이러한 요청은 해당 VIB가 조사 중인 문제와 관련이 있는지 확인하기 위한 문제 해결 단계입니다.
NFS Client 규칙 집합(nfsClient)의 동작은 다른 규칙 집합의 동작과 다릅니다. NFS Client 규칙 집합이 사용되는 경우 허용되는 IP 주소 목록의 대상 호스트에 대해 모든 아웃바운드 TCP 포트가 열립니다. 자세한 내용은 NFS 클라이언트 방화벽 동작의 내용을 참조하십시오.
ESXi 방화벽 설정 관리
vSphere Client 또는 명령줄에서 서비스나 관리 에이전트에 대해 들어오는 방화벽 연결과 나가는 방화벽 연결을 구성할 수 있습니다.
이 작업은 vSphere Client를 사용하여 ESXi 방화벽 설정을 구성하는 방법에 대해 설명합니다. ESXi Shell 또는 ESXCLI 명령을 사용하여 명령줄에서 ESXi를 구성하여 방화벽 구성을 자동화할 수 있습니다. ESXCLI를 사용하여 방화벽 및 방화벽 규칙을 조작하는 예는 ESXCLI 방화벽 명령을 사용하여 ESXi 동작 구성 항목을 참조하십시오.
프로시저
ESXi 호스트에 대해 허용되는 IP 주소 추가
기본적으로 각 서비스의 방화벽은 모든 IP 주소에 대한 액세스를 허용합니다. 트래픽을 제한하려면 관리 서브넷에서만 트래픽을 허용하도록 각 서비스를 변경합니다. 환경에서 사용하지 않는 경우 일부 서비스를 선택 취소할 수도 있습니다.
서비스에 대해 허용된 IP 목록을 업데이트하려면 vSphere Client, ESXCLI 또는 PowerCLI를 사용하면 됩니다. 이 작업에서는 vSphere Client를 사용하는 방법을 설명합니다. ESXCLI 사용에 대한 지침은 "ESXCLI 개념 및 예" 설명서에서 "ESXi 방화벽 관리" 항목을 참조하십시오.
프로시저
ESXi 호스트에 대해 들어오고 나가는 방화벽 포트
vSphere Client 또는 VMware Host Client를 사용하여 각 서비스에 대한 방화벽 포트를 열고 닫습니다.
ESXi에는 기본적으로 활성화되는 방화벽이 포함됩니다. 설치 시 ESXi 방화벽은 호스트 보안 프로파일에서 활성화된 서비스의 트래픽을 제외하고 들어오고 나가는 트래픽을 차단하도록 구성됩니다. ESXi 방화벽에서 지원되는 포트 및 프로토콜 목록은 https://ports.vmware.com/에서 VMware Ports and Protocols Tool™을 참조하십시오.
VMware Ports and Protocols Tool은 기본적으로 설치되는 서비스에 대한 포트 정보를 나열합니다. 호스트에 다른 VIB를 설치하는 경우 추가 서비스 및 방화벽 포트를 사용하게 될 수 있습니다. 이 정보는 vSphere Client에서 볼 수 있는 서비스에 주로 사용되지만 VMware Ports and Protocols Tool에는 몇 가지 다른 포트도 포함되어 있습니다.
NFS 클라이언트 방화벽 동작
NFS 클라이언트 방화벽 규칙 집합은 다른 ESXi 방화벽 규칙 집합과는 다르게 동작합니다. ESXi에서는 NFS 데이터스토어를 마운트하거나 마운트 해제할 때 NFS 클라이언트 설정을 구성합니다. 동작은 NFS의 버전별로 다릅니다.
NFS 데이터스토어를 추가, 마운트 또는 마운트 해제할 때 결과 동작은 NFS의 버전에 따라 다릅니다.
NFS v3 방화벽 동작
NFS v3 데이터스토어를 추가하거나 마운트할 때 ESXi에서는 NFS 클라이언트(nfsClient) 방화벽 규칙 집합의 상태를 확인합니다.
- nfsClient 규칙 집합이 비활성화된 경우 ESXi에서는 해당 규칙 집합을 활성화하고 allowedAll 플래그를 FALSE로 설정하여 모든 IP 주소 허용 정책을 비활성화합니다. NFS 서버의 IP 주소는 허용된 송신 IP 주소 목록에 추가됩니다.
- nfsClient 규칙 집합이 활성화된 경우 이 규칙 집합의 상태와 허용된 IP 주소 정책은 변경되지 않습니다. NFS 서버의 IP 주소는 허용된 송신 IP 주소 목록에 추가됩니다.
NFS v3 데이터스토어를 제거하거나 마운트 해제할 때 ESXi에서는 다음 작업 중 하나를 수행합니다.
- 나머지 NFS v3 데이터스토어 중에서 마운트 해제되는 데이터스토어 서버에서 마운트된 데이터스토어가 없으면 ESXi에서는 송신 IP 주소의 목록에서 서버의 IP 주소를 제거합니다.
- 마운트 해제 작업 후 마운트된 NFS v3 데이터스토어가 남아 있지 않으면 ESXi에서는 nfsClient 방화벽 규칙 집합을 비활성화합니다.
NFS v4.1 방화벽 동작
첫 번째 NFS v4.1 데이터스토어를 마운트하면 ESXi에서는 nfs41client 규칙 집합을 활성화하고 allowedAll 플래그를 TRUE로 설정합니다. 이 작업은 모든 IP 주소에 대해 포트 2049를 엽니다. NFS v4.1 데이터스토어 마운트 해제는 방화벽 상태에 영향을 주지 않습니다. 즉, 첫 번째 NFS v4.1 마운트는 포트 2049를 열고 해당 포트는 명시적으로 닫지 않는 한 활성화된 상태로 유지됩니다.
ESXCLI 방화벽 명령을 사용하여 ESXi 동작 구성
환경에 ESXi 호스트가 여러 개 포함된 경우 ESXCLI 명령 또는 vSphere Web Services SDK를 사용하여 방화벽 구성을 자동화합니다.
방화벽 명령 참조
ESXi Shell 또는 ESXCLI 명령을 사용하여 명령줄에서 ESXi를 구성하여 방화벽 구성을 자동화할 수 있습니다. 방화벽 및 방화벽 규칙을 조작하려면 "ESXCLI 시작" 에서 소개를 참조하고 "ESXCLI 개념 및 예" 에서 ESXCLI를 사용하는 예를 참조하십시오.
ESXi 7.0 이상에서는 사용자 지정 방화벽 규칙을 생성하는 데 사용되는 service.xml
파일에 대한 액세스가 제한됩니다. /etc/rc.local.d/local.sh
파일을 사용하여 사용자 지정 방화벽 규칙을 생성하는 방법에 대한 자세한 내용은 VMware 기술 자료 문서 2008226을 참조하십시오.
명령 | 설명 |
---|---|
esxcli network firewall get | 방화벽의 상태를 반환하고 기본 작업을 나열합니다. |
esxcli network firewall set --default-action | 기본 작업을 '통과'로 설정하려면 true로 설정하고 기본 작업을 '삭제'로 설정하려면 false로 설정합니다. |
esxcli network firewall set --enabled | ESXi 방화벽을 활성화하거나 비활성화합니다. |
esxcli network firewall load | 방화벽 모듈 및 규칙 집합 구성 파일을 로드합니다. |
esxcli network firewall refresh | 방화벽 모듈이 로드된 경우 규칙 집합 파일을 읽어 방화벽 구성을 새로 고칩니다. |
esxcli network firewall unload | 필터를 제거하고 방화벽 모듈을 언로드합니다. |
esxcli network firewall ruleset list | 규칙 집합 정보를 나열합니다. |
esxcli network firewall ruleset set --allowed-all | 모든 IP에 대한 모든 액세스를 허용하려면 true로 설정하고 허용된 IP 주소 목록을 사용하려면 false로 설정합니다. |
esxcli network firewall ruleset set --enabled --ruleset-id=<string> | 지정된 규칙 집합을 활성화하려면 enabled를 true로 설정합니다. 지정된 규칙 집합을 비활성화하려면 enabled를 false로 설정합니다. |
esxcli network firewall ruleset allowedip list | 지정된 규칙 집합의 허용되는 IP 주소를 나열합니다. |
esxcli network firewall ruleset allowedip add | 지정된 IP 주소 또는 IP 주소 범위에서 규칙 집합에 액세스할 수 있도록 합니다. |
esxcli network firewall ruleset allowedip remove | 지정된 IP 주소 또는 IP 주소 범위에서 규칙 집합에 액세스할 수 없도록 합니다. |
esxcli network firewall ruleset rule list | 방화벽의 각 규칙 집합에 있는 규칙을 나열합니다. |