## page was renamed from DNS/の基礎 ## page was renamed from DNSの基礎 == DNSの基礎 == <> [[DNS入門]]を済ませた人を対象にしている。  名前解決と言われているDNSの動作をひと通り理解して、  他人に説明できるようになることまでが「基礎」だということにしました。 「浸透いうな」とか「DNSサーバの移転」とかは含みません。 「内部名」や「グルー」も含みません。w でも、DNSは未熟なので、[[DNS/脆弱性]] に触れないのはまずい。[[/脆弱性]] [[DNS/毒盛]] ---- <> 前提:[[DNS入門/初級]]ではDNSの仕組みをひと通り学んだ。 DNSを活用する上で一番重要なのは[[DNS/ゾーン]]だと考えます。 ゾーンとはなにか、をまずきちんとおさえましょう。-- ToshinoriMaeno 2016-10-01 10:56:43 == 復習 == === ドメイン名空間とゾーン ===  [[DNS/ドメイン名空間]]、[[DNS/ゾーン]]   ドメイン空間での名前の衝突をさけるためにゾーンに分けたこと  [[/ゾーン]]は独立した管理の単位だと考えます。 === DNS資源レコード === ドメイン名には資源レコードをもたせることができる。 [[DNS/1/資源レコード/NS]] === ゾーン管理 === 分けられたゾーンを連携させる仕組みを勉強する。(問題なく動くのか、検証しながら)  それには情報交換で使われる[[DNS/1/メッセージ]]を知る必要がある。 [[DNS/1/委譲]] を確認できるだけのスキルも必要か。(浸透遅いと言わないために) ---- [[DNS/索引]] が役にたつと信じる。-- ToshinoriMaeno <> 中級のあとに続くのは[[DNS/上級]]だが、それは現状では私の手にはあまる。 == 目標 == [[/中級1]] では、 {{{ RFC 1034, 1035 を読むことにしよう。 }}}  初級で学んだことの裏付けをする。[[DNS/1/messages]], [[DNS/1/delegation]] そして、修了時には {{{ DNSゾーンサーバが自作できるようになることを目標とする。 }}}  リゾルバー(キャッシュサーバ)の動作を調べるには、  おかしな動作(返答)をするゾーンサーバも動かす必要があるのだが、  既存のゾーンサーバで自由にそのような動作をさせることは難しいからである。w -- ToshinoriMaeno <> DNSの抱える問題も知っておく必要がある。-- ToshinoriMaeno <>  reflector攻撃に使われる弱点、オープンリゾルバーとかホームルータ付属のDNS機能とか。   「水責め」という言葉を聞いたことがあるだろう。 [[DNS/キャッシュポイズニング]]が実行可能になるDNSの弱点を理解する。 == 中級の話題 == 中級の1,2に分ける予定の項目。(3も欲しくなってきた。w) 1. [[DNS/1/messages]] DNS問い合わせと返答 1. [[DNS/1/delegation]] 1. [[DNS/1/資源レコード]] 1. メール配送とMXレコード、SPFレコードなど (spam 対策) ここまで復習でもあり、[[/中級1]]とする。  まずは[[DNS返答]]の種類について学ぶのがよい。 以下の項目を[[../中級1]]と[[../中級2]] に振り分ける。 1. ゾーンサーバの返事がいろいろあること。(実装依存)[[DNS/返答]] 1. [[DNS/1/キャッシュポイズニング]] Kaminsky流攻撃 1. 実装(による違い)の話 [[DNS/djbdns|djbdns]]のすすめ、unbound は? 1. BIND の問題点 (森下dis資料 #dnstudy) http://www.slideshare.net/OrangeMorishita/20111029-part1dnsdis 1. 512バイトを越える返答(EDNS0)など 1. 共用キャッシュサーバの危険性(Google Public DNS はどうか。) 1. glue とはなにか。「グルー、内部名」(JPRS)とはなにか。 このあたりまで来たら、DNSSECとはなにかを考えるのもいいだろう。 この先は[[/中級3]]ということにする。 * [[DNS/1/コンテンツサーバ/移転]] (浸透待ちは都市伝説)    TTLの重要性 [[DNS/「浸透待ち」問題/研究会]] * TTL設定 (運用でカパー) * CNAMEの危うさ (キャッシュポイズニング) * Ghost Domain Names 脆弱性(リゾルバー) * 親子ゾーン同居問題を掘り下げる(共用ゾーンサービス) 1. [[共用DNSサービスの危険性]] (さくら、dozens、value-domain, 21-domains, cowboy, marverick) * visa.co.jp NS ドメイン失効(登録NSに注意) http://www.e-ontap.com/dns/onsenextra2016/ (スライド18) 「ネームサーバ移転のノウハウ」はタイトルとしておかしい。(運用?) {{{ 適切な NS 移転の要点 ケースバイケースであり自分で考えないとダメ (手順は一人歩きするので指南しない) }}}  DNSゾーンサーバの引越しがきちんとできるなら、初級は修了、いや、中級も卒業目前か。   入門で引っ越しを説明しても、理解できないでしょう。 -- ToshinoriMaeno <> == ゾーンサーバからの返答 == 返答メッセージの形式を把握したら、内容を吟味する。  各セクションについて ゾーンサーバーにより、返答が異なることが読み取れるか。 ゾーン例:root-servers がどのような返事をするか。(jp ゾーンのdelegation) == トラブル == lame delegation == DNSの脆弱性の理解 == Kaminsky流攻撃がどういうものかを説明できますか。  Kaminsky流攻撃を使った毒盛の危険性とはどういうものですか。   Mueller型毒盛  中級を修了するには理解は欠かせない。(つまり、ほとんどのひとは修了していない) Ghost Domain Names脆弱性とは? 親子ゾーンの同居にはどういう問題がありますか。 == キャッシュポイズニング脆弱性 == 偽返答を受け取ってしまったら、リゾルバーはどういう動作をするだろうか。 [[/中級2]] ではキャッシュポイズニングについて考える。 その前に偽返答がリゾルバーに届くのはどういう場合なのか。   JPRSのいう「委任インジェクション」を説明できますか。  2008年にMuellerが指摘しているのですが。 ---- 「初心者のためのDNS運用入門」 : これもタイトルがおかしい。  運用は初心者がやるものではないとか。w 運用は初めてかもしれないが、DNSに関しての知識は十分なければだめです。 (未熟な)DNSの運用は素人が手出しすると、怪我します。 -- ToshinoriMaeno <>