77Lifeworkベータ版

77Lifeworkベータ版

IT関係の話(ツール開発・インフラ構築)をメインとして、その他私の趣味や雑記用のブログです。ここに書いた内容が少しでも参考になれば嬉しいです。

GCPの無料枠でCentOS7を使用する方法

はじめに

こんにちは。今回はGCP(Google Cloud Platform)上の仮想マシンとしてCentOS7を起動して使用する方法を書いていきます。
今回はとりあえずお試しということで、無料で使用できる範囲でやってみます。

VMインスタンスの作成

まずはGCPの画面を開きましょう。Googleアカウントでログインします。
ログイン後、以下のような画面が出てきます。

f:id:J-back:20210411114858p:plain:w600



左上のナビゲーションメニューから、「Compute Engine」の「VMインスタンス」を選択します。
f:id:J-back:20210411115340p:plain:w600



インスタンスの作成」を選択します。
f:id:J-back:20210411120731p:plain:w600



VMの情報やリソース(CPU、メモリ、ディスク)を編集します。
記事執筆時点での無料枠の条件内で設定します。
無料枠の条件は以下のリンク先に記載されています。
cloud.google.com



・名前
任意のものを入力しましょう。ここでは「centos7-test」にしました。

・リージョン
無料枠で使用できるのは「us-west1」、「us-central1」、「us-east1」の3つです。
ここでは「us-west1」を選択しました。

・ゾーン
選択したリージョンに関連し、「us-west1-a」、「us-west1-b」、「us-west1-c」が選択できます。
無料枠の条件には関係しないので、ここでは「us-west1-a」を選択します。

・マシンの構成
無料枠で使用するために、シリーズは「N1」、マシンタイプは「f1-micro」を選択します。

f:id:J-back:20210411122146p:plain:w600




次にブートディスクの選択です。
以下の「変更」をクリックします。
f:id:J-back:20210411122336p:plain:w600



オペレーティングシステム
CentOS」を選択します。

・バージョン
「CentOS7」を選択します。

・ブートディスクの種類
「標準の永続ディスク」を選択します。

・サイズ
無料枠内で最大の「30GB」に設定します。

f:id:J-back:20210411122629p:plain:w600



ここまで設定できたら「作成」をクリックします。
f:id:J-back:20210411122945p:plain:w600



少し待っていると、VMインスタンスが作成されました。
f:id:J-back:20210411123130p:plain:w600


VMインスタンスへのログイン

作成したVMインスタンスにアクセスしてみましょう。
以下の画面でVMインスタンス名をクリックします。
f:id:J-back:20210411124030p:plain:w600



「リモートアクセス」の「SSH」の隣の下矢印をクリックし、「ブラウザウィンドウで開く」を選択します。
f:id:J-back:20210411124425p:plain:w600



そして少し待っているとログインできました。
f:id:J-back:20210411130015p:plain:w600



※ここで「接続できませんでした」「ポート22でVMに接続できません」と出てきたときは、sshの22番ポートがファイアウォールでブロックされている可能性があるので、以下のように「VPC」の「ファイアウォール」の設定を確認しましょう。
f:id:J-back:20210411124642p:plain:w600

f:id:J-back:20210411125544p:plain:w600


SSHのポート変更設定

次は、セキュリティの観点からsshで接続する際のポートを変更し、VMインスタンスに対してssh接続できるよう設定しておきます。

一旦ブラウザ経由で接続し、以下のコマンドを実行してOS側のファイアウォールを停止しておきましょう。

systemctl stop firewalld
systemctl disable firewalld

f:id:J-back:20210411230025p:plain:w600


エディタでselinuxのconfigファイルを開き、selinuxを無効化しておきます。
行頭に「#」が付いている部分はコメントなので読み込まれません。

sudo vi /etc/selinux/config

下のように「SELINUX=disabled」と記述して保存します。
f:id:J-back:20210411235800p:plain:w600


次にエディタで「sshd_config」を開き、sshの接続ポートとして「777」を追加します。
以下のコマンドはviエディタを使用した例です。

sudo vi /etc/ssh/sshd_config


ポートの設定行のコメントアウトを外し、以下の部分でポート「777」を追加しています。
f:id:J-back:20210412000215p:plain:w600



OS側の設定は以上です。
一度再起動しておきましょう。


最後に「VPC」の「ファイアウォール」の設定を開き、ポート777の通信を許可しておきます。
f:id:J-back:20210411124642p:plain:w600


現状、「default-allow-ssh」という名前で「tcp:22」が「許可」というルールが設定されていると思います。
f:id:J-back:20210411233609p:plain:w600


「default-allow-ssh」をクリックし、「編集」を選択します。
f:id:J-back:20210411233924p:plain



tcp:22」=>「tcp:777」へと変更し、「保存」します。
f:id:J-back:20210412000607p:plain:w600



ここまでできたらVMインスタンスの画面に戻り、リモートアクセスの「ブラウザ ウィンドウでカスタムポートを開く」を選択します。
f:id:J-back:20210412000813p:plain:w600


ポートは上で設定した「777」を入力します。
f:id:J-back:20210412001027p:plain:w600



ポート777でssh接続することができました。
f:id:J-back:20210412001141p:plain:w600


さいごに

今回はGCPの無料枠を使ってCentOSがインストールされたVMインスタンスを起動し、sshで接続して操作するところまでを書きました。
今後も引き続きいろいろ設定していじっていきます。