最近、デジタル名刺(NFCカード)を読み込んだ時に表示されるプロフィールサイトをS3とCloudFrontを用いて作成しました(こちらについては現在記事執筆中です)。その際、深夜に作業していたこともあり、思い付きでドメイン取得もしました。せっかく取得してしまったので、この記事では、ドメインの基本的なお話から、AWS Route53を使った実際の取得手順、そしてWebサイトへの設定までを備忘として残したいと思います。
構成図
今回は以下の構成のうち、Route53とACMの設定が本記事の対象です。
ドメインの基本概念
ドメインとは、インターネット上の住所のようなものです。例えば example.com
や my-website.jp
といった形で表現されます。
なぜドメインが必要なのか?
インターネット上では、すべてのサーバーやサービスに固有の識別子が割り当てられています。例えば、AWS CloudFrontを使ってWebサイトを公開した場合、デフォルトでは以下のようなアドレスが自動生成されます。
https://d1234abcd5efgh.cloudfront.net
このような自動生成されたアドレスは機能的には問題ありませんが、以下のような課題があります。
- 信頼性:自動生成された文字列は一時的なサービスのように見える
- ブランディング:サイト名やサービス名を反映できない
- 将来性:サービス変更時にURLが変わってしまうリスクがある
- プロフェッショナル感:きちんとしたサイトという印象を与えにくい
独自ドメインを取得することで、以下のように信頼性とブランド力のあるアドレスにできます。
https://ryu-ki-website.com
正直、今回のような個人のお遊びレベルでは別に利用しなくても困らないといえば困らないのですが、「あった方がかっこいいやん!」という深夜テンションで(一応上記のプロフェッショナル感を重視して)今回は取得してしまいました…
AWS Route53は、Amazonが提供するDNS(Domain Name System)サービスです。DNSは、人間が覚えやすいドメイン名(example.com
)を、コンピューターが理解できるIPアドレス(192.0.2.1
)に変換する仕組みです。
Route53の主な機能
- ドメイン登録:新しいドメインの取得
- DNS管理:ドメインとIPアドレスの紐付け管理
- ヘルスチェック:サーバーの稼働状況監視
- トラフィックルーティング:地理的ルーティングなどの高度な設定
ドメイン取得にRoute53を選んだ理由
- AWSの学習になる
- AWSの他サービス(CloudFront・ACMなど)との連携が簡単
- 高い可用性と信頼性
- 管理画面が統一されていて使いやすい
前提条件
- AWSアカウントを持っていること
- クレジットカードが登録されていること
- ドメイン名を事前に決めておくこと
費用について
ドメイン取得には年間費用がかかります。主要なTLDの価格目安は以下の通りです。
-
.com
:年間$14 -
.net
:年間$15 -
.org
:年間$14 -
.jp
:年間$90
ステップ1:Route53コンソールにアクセス
- AWSマネジメントコンソールにログイン
- サービス一覧から「Route53」を選択
- 左サイドバーの「登録済みドメイン」を選択
- 「ドメインを登録」を選択
ステップ2:ドメインの検索と選択
- 希望するドメイン名を入力欄に入力
- 「検索」ボタンをクリックして利用可能性を確認
- 利用可能なドメインの中から希望するものを選択
- 「チェックアウトに進む」を選択
利用可能な推奨ドメインも提示してくれるので、第一希望が取れない場合の参考にしましょう。
ステップ3:ドメインの設定
登録期間と自動更新の設定を行います。
- 登録期間:1~10年から選択可能
- 自動更新:個人利用の場合はオフにするのがおすすめ
今回は期間を1年、自動更新をオフに設定しました。
ステップ4:連絡先情報の入力
ドメイン登録には以下の情報が必要です。
- 登録者の連絡先
- 管理者の連絡先
- 技術者の連絡先
- 請求に関する連絡先
下3つの情報については「同上」として設定できます。
「プライバシー保護」のチェックを必ず入れましょう。これにより、個人情報がWHOIS検索で公開されることを防げます。
ステップ5:最終確認と購入
入力内容と利用規約を確認して「送信」を選択します。
ステップ6:認証メールの確認
登録後、以下のメールが届きます。
- 購入確認メール:注文が完了したことの通知
- ドメイン登録確認メール:認証が必要(重要)
認証完了後、以下のようなメールが届きます。
これでドメイン取得は完了です。
独自ドメインでHTTPS通信を行うため、AWS Certificate Manager(ACM)でSSL証明書を取得します。
ACMでの証明書取得手順
- AWSマネジメントコンソールで「Certificate Manager」を選択
- 「リクエスト」を選択
- 「パブリック証明書をリクエスト」を選び、「次へ」を選択
- ドメイン名に取得したドメイン名を入力
- 検証方法は「DNS検証」を選択
- 「リクエスト」を選択
DNS検証の実行
- リクエストした証明書を選択
- ドメイン欄の「Route 53でレコードを作成」を選択
- 検証が自動的に完了します
証明書は必ずバージニア北部(us-east-1)リージョンで作成してください。CloudFrontで使用する場合、このリージョンでないと利用できません。
取得したドメインをCloudFrontで使用するための設定を行います。
CloudFront設定手順
- CloudFrontコンソールでディストリビューションを選択
- 「編集」を選択
- 「Alternate Domain Names (CNAMEs)」に取得したドメインを追加
- 「Custom SSL Certificate」でACMで作成した証明書を選択
- 設定を保存
CNAME(Canonical NAME):別名レコードのことで、あるドメイン名を別のドメイン名に転送する設定です。
最後に、ドメインからCloudFrontにトラフィックを転送するためのDNSレコードを設定します。
Route53でのレコード作成
- Route53「ホストゾーン」で対象ドメインを選択
- 「レコードを作成」を選択
- 以下の設定を行う
- レコード名:空白(ルートドメインの場合)
- レコードタイプ:A
- エイリアス:有効
- トラフィックのルーティング先:CloudFront ディストリビューションへのエイリアス
- ディストリビューション:対象のCloudFrontディストリビューションを選択
- 「レコードを作成」を選択
動作確認
設定完了後、ブラウザで独自ドメインにアクセスして動作確認を行いましょう。DNS設定の反映には最大48時間かかる場合がありますが、通常は数分~数時間で完了します。
証明書エラーが発生する場合
- ACMの証明書がバージニア北部(us-east-1)リージョンで作成されているか確認
- 証明書の状態が「発行済み」になっているか確認
ドメインにアクセスできない場合
- DNSレコードの設定が正しいか確認
- CloudFrontのCNAME設定が正しいか確認
- DNS設定の反映を待つ(最大48時間)
認証メールが届かない場合
- 迷惑メールフォルダを確認
- 連絡先メールアドレスの入力ミスがないか確認
AWS Route53を使ったドメイン取得から実際のWebサイトでの利用まで、一通りの手順を説明しました。個人レベルでの利用であれば年間$14程度で独自ドメインが持てるので、AWSの学習も兼ねて挑戦してみるのもいいのかなと思います。
引っかかりそうなポイントの再確認
- プライバシー保護を必ず有効にする
- 自動更新の設定に注意する
- SSL証明書は必ずバージニア北部(us-east-1)リージョンで作成する
- DNS設定の反映には時間がかかることを理解しておく
今回は「深夜テンション」での衝動的なドメイン取得をきっかけに、どのような作業を実施したかを整理しましたが、結果的にAWSのサービス連携について良い学習になりました。皆さんも計画的に(もしくは衝動的に?)独自ドメインでのWebサイト公開に挑戦してみては?と思いました。
ありがとうございました。
Views: 0