Memo

メモ > サーバ > サービス: AWS > Route 53

■Route 53
ムームードメインなどでドメインを管理している場合、そこからDNSをEC2などに向ければいい ただしロードバランサーを扱う場合など、AWSの機能をフルに利用するならRoute 53で管理できるようにしておくといい Amazon Route 53(スケーラブルなドメインネームシステム (DNS))| AWS https://aws.amazon.com/jp/route53/ AWS再入門2018 Amazon Route 53(DNS)編 | Developers.IO https://dev.classmethod.jp/articles/2018-aws-re-entering-route53/ 注意: すべてのドメインをRoute 53で扱えるわけでは無いかもしれないので注意 以下によると「co.jp」などは扱えない?さすがにそんなことはない?「.jp」とみなされて登録できる?(要調査) Amazon Route 53 に登録できるドメイン - Amazon Route 53 https://docs.aws.amazon.com/ja_jp/Route53/latest/DeveloperGuide/registrar-tld-list.html 注意: ルートドメイン(「www」とかサブドメインのないもの)への設定は、場合によっては扱えないので注意 詳細は後述の「ロードバランサーに独自ドメインを設定」の「注意」を参照 注意: サブドメインにピリオドを含むものは避ける方が無難かもしれない 登録できてHTTPアクセスもできるようになるが、AWS発行のワイルドカード証明書にてSSLアクセスしようとすると、 「test.refirio.net」にはアクセスできたが「test1.test.refirio.net」にはアクセスできなかった(「この接続ではプライバシーが保護されません」の表示になった) 個別に「test1.test.refirio.net」に対して証明書を発行すれば、アクセスできる可能性はあるかもしれないが未検証 また、できたとしても別途証明書が必要なら、管理の手間が増えるのでやはり避けておきたい ■EC2に独自ドメインを設定(ムームードメインの例) ※参考までに、Route 53を使わずに直接AレコードをEC2に向ける方法 Elastic IP でIPアドレスを固定しておく それ以降は、さくらVPSに設定する場合と同じ。wwwの省略も可 ムームードメイン → ドメイン管理 → ドメイン一覧 → (ドメインを選択) → ネームサーバ設定変更 → セットアップ → カスタム設定 → 設定2 名前 種別 内容 A 203.0.113.1 www A 203.0.113.1 しばらく待って、EC2に独自ドメインでアクセスできることを確認する EC2とムームードメインで独自ドメイン運用【ムームーDNSで簡単設定】 http://hivecolor.com/id/3 ■Route53の使用を開始する(ムームードメイン+Route53の例) Route 53 → ホストゾーン → ホストゾーンの作成 から設定 ドメイン名: refirio.net タイプ: パブリックホストゾーン (変更せず) のように入力して「ホストゾーンの作成」ボタンを押す 画面を更新すると、一覧にドメイン名が表示される ドメイン名をチェックで選択 → レコードセットに移動 デフォルトでNSレコードとSOAレコードが登録されているが、これらは編集する必要はない が、必要に応じてNSレコードで「TTL(Seconds)」を900秒にしておくといい(設定内容の反映が早くなる) ドメイン一覧にはじめから表示されているNSレコードの内容をメモしておく これで Route 53 側での設定は完了。以降はムームードメイン側で設定する ムームードメイン → ドメイン管理 → ドメイン一覧 → (ドメインを選択) ネームサーバ設定変更画面で「取得したドメインで使用する」を選択し、ネームサーバを以下のように設定する (NSレコードでは最後にピリオド「.」が表示されているが、これは入力する必要が無い。最後のピリオド「.」は削除して登録する) ネームサーバ1: ns-1234.awsdns-56.com ネームサーバ2: ns-7890.awsdns-12.org ネームサーバ3: ns-345.awsdns-67.net ネームサーバ4: ns-8901.awsdns-23.co.uk 「ネームサーバ設定変更」ボタンを押す もし設定時に「ネームサーバ設定中にエラーが発生しました。」というエラーが表示されたら、アドレスの最後にピリオド「.」を付けていないか確認する それでも駄目なら、Whois情報が変更中になっていないか確認する ムームードメインでネームサーバー設定変更しようとしたらのエラーが出るときの原因と解消方法 - ホームページ伊藤のブログ https://mako110.com/2019/11/26/%E3%83%A0%E3%83%BC%E3%83%A0%E3%83%BC%E3%83%89%E3%83%A1%E3%82%A4%E3%83... Whois情報が変更処理中だとネームサーバー変更が出来ない | アナライズギア開発ブログ https://analyzegear.co.jp/blog/961 なお、登録先のサービスによっては大文字変換されて登録されるようだが問題ない(DNSの仕様上、大文字小文字は区別されない) ■ロードバランサーに独自ドメインを設定する(ムームードメイン+Route53の例) Elastic Load Balancing は固定IPアドレスを持たないため、独自ドメインを設定する場合はAレコードではなくCNAMEレコードを使用する必要がある つまりCNAMEで「develop.refirio.net → develop-123456789.ap-northeast-1.elb.amazonaws.com」のように設定する ただし、CNAMEはルートドメイン(「www」とかサブドメインのないもの)に設定することはできない仕様なので注意 ワイルドカード「*」に対しては設定できるので、そのドメインで色々なことをしない場合はルートドメインに設定できるかも(要検証・余計なトラブルを避けるためにも、この方法は推奨されないかも) ドメインを管理しているサービスによっては、CNAMEだけで独自ドメインを設定できないことがある また、S3に独自ドメインを割り当てたり、ができない 【DNS】www.ありもなしもCNAMEの設定をして同じWebサイトを表示したい at softelメモ https://www.softel.co.jp/blogs/tech/archives/5638 そのワイルドカード必要ですか?CloudFront の CNAME でワイルドカード指定時の制限を理解する | DevelopersIO https://dev.classmethod.jp/cloud/aws/cloudfront-wildcard-cname/ これらは、AWSのRoute53を使えば解決できる 対象ホストゾーンの画面で「レコードセットの作成」ボタンを押し、以下の内容で登録する 名前: (空欄のまま) タイプ: A - IPv4 address エイリアス: Yes エイリアス先: develop-123456789.ap-northeast-1.elb.amazonaws.com (ELBのAレコードを選択。「dualstack.」が自動で付く) 同じ流れで以下も登録する 名前: www タイプ: A - IPv4 address エイリアス: Yes エイリアス先: develop-123456789.ap-northeast-1.elb.amazonaws.com (ELBのAレコードを選択。「dualstack.」が自動で付く) しばらく待って、ロードバランサーに独自ドメインでアクセスできることを確認する [AWS]CakePHP+Elastic Beanstalk+Route53+ムームードメインで独自ドメインを使用する方法 http://arkmemo.blogspot.jp/2013/05/awscakephpelastic-beanstalkroute53.html 営業でも簡単!Route 53の基本設定 http://blog.serverworks.co.jp/tech/2013/03/08/route53_basic/ Elastic IP アドレスの設定とRoute 53から独自ドメインの割当 http://ja.amimoto-ami.com/2013/11/29/elastic-ip-and-route-53/ AWSで独自ドメインを設定したい。 http://qiita.com/mochizukikotaro/items/eb4a8d6cd3b184eaf42a ドメイン名を使ってEC2を運用していたら、ELBのスケールアウトで苦労した話 http://mugenup-tech.hatenadiary.com/entry/2014/05/12/104009 ホスト名では大文字と小文字が区別されますか? https://qastack.jp/server/261341/is-the-hostname-case-sensitive ドメイン名のしくみ - JPNIC https://www.nic.ad.jp/ja/dom/system.html ■ロードバランサーに独自ドメインを設定(2020年8月時点の手順メモ) ※UIが大きく変わっていたので、現時点での手順をメモしておく ※すでにRoute53を使っている状態で、ロードバランサーにサブドメインを割り当てたときのメモ ホストゾーン → refirio.net → レコードを作成 「シンプルルーティング」を選択して「次へ」 「シンプルなルーティング」をクリック レコード名: test エンドポイントを選択: Application Load Balancer と Classic Load Balancer へのエイリアス リージョンを選択: アジアパシフィック(東京)[ap-northeast-1] ロードバランサーを選択: dualstack.refirio-staging-1234567890.ap-northeast-1.elb.amazonaws.com レコードタイプ: A として「シンプルなレコードを定義」をクリック さらに「レコードを作成」をクリック 5分ほど待つと、以下でアクセスできるようになった http://test.refirio.net/ ■S3に独自ドメインを設定(ムームードメイン+Route53の例) 独自ドメインを含んだ名前のBucketにする 具体的には、data.refirio.net のような Bucket Name で Bucket を作成する 標準では http://s3-ap-northeast-1.amazonaws.com/data.refirio.net/images/brownie.jpg http://data.refirio.net.s3-ap-northeast-1.amazonaws.com/images/brownie.jpg のような名前でアクセスできる EC2 → Route 53 → Get Started Now → ホストゾーンの作成 から設定 Name: data Type: CNAME - Canonical name Alias: No Value: data.refirio.net.s3-ap-northeast-1.amazonaws.com のように入力して「Create」ボタンを押す 画面を更新すると、一覧にドメイン名が表示される しばらく待って、以下のようなURLでアクセスできることを確認する http://data.refirio.net/images/brownie.jpg ■別のAWSアカウントにサブドメインの管理権限を委譲する 本番環境用と検収環境用でAWSアカウントを分ける際、例えば 「本番環境は refirio.net というドメイン、検収環境は test.refirio.net というドメイン」 にするとする この場合、検収環境のDNSを調整したければ、本番環境用のAWSアカウントから作業する必要がある これを「サブドメイン test の管理は検収環境のAWSアカウントで行う」ができるようにする [Route 53] 別のAWSアカウントでサブドメインを使えるように権限移譲する | DevelopersIO https://dev.classmethod.jp/articles/route53-transfer-hostedzones-2021/ 本番環境用AWSアカウントのRoute53で、すでにホストゾーン refirio.net が登録されているものとする 検収環境用AWSアカウントで作業 Route 53 → ホストゾーン → ホストゾーンの作成 から設定 ドメイン名: test.refirio.net タイプ: パブリックホストゾーン (変更せず) と入力して「ホストゾーンの作成」ボタンを押す 画面を更新すると、一覧にドメイン名が表示される ドメイン名をチェックで選択 → レコードセットに移動 ドメイン一覧にはじめから表示されているNSレコードの内容をメモしておく 続いて、本番環境用AWSアカウントで作業 ホストゾーン → refirio.net → レコードを作成 レコード名: test.refirio.net レコードタイプ: NS 値: (上の手順でメモしたNSレコードの内容。ただし最後のピリオド「.」は削除せずに登録する) 「レコードを作成」ボタンを押す ■外部のDNSからサブドメインの管理権限を委譲する ※やっていることは「別のAWSアカウントにサブドメインの管理権限を委譲する」と同じ refirio.net の表示はそのままに、dev.refirio.net の権限をAWSのRoute53に移譲する つまり refirio.net がムームードメインで管理されていても、dev.refirio.net に関してはAWS側の操作で内容を変更できる Route 53 → ホストゾーン → ホストゾーンの作成 から設定。 ドメイン名: dev.refirio.net タイプ: パブリックホストゾーン (変更せず) と入力して「ホストゾーンの作成」ボタンを押す NSレコードに以下の値が登録された。
ns-1234.awsdns-56.com ns-7890.awsdns-12.org ns-345.awsdns-67.net ns-8901.awsdns-23.co.uk
ムームードメイン側で dev.refirio.net に以下のとおり登録した(最後のピリオドは無しでいい。) サブドメイン 種別 内容 優先度 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - dev NS ns-1234.awsdns-56.com (空欄) dev NS ns-7890.awsdns-12.org (空欄) dev NS ns-345.awsdns-67.net (空欄) dev NS ns-8901.awsdns-23.co.uk (空欄) 少し待つと、以下のとおり反映された SOAレコードの値は、Route53にあるものが反映されている
$ dig dev.refirio.net any ;; ANSWER SECTION: dev.refirio.net. 300 IN SOA ns-1234.awsdns-56.com. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400 dev.refirio.net. 300 IN NS ns-1234.awsdns-56.com. dev.refirio.net. 300 IN NS ns-7890.awsdns-12.org. dev.refirio.net. 300 IN NS ns-8901.awsdns-23.co.uk. dev.refirio.net . 300 IN NS ns-345.awsdns-67.net. Route53で、dev.refirio.net のAレコードを 203.0.113.1 に向けてみる。 $ dig dev.refirio.net any ;; ANSWER SECTION: dev.refirio.net. 300 IN A 203.0.113.1 dev.refirio.net. 86400 IN NS ns-345.awsdns-67.net. dev.refirio.net. 86400 IN NS ns-1234.awsdns-56.com. dev.refirio.net. 86400 IN NS ns-7890.awsdns-12.org. dev.refirio.net. 86400 IN NS ns-8901.awsdns-23.co.uk. dev.refirio.net. 900 IN SOA ns-1234.awsdns-56.com. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400
DNSが反映されると、http://dev.refirio.net/ にアクセスしたとき http://203.0.113.1/ の内容が表示される つまり、サブドメインの管理移譲ができている サブドメイン権限移譲の手順は、以下の「サブドメインを作成したい既存ドメインの」以降も参考になりそう (登録すべき値は、もちろん解説とは異なる) ムームードメインでの設定例 - ワイメール 公式オンラインヘルプ https://www.y-ml.com/help/option-service/60-editable-ns-record/432-mu-mu-domain.html

Advertisement