さとうナイトニッポン

やったことのメモとか日々の雑記とか

GCEでインスタンス立てる手順

ポートフォリオサイト公開にあたり初めてGCEを使ったけれど
あまりに情報が少なく、公式の説明も
🤔エキサイト翻訳かよ・・・・
というレベルの怪しい日本語オンパレードで分かりづらかったので手順を書いておく。

インスタンス作成

  1. GCPコンソールを開く
  2. 左のナビゲーションメニューから Compute Engine > VMインスタンスを開く
  3. VMインスタンス横の + ボタンをクリック
  4. インスタンス名等を設定して作成ボタンをクリック
  5. 一覧に作成したインスタンスが表示されることを確認
    • 接続カラムのSSHをクリックするとブラウザ上でインスタンスアクセスできる。

外部のSSHクライアントを使いたいので、OSログインができるように設定

ブラウザ上でもアクセスはできるが、rloginを使いたかったので下記設定を行った。

  1. 左のナビゲーションメニューからCompute Engine > メタデータを選択
    • キーと値を入力するボックスが表示されるので、
      キー: enable-oslogin 値: TRUEと設定する

外部IPを動的IP→静的IPに変更する

ここまでできたらインスタンス一覧に戻り、外部IPを動的IP(エフェメラル)→静的IPに変更する。(動的IPだと接続毎にIPが変更されてしまうため)

  1. まず静的IPを予約する必要があるためナビゲーションメニューのネットワーキング(結構下にある)のVPCネットワーク> 外部IPアドレスを選択
  2. 上にある+ボタン(静的アドレスを予約)をクリック
  3. 中身を適当に入力して、接続先を該当インスタンスに変更し、予約をクリック
  4. Compute EngineのVMインスタンスに戻り、外部IPの設定が変更されていることを確認。

鍵認証

今度は鍵認証の設定をする。

  1. まずローカルで鍵を作成する
    ssh-keygen -t rsa -C ユーザ名
  2. 鍵を作成したら、公開鍵(.pub)の中身をコピー
  3. VMインスタンス一覧に戻ってインスタンス名をクリックし、詳細を表示
  4. 上の鉛筆アイコンをクリックして編集
  5. SSH鍵認証という項目に SSH キーが0個ありますと書いてあるので、
    そこにコピーした公開鍵を張り付ける

  6. Rloginでユーザ名、秘密鍵を指定して、予約したIPでログイン

問題発生

permission deniedでログインできない・・・・
鍵もあってるし、ブラウザではアクセスできるし・・・なぜ?
ブラウザから鍵設定できているか確認すると、 ~/.sshディレクトリがなくて、authorized_keysもなかった。 下記手順で鍵作成

mkdir ~/.ssh
chmod 700 ~/.ssh
vi authorized_keys
# authorized_keysに公開鍵の中身をコピペ
chmod 600 authorized_keys

rloginから再度接続→行けた!!!!!