(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

【GCP】遠隔からの疎通に向けた任意ポートの開放/確認手順

スポンサーリンク

はじめに

GoogleCloudPlatform(GCP)ではファイアウォールルールを使用して、仮想マシン(VM)インスタンスとの間のトラフィックを制御できます。

本記事ではGoogleCloudPlatformの特定VMインスタンスに対して任意のポートを許可(開放)し、sshコマンドを利用して疎通を確認する手順を解説します。

今回は外部IPアドレスが12.34.56.78のVMインスタンスのポート8888を開けるとして話を進めます。

手順

事前確認

「ssh -v -p」を利用して疎通確認を行います。

$ ssh -v -p 8888 12.34.56.78
...
ssh: connect to host 12.34.56.78 port 8888: Operation timed out

ポートを開ける前はOperation timed outとなるはずです。

ファイアウォール設定

以下で設定できます。

GCPホーム > ネットワーキング > VPCネットワーク > ファイアウォールルール

f:id:mtiit:20190504225018p:plain
ファイアウォール ルールを作成 を押下します。
以下のように項目を埋め

項目 入力例
名前 default-allow-8888
説明 Allow 8888 from anywhere
ログ オフ
ネットワーク default
優先度 1000
送信 / 受信 上り
一致したときのアクション 許可
ターゲット タグ use-8888
IP 範囲 0.0.0.0/0
プロトコルとポート tcp:8888

作成ボタンを押下します。

なお、IP範囲は全て、通信方向はVMインスタンス側が受信側としています。

VMインスタンスへ設定

以下で設定できます。

GCPホーム > コンピューティング > Compute Engine > VMインスタンス

該当するInstanceを選択し、以下の編集を押下します。
f:id:mtiit:20190504225942p:plain


ファイアウォール ネットワークタグ に先ほどのターゲットタグである「use-8888」を追記します。
設定を保存すれば完了です。

ちなみにこの画面にてVMインスタンスの外部IPを確認できます。

疎通確認
$ ssh -v -p 8888 12.34.56.78
...
debug1: Connection established.
...
ssh_exchange_identification: Connection closed by remote host

Connection established.という文言が確認できれば成功です。

終わりに

GCPにてWebサービスを展開する際など通信を許可する必要があります。
ネットワークの設定とVMインスタンスへの反映が分離されていることにより、ネットワーク設定を一元管理できてありがたいです。

同様の作業を実施する方の参考になれば幸いです。