はじめに

今までGCEへのSSH接続はAWSでやっているように、対象IPからのSSH接続を許可し、ユーザを払い出し、そこに対するリモート接続を行っていた。
※お客様用のIPを基本的には許可したい、という要件が多く、これを設定する機会がありませんでした
Security Engineerの試験を勉強していることと、当該技術を使う機会があったので、IAPを使ったSSH接続をおさらいする

IAPに関する説明

トップページの記載

Google Cloud の Identity-Aware Proxy は、GCP リソースに対するゼロトラストのアクセスを実装します。

記載のとおり「ID とコンテキストを使用して、アプリケーションや VM へのアクセスを保護。」します。
ここでいうIDはCloud IAM を指しており、アプリケーションやVMへのアクセスを保護というのは、IAMのユーザを利用し、そのユーザやVMに対して権限が与えられている場合のみ、TCP転送をするような形になります。

仕組み

イメージとしてはこんな感じで、UserはIAPへHTTPSでアクセスし、IAPから対象まで22ポートで接続します。
ちなみにComputeEngineはExternalIPがなくても可能です。

これを行うために、Userはプロジェクト内のIAM権限が必要で対象の権限を付与する必要があります。
また22ポートで特定のIPアドレスからの許可が必要になるため、FWのポート開放も必要となります。


全文はこちら:初心に戻ってIAP経由によるGCEへのSSH接続を試す

著者:@hirosait