DNS用語集

TSIG(トランザクション署名)とは?

Abstract isometric UI showing network ranges, usage bars, region names (EMEA/APAC), and a purple "Deploy" button
主なポイント要点はAIの支援により生成されています。自動生成された要約には、時折誤りがあったり、重要な文脈が抜け落ちたりする場合があるため、完全な情報を得るには、必ずブログ記事の全文をご参照ください。

TSIG(Transaction Signature)は、共有秘密鍵と鍵付きハッシュを使用して、2つの既知の当事者間のDNSメッセージを認証するDNSセキュリティメカニズムであり、主にゾーン転送と動的更新を保護します。これは、脆弱な送信元IPベースの検証を暗号認証に置き換え、正しい鍵を保持する当事者のみが機密性の高いDNS操作を実行できるようにします。 適切な実装には、運用上の障害やセキュリティ上のリスクを回避するために、クロックの同期、慎重な鍵管理、安全な鍵の配布、およびアクセスルールへの鍵の明示的な紐付けが必要です。

  • TSIGはRFC 8945で定義されており、コンテンツ自体を暗号化することはないものの、キー付きハッシュ演算を用いた共有秘密鍵を使用して、DNSメッセージの認証を行いながらメッセージの完全性を保護します。
  • サーバー間のクロックドリフトにより、鍵が正しくてもTSIG署名付きのリクエストが時刻不一致エラーで失敗するため、信頼性の高いゾーン転送や動的更新にはNTP同期が不可欠です。
  • 複数のサーバー間で鍵を共有したり、機密情報を平文で保存したり、認証情報のローテーションを怠ったりといった不適切な鍵管理慣行は、鍵が漏洩した場合に運用上およびセキュリティ上のリスクを著しく拡大させます。

TSIGの概要

AttributeValue
Full nameTransaction Signature
CategoryDNS security mechanism
Defined inRFC 8945, which obsoletes the original specification in RFC 2845
Primary useAuthenticating zone transfers, dynamic updates and other DNS messages between parties that share a key
Related termsDNS, Dynamic DNS, Zone transfer, DNSSEC, Secondary DNS

TSIGの仕組み

TSIGは、共有秘密鍵と鍵付きハッシュを使用して、DNSメッセージが鍵を保持する当事者から送信されたものであり、転送中に改ざんされていないことを証明します。双方とも、事前に同じ鍵名、アルゴリズム、および秘密鍵が設定されている必要があります。

  1. 鍵の共有:管理者が秘密鍵を生成し、両方のサーバー、またはクライアントとサーバーの両方で、同じ鍵名、アルゴリズム、および秘密鍵を設定します。
  2. メッセージへの署名:送信者は、DNSメッセージと、タイムスタンプを含む特定のTSIGフィールドに対して鍵付きハッシュを計算し、その結果をTSIGレコードとしてメッセージに追加します。
  3. 署名の検証:受信側は名前で鍵を検索し、ハッシュを再計算して、受信したハッシュと比較します。一致しない場合、メッセージは拒否されます。
  4. 時刻の確認:受信側は、署名付きタイムスタンプが許容時間枠内に収まっているかどうかも確認します。これにより、キャプチャされたメッセージのリプレイが制限されます。
  5. 応答への署名:受信側は同じ鍵を使用して返信に署名するため、リクエスト送信者はその回答が期待したサーバーから送信されたものであることを確認できます。

TSIGはメッセージの認証と完全性の保護を行いますが、メッセージを暗号化することはありません。共有秘密鍵に依存しているため、公開解決ではなく、既知の当事者間の通信に適しており、双方の時計は適度に同期されている必要があります。

エンタープライズネットワークにおいてTSIGが重要な理由

ゾーン転送や動的更新は、DNSサーバーが公開するデータを変更します。サーバーが送信元IPアドレスのみに基づいてこれらのリクエストを受け入れる場合、そのアドレスを偽装または共有できる者なら誰でも、ゾーンをコピーしたりレコードを改ざんしたりすることが可能になります。TSIGは、この脆弱な検証を暗号的な検証に置き換えるため、各リクエストには、権限のある当事者のみが保有する鍵で署名する必要があります。

TSIGはRFC 8945で定義されており、これはRFC 2845の元の仕様に取って代わったものです。 TSIGはDNSサーバーソフトウェアで広くサポートされており、プライマリサーバーとセカンダリサーバー間、およびDHCPサーバーと動的更新を行うDNSサーバー間の通信を保護するための一般的な手段となっています。これは2つのエンドポイント間のメッセージの完全性を保護するものであり、リゾルバーによる検証のためにゾーンデータに署名を行うDNSSECとは別個のものです。

鍵管理の不備が主な運用上のリスクとなります。多数のサーバーで共有されたり、ローテーションが行われなかったり、設定ファイルに平文で保存されたりしている鍵は、単一の漏洩による影響を拡大させます。サーバー間のクロックドリフトにより、有効なメッセージが拒否されることがあり、これによりゾーン転送が気付かれないまま停止し、セカンダリサーバーが古いデータを提供し続ける事態を招く可能性があります。 鍵の所有権を文書化し、シークレットをローテーションさせ、転送の失敗を監視することで、TSIGの信頼性を維持できます。

TSIGと関連用語の比較

TSIG 対 DNSSEC

TSIGは秘密鍵を共有する2者間のメッセージを認証するのに対し、DNSSECは公開鍵署名を使用して、任意のリゾルバーがDNSデータの真正性を検証できるようにします。DNSSECとは?

AttributeTSIGDNSSEC
CryptographyShared secret key and keyed hashPublic-key signatures
What it protectsThe transaction between two DNS partiesThe DNS data in the zone itself
Typical useZone transfers and dynamic updatesValidating answers from authoritative servers
Key distributionConfigured manually on both sidesPublished in the DNS and anchored in the chain of trust
Who verifiesOnly the party holding the shared keyAny validating resolver

TSIGに関する一般的な問題

TSIGにはタイムスタンプが含まれており、受信側は許容時間枠外のメッセージを拒否します。サーバーの時計にずれが生じると、キーが正しくても、転送や更新が「時間エラー」で失敗します。通常、NTPを使用して双方の時計を同期させることで、この問題は解決します。

キー名、アルゴリズム、およびシークレットは、双方で完全に一致している必要があります。シークレットの入力ミス、アルゴリズムの不一致、またはキー名の綴りの違いがあると、「署名不備」または「未知のキー」エラーが発生し、リクエストは拒否されます。

キーを定義したからといって、それ自体がキーの使用を必須とするわけではありません。ゾーンが依然として送信元 IP アドレスによる転送や更新を許可している場合、署名のないリクエストも成功する可能性があります。アクセスルールでは、キーを明示的に指定する必要があります。

チケットに貼り付けられたシークレット、複数のゾーンで共有されているシークレット、またはローテーションが行われていないシークレットは、1つでも漏洩すると影響範囲が広がります。関係ごとに個別のキーを使用し、スケジュールに従ってローテーションを行うことで、被害を最小限に抑えることができます。

TSIGはメッセージに署名を行いますが、暗号化は行いません。転送中に送信されるゾーンの内容は、TLSなどの手段でトランスポート層も保護されていない限り、通信経路上で読み取られる可能性があります。

統合型DDIがネットワーク運用をいかに簡素化するかを参照

自動化、可視性、制御機能が組み込まれた単一のプラットフォームから、DNS、DHCP、IPアドレスを管理できます。

TSIG FAQ

関連用語

Network visualization showing IP addresses and interconnected nodes representing IPAM infrastructure and data flow

組織のネットワーク向けに、ガバナンスが確立され、監査対応可能なIPAMワークフローおよび承認モデルを構築する

ガバナンスが確立され、監査対応が可能なIPAMワークフローを実現するIP管理ソリューションをご覧ください。企業ネットワークチーム全体で、範囲を限定した承認と完全な監査証跡を実現します…

Read more
コンテンツハブ

OSIモデルの理解:7層構造におけるDNSとIPアドレスの位置づけ

OSIモデルの7つの層と、DNSおよびIPアドレスがそれらにどのように位置づけられるかを理解しましょう。BlueCatでネットワークアーキテクチャの基礎を学びましょう。…

Read more
Fiber optic cables with glowing blue and cyan light points representing high-speed network data transmission and connectivity

IPv6 およびデュアルスタック企業ネットワーク向けの DNS および IPAM のスケーリング

デュアルスタック企業ネットワーク向けに DNS および IPAM を拡張します。Micetro が、統合された DNS、DHCP、および IPAM…

Read more
Hand holding digital pen interacting with holographic network diagrams and data visualization on laptop screen, representing

Embedding DNS, DHCP, and IPAM into Ansible and Git-based infrastructure-as-code pipelines

Embedding DNS, DHCP, and IPAM into Ansible and Git-based IaC pipelines with Micetro turns address and record changes into versioned, reviewable steps

Read more
ポッドキャスト

ポッドキャスト:AIがエンタープライズソフトウェア開発をどう変えているか

AIはネットワークの自動化を変革しますが、安全な導入には、サービス停止を防ぐための堅固なソフトウェア開発手法、テスト、およびドメインの専門知識が必要です。…

Read more
ポッドキャスト

ポッドキャスト:ネットワーク運用においてオープンプラットフォームが重要な理由

オープンプラットフォームとAPIファーストのアーキテクチャにより、ハイブリッド環境の企業全体で、インテリジェントなネットワーク運用、自動化、そしてAI駆動のワークフローが実現されます。…

Read more
Network engineer reviewing LiveNX flow and telemetry data visualized across server racks in a hybrid multicloud environment

LiveAssistを活用して、すでに保有しているLiveNXのデータから答えを引き出しましょう

LiveNX用のAI搭載アドオン「LiveAssist」が、ネットワークデータを迅速で分かりやすい回答に変換し、わずか数日でその価値を実感できる仕組みについてご覧ください。…

Read more

関連記事