GCEでインスタンス立てる手順
ポートフォリオサイト公開にあたり初めてGCEを使ったけれど
あまりに情報が少なく、公式の説明も
🤔エキサイト翻訳かよ・・・・
というレベルの怪しい日本語オンパレードで分かりづらかったので手順を書いておく。
インスタンス作成
- GCPコンソールを開く
- 左のナビゲーションメニューから Compute Engine > VMインスタンスを開く
- VMインスタンス横の + ボタンをクリック
- インスタンス名等を設定して作成ボタンをクリック
- 一覧に作成したインスタンスが表示されることを確認
外部のSSHクライアントを使いたいので、OSログインができるように設定
ブラウザ上でもアクセスはできるが、rloginを使いたかったので下記設定を行った。
- 左のナビゲーションメニューからCompute Engine > メタデータを選択
- キーと値を入力するボックスが表示されるので、
キー: enable-oslogin 値: TRUE
と設定する
- キーと値を入力するボックスが表示されるので、
外部IPを動的IP→静的IPに変更する
ここまでできたらインスタンス一覧に戻り、外部IPを動的IP(エフェメラル)→静的IPに変更する。(動的IPだと接続毎にIPが変更されてしまうため)
- まず静的IPを予約する必要があるためナビゲーションメニューのネットワーキング(結構下にある)のVPCネットワーク> 外部IPアドレスを選択
- 上にある+ボタン(静的アドレスを予約)をクリック
- 中身を適当に入力して、接続先を該当インスタンスに変更し、予約をクリック
- Compute EngineのVMインスタンスに戻り、外部IPの設定が変更されていることを確認。
鍵認証
今度は鍵認証の設定をする。
- まずローカルで鍵を作成する
ssh-keygen -t rsa -C ユーザ名
- 鍵を作成したら、公開鍵(.pub)の中身をコピー
- VMインスタンス一覧に戻ってインスタンス名をクリックし、詳細を表示
- 上の鉛筆アイコンをクリックして編集
SSH鍵認証という項目に
SSH キーが0個あります
と書いてあるので、
そこにコピーした公開鍵を張り付けるRloginでユーザ名、秘密鍵を指定して、予約したIPでログイン
問題発生
permission deniedでログインできない・・・・
鍵もあってるし、ブラウザではアクセスできるし・・・なぜ?
ブラウザから鍵設定できているか確認すると、
~/.sshディレクトリがなくて、authorized_keysもなかった。
下記手順で鍵作成
mkdir ~/.ssh chmod 700 ~/.ssh vi authorized_keys # authorized_keysに公開鍵の中身をコピペ chmod 600 authorized_keys
rloginから再度接続→行けた!!!!!