結論と解決策
GCEのファイアウォールはサーバー側とプラットフォーム(GCP)側の2段階なので両方開けとかないと弾かれる。
- サーバー(Linuxとか)の設定でポートを開ける
- GCPのコンソール(ブラウザでアクセスする)の「ネットワーキング」からポートを開ける(此処には既に「default-allow-ssh」という22番ポートを開けている設定があるが、これを編集するなり、同じようにルールを追加する)
寝付けないくらい焦ったし夢にも見たけど助かったので良かった!!!
ここからは下はおまけポエム
締め出された原因
Google Compute Engineでサイトを運営していたところ、攻撃を食らっているかもしれなかった(結局違ったけど)。
とりあえずセキュリティは高めておこうと、(サーバー側で)ファイアウォールを設定したりSSHのポート番号を変更したところ、SSH接続が出来なくなってしまった。
最初からローカルのPuTTY(gcloudで起動するやつ)とブラウザのコンソールの2つで接続できていたので、変更したりログアウトする前にどちらか片方を繋いだままにしておけば良かったのだが、うっかり。
やった事(失敗策)
とはいえ、gcloudのコマンドはよくわからないが、ブラウザのGCPダッシュボードのコンソールは起動時にポート番号を指定する事ができる。
ブラウザ ウィンドウでカスタムポートを開く
今回はポートを22から2222にしたとして説明すると、この時に出てくるウィンドウに2222と入力すれば接続できるはず…だった。
ところがどっこい、これは22(既に閉じてあるポート)で接続しようとした時と同じエラーメッセージだ。
ポート 2222 に接続できません
ポート2222はちゃんとサーバー側で開けといたし、サーバーの設定上で開いている事は確認してある。
紆余曲折の上、冒頭の解決策というか、GCEの仕様に辿り着いた。
その他
gcloudコマンドで接続する場合の設定方法がわからないので、普通のPuTTYで普通に接続する事になったけど、めんどくささはあまり変わらないので良しとする。
※この記事は個人ブログに掲載していた記事を再編して掲載したものです。