GCE에 대한 SSH 연결 소스 IP를 좁히면서 Cloud IAP에서 SSH

2105 단어 gcpIAPgce

TL/DR;



  • GCE 조금 기술 – Cloud IAP TCP Forwarding에서 발판 서버 필요 없는 유지보수 에서 발췌.
  • 거의 자신을 위한 메모.

  • IAP API 활성화.
  • VPC Firewall에서 IAP에서 SSH를 허용, 거점 IP를 허용, 그렇지 않으면 거부.
  • Cloud IAP 편리하지만, --tunnel-through-iap 라고 주문을 기억할 수 없다. (TAB 보완 효과가 없다?)
  • iap을 사용하여 .bashrc로 함수를 자르면 어떻게 될까요.


  • Cloud IAP API 상태 확인.


  • Cloud IAP API가 사용 설정되어 있는지 확인합니다.
  • gcloud services list --filter=NAME:iap
    
  • 사용 불가능한 경우 출력.
  • $ gcloud services list --filter=NAME:iap
    Listed 0 items.
    

    Cloud IAP를 활성화합니다.


       gcloud services enable iap.googleapis.com
    

    IAP로부터의 SSH를 VPC Firewall에서 허가해 준다.


    gcloud compute firewall-rules create allow-iap-forwarding-ssh   --network=<VPC名>   --allow=tcp:22   --source-ranges=35.235.240.0/20
    
  • 다른 VPC Firewall 규칙에서 인스턴스에 대한 SSH가 좁혀져 있다고 가정합니다.

  • IAP를 통한 연결 확인


  • GCP 콘솔에서 SSH-->gcloud 명령을 표시로 표시된 명령 끝에 --tunnel-through-iap를 붙여 주면 OK


  • gcloud beta compute ssh --zone "<インスタンスのゾーン>" "<インスタンス名>" --project "<プロジェクト名>" --tunnel-through-iap
    

    --tunnel-through-iap은 주문을 기억할 수 없습니다.



    수중 단말의 bashrc에서 다음과 같이 함수 정의


    ## for gce
    function iap() {
      command gcloud compute ssh $1 --tunnel-through-iap
    }
    
  • zone 과 프로젝트의 인수는 생략.
  • 하지만 gcloud 명령을 사용할 때는 대상 프로젝트로 계정 전환하기 때문입니다.


  • 실행 예


    $ iap hoge
    No zone specified. Using zone [asia-northeast1-b] for instance: [hoge].
    Last login: Sun Mar 21 10:38:38 2021 from 35.235.240.242
    [XXXXXXXXX@hoge ~]$
    

    좋은 웹페이지 즐겨찾기