Google Clout Platform (CGP) でドメイン設定した際の備忘録。
概要
CGP 側の作業手順をメインに記載する(お名前.com など、ドメインサービス側のレジストラ設定作業はチョロっとしか記載しない)
前提
- GCP で Compute Engine サービスの仮想サーバを構築済みであること(数クリックで出来るから構築説明は割愛。公式ガイドに従えば OK)
- 独自ドメインをどこかしらのドメインサービスで取得済みであること(筆者は「Google Domains」を利用して取得した。通常、最大72時間かかる場合があるが、取得から数分で公開された。さすが Google)
- Web サーバ(Apache, Nginx 等)は仮想サーバに構築済みで、IP アドレスで Web ブラウザから見れるところまで確認済みであること
- あんまり関係ないが、サーバOS: CentOS7
ドメイン設定手順
サーバ インスタンスの起動確認
ひとまず、GCP にログイン。
仮想サーバが起動されているか確認。起動してなかったら起動させる(課金内容に注意)
起動すると外部 IP アドレスが払い出される。
外部IP アドレス をメモっとく
IP と取得した独自ドメインを紐づけないといけないので、インスタンスの外部 IP アドレスをメモっておく。
- ナビゲーションメニュー > カテゴリ「ネットワーキング」の「VPC ネットワーク」 > 「外部 IP アドレス」を選択
- 「外部アドレス」の数字をメモる
※ タイプ「エフェメラル」の場合、インスタンス再起動の度に IP アドレスが変わっちゃう。
※ タイプ「静的」にすると IP アドレスは再起動しても固定になるが、予期せぬ課金のキッカケになるので、IP 固定化する理由が薄い場合は「エフェメラル」IP アドレス推奨っす。
DNS を設定する
- ナビゲーションメニュー > カテゴリ「ネットワーキング」の「ネットワークサービス」 > 「Cloud DNS」を選択
- DNS ゾーンが未作成の場合は、適当な「ゾーン名」を着けて新規ゾーンを作成(作成済みならゾーン名をクリック)
- 作成時、「DNS名」には取得した独自ドメインを入力すること
- 新規作成時、NSレコードが(
ns-cloud-a1.googledomains.com.
みたいなのが)4つくらい生成される。これは、レジストラ設定で使う情報。 - ゾーンの設定で「A」レコードの IPv4 アドレスに、先ほどメモった IP アドレスを入力して保存
例えば、既存ゾーンをクリックすると以下のように表示
ここで「レコードセット追加」を押下で以下。
レジストラ設定(ドメインサービス側)
お名前.com など、ドメインサービス側の各設定画面で、先ほど発行された NS レコードの情報を設定してあげる
(業者によって画面や設定方法が違うので、ここは割愛)
※ もう既に正しい設定が行われているのであれは、この手順はスキップ。
確認
ちゃんと設定できてるか、疎通確認。
- 適当に時間をおいて、Web ブラウザから独自ドメインに対してアクセスしてみる
(http://独自ドメイン名/
など) - IP アドレスで叩いた時と同様に画面が見れたら成功
403 エラー (権限が無い) が出た場合
Web ブラウザからドメイン叩いたらうまくいかないケースがあった。
筆者の環境では、CentOS7 のサーバに Nginx を入れて設定してた。
結果的に、SELinux を一時無効にすることで暫定解決とした。
- SELinux 確認コマンド
getenforce
# => Encording と出れば、SELinux が有効になっている
- 無効化コマンド
sudo setenforce 0
- もう一回確認
getenforce
# => Permissive と出れば、SELinux が無効
これで、ブラウザから問題なく意図したページが表示された。
しかし、根本的な解決では無いので、セキュリティ的に有効でも表示できるような、本来すべき設定があればそちらを行う必要がある。
HTTPS 対応したい場合
こちらを Qiita 記事をご覧ください。
「無料 SSL 証明書を発行して簡単に Web サイトを HTTPS 対応させる方法」
以上。