보안 웹 프록시 인스턴스 배포
시작하기 전에
초기 설정 단계를 완료합니다.
이 페이지에서 명령어를 실행하려면 다음 개발 환경 중 하나에서 Google Cloud CLI를 설정하세요.
Cloud Shell
gcloud CLI로 이미 설정된 온라인 터미널을 사용하려면 Cloud Shell을 활성화하세요.
이 페이지 하단에서 Cloud Shell 세션이 시작되고 명령줄 프롬프트가 표시됩니다. 세션이 초기화되는 데 몇 초 정도 걸릴 수 있습니다.
로컬 셸
로컬 개발 환경을 사용하려면 다음 단계를 수행합니다.
Google Cloud 프로젝트를 만들거나 선택합니다.
콘솔
Google Cloud 콘솔의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 만들거나 선택합니다.
Cloud Shell
Google Cloud 프로젝트를 만듭니다.
gcloud projects create PROJECT_ID
PROJECT_ID
를 원하는 프로젝트 ID로 바꿉니다.만든 Google Cloud 프로젝트를 선택합니다.
gcloud config set project PROJECT_ID
Linux 가상 머신(VM) 인스턴스를 만듭니다.
gcloud compute instances create swp-test-vm \ --subnet=default \ --zone=ZONE \ --image-project=debian-cloud \ --image-family=debian-11
Compute Engine은 VM을 만드는 사용자에게 Compute 인스턴스 관리자 역할(
roles/compute.instanceAdmin
)을 부여합니다. Compute Engine은 해당 사용자를 sudo 그룹에 추가합니다.방화벽 규칙 만들기
gcloud compute firewall-rules create default-allow-ssh \ --direction=INGRESS \ --priority=1000 \ --network=default \ --action=ALLOW \ --rules=tcp:22 \ --source-ranges=0.0.0.0/0
보안 웹 프록시 정책 만들기
콘솔
Google Cloud 콘솔에서 네트워크 보안 페이지로 이동합니다.
보안 웹 프록시를 클릭합니다.
정책 탭을 클릭합니다.
정책 만들기를 클릭합니다.
만들려는 정책의 이름을 입력합니다(예:
myswppolicy
).정책의 설명을 입력합니다(예:
My new swp policy
).리전 목록에서 웹 프록시 정책을 만들려는 리전을 선택합니다.
웹 프록시에 TLS 검사를 구성하려면 TLS 검사 구성을 선택합니다.
TLS 검사 정책 목록에서 만든 TLS 검사 정책을 선택합니다. TLS 검사 정책은 직접 만든 경우에만 목록에 표시됩니다.
정책에 대한 규칙을 만들려면 계속을 클릭한 다음 규칙 추가를 클릭합니다. 자세한 내용은 보안 웹 프록시 규칙 만들기를 참조하세요.
만들기를 클릭합니다.
Cloud Shell
일부 웹 프록시 정책에서는 평가를 위해 트래픽이 TLS로 암호화되어야 합니다. TLS 암호화 여부에 따라 다음 방법 중 하나를 사용하여 정책을 만듭니다.
TLS 검사 구성으로 정책을 만듭니다.
TLS 검사를 사용 설정하려면 TLS 검사 사용 설정에 설명된 절차를 수행한 후
policy.yaml
파일을 만듭니다.description: basic Secure Web Proxy policy name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1 tlsInspectionPolicy: projects/PROJECT_ID/locations/REGION/tlsInspectionPolicies/TLS_INSPECTION_NAME
TLS 검사 구성 없이 정책을 만듭니다.
TLS 검사를 사용 설정하지 않으려면
policy.yaml
파일을 만듭니다.description: basic Secure Web Proxy policy name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1
보안 웹 프록시 정책을 만듭니다.
gcloud network-security gateway-security-policies import policy1 \ --source=policy.yaml \ --location=REGION
보안 웹 프록시 규칙 만들기
콘솔
Google Cloud 콘솔에서 네트워크 보안 페이지로 이동합니다.
보안 웹 프록시를 클릭합니다.
정책 탭을 클릭합니다.
정책 이름을 클릭합니다.
규칙 추가를 클릭합니다.
규칙 필드를 채웁니다.
- 이름
- 설명
- 상태
- 우선순위: 규칙의 평가 순서(번호순)입니다. 규칙은 가장 높은 우선순위에서 가장 낮은 우선순위로 평가되며
0
는 가장 높은 우선순위입니다. - 작업 섹션에서 규칙과 일치하는 연결을 허용(허용)하거나 거부(거부)할지 지정합니다.
- 세션 일치 섹션에서 세션을 일치시키는 기준을 지정합니다.
SessionMatcher
의 구문에 대한 자세한 내용은 CEL 일치자 언어 참조를 참조하세요. - TLS 검사를 사용 설정하려면 TLS 검사 사용 설정을 선택합니다.
- 애플리케이션 일치 섹션에서 요청을 일치시키는 기준을 지정합니다. TLS 검사에 대한 규칙을 사용 설정하지 않으면 해당 요청은 HTTP 트래픽만 일치시킬 수 있습니다.
- 만들기를 클릭합니다.
규칙 추가를 클릭하여 다른 규칙을 추가합니다.
만들기를 클릭하여 정책을 만듭니다.
Cloud Shell
TLS 암호화 여부에 따라 다음 방법 중 하나를 사용하여 규칙을 만듭니다.
TLS 검사 구성으로 규칙을 만듭니다.
TLS 검사를 사용 설정하려면
rule.yaml
파일을 만듭니다.name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1/rules/allow-wikipedia-org description: Allow wikipedia enabled: true priority: 1 basicProfile: ALLOW sessionMatcher: host() == 'wikipedia.org' applicationMatcher: request.path.contains('index.html') tlsInspectionEnabled: true
TLS 검사 구성 없이 규칙을 만듭니다.
TLS 검사를 사용 설정하지 않으려면
rule.yaml
파일을 만듭니다.name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1/rules/allow-wikipedia-org description: Allow wikipedia.org enabled: true priority: 1 basicProfile: ALLOW sessionMatcher: host() == 'wikipedia.org'
보안 정책 규칙을 만듭니다.
gcloud network-security gateway-security-policies rules import allow-wikipedia-org \ --source=rule.yaml \ --location=REGION \ --gateway-security-policy=policy1
웹 프록시 설정
콘솔
Google Cloud 콘솔에서 네트워크 보안 페이지로 이동합니다.
보안 웹 프록시를 클릭합니다.
웹 프록시 탭을 클릭합니다.
웹 프록시 설정을 클릭합니다.
만들려는 웹 프록시의 이름을 입력합니다(예:
myswp
).웹 프록시에 대한 설명을 입력합니다(예:
My new swp
).리전 목록에서 웹 프록시를 만들 리전을 선택합니다.
네트워크 목록에서 웹 프록시를 만들 네트워크를 선택합니다.
서브네트워크 목록에서 웹 프록시를 만들 서브네트워크를 선택합니다.
웹 프록시 IP 주소를 입력합니다.
인증서 목록에서 웹 프록시를 만드는 데 사용할 인증서를 선택합니다.
정책 목록에서 웹 프록시를 연결하기 위해 만든 정책을 선택합니다.
만들기를 클릭합니다.
Cloud Shell
gateway.yaml
파일 만들기name: projects/PROJECT_ID/locations/REGION/gateways/swp1 type: SECURE_WEB_GATEWAY addresses: ["10.128.0.99"] ports: [443] certificateUrls: ["projects/PROJECT_ID/locations/REGION/certificates/cert1"] gatewaySecurityPolicy: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1 network: projects/PROJECT_ID/global/networks/default subnetwork: projects/PROJECT_ID/regions/REGION/subnetworks/default scope: samplescope
보안 웹 프록시 인스턴스를 만듭니다.
gcloud network-services gateways import swp1 \ --source=gateway.yaml \ --location=REGION
보안 웹 프록시 인스턴스는 배포하는 데 몇 분 정도 걸릴 수 있습니다.
연결 테스트
이전에 프로비저닝한 VM에 연결합니다.
gcloud compute ssh swp-test-vm \ --zone=ZONE
보안 웹 프록시 인스턴스를 테스트합니다.
curl -x http://10.128.0.99:80 https://wikipedia.org
TLS 검사를 위해 보안 웹 프록시 인스턴스를 구성한 경우 다음 명령어를 사용합니다.
curl -x http://10.128.0.99:80 https://wikipedia.org/index.html
삭제
이 페이지에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 다음 단계를 수행합니다.
보안 웹 프록시 인스턴스 swp1
삭제
콘솔
Google Cloud 콘솔에서 네트워크 보안 페이지로 이동합니다.
보안 웹 프록시를 클릭합니다. 모든 웹 프록시 목록을 보거나 특정 네트워크의 프록시만 볼 수 있습니다.
삭제하려는 웹 프록시를 선택합니다.
삭제를 클릭합니다.
삭제를 다시 클릭하여 확인합니다.
Cloud Shell
gcloud network-services gateways delete swp1 \
--location=REGION
allow-wikipedia-org
규칙 삭제
콘솔
Google Cloud 콘솔에서 네트워크 보안 페이지로 이동합니다.
보안 웹 프록시를 클릭합니다. 모든 웹 프록시 목록을 보거나 특정 네트워크의 프록시만 볼 수 있습니다.
정책 탭을 클릭합니다.
정책을 클릭합니다.
삭제하려는 규칙을 선택합니다.
삭제를 클릭합니다.
삭제를 다시 클릭하여 확인합니다.
Cloud Shell
gcloud network-security gateway-security-policies rules delete allow-wikipedia-org \
--location=REGION \
--gateway-security-policy=policy1
보안 웹 프록시 정책 policy1
삭제
콘솔
Google Cloud 콘솔에서 네트워크 보안 페이지로 이동합니다.
보안 웹 프록시를 클릭합니다. 모든 웹 프록시 목록을 보거나 특정 네트워크의 프록시만 볼 수 있습니다.
정책 탭을 클릭합니다.
삭제할 정책을 클릭합니다.
삭제를 클릭합니다.
삭제를 다시 클릭하여 확인합니다.
Cloud Shell
gcloud network-security gateway-security-policies delete policy1 \
--location=REGION
Linux VM 인스턴스 swp-test-vm
삭제
콘솔
Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.
삭제할 인스턴스를 선택합니다.
삭제를 클릭합니다.
Cloud Shell
gcloud compute instances delete swp-test-vm