ウェブアプリケーションをAWSに移行しています。オンプレミスネットワークとAWSを接続するために、VPN接続を作成しました。これは問題なく動作します。
オンプレミスでは、MS AD(2008 R2)があり、(特に)ourcompany.tld(実際のドメイン名ではありません)に対する権限のあるサーバーです)
AWSでは、すべての内部サービスに* .dev.ourcompany.tldのような名前を付けます。このDNSは、内部route53によって解決される必要があります。
AWSでは、パブリックリソースの名前は* .ourcompany.tldです。このDNSは、弊社のネームサーバーによって解決されます。 (ワーキング)
オンプレミスネットワークでは、someserver.dev.saa.nlを解決できるようにしたいと考えています。これを実現するには、MS ActiveDirectoryに、このドメイン名をAWSで検索するように指示する必要があります。
AWS内部route53には、AWS VPC内からのみアクセスできます。 ADはこれに直接到達できません。
AWS内部route53には、権限のないVPC DNSフォワーダーを介してのみアクセスできます。
MS ADでは、スタブゾーンと条件付きフォワーダーに信頼できるソースが必要です。
私たちがやったこと/試したこと
AWSドキュメントを検索しました。私たちが見つけた唯一の正しい解決策は https://aws.Amazon.com/blogs/security/how-to-set-up-dns-resolution-between-on-mise-networks-and-aws- using-aws-directory-service-and-Amazon-route-53 / ただし、フランクフルト地域(規制に拘束される)には単純なADがありません。 AWSでの完全なMS ADも機能しますが、DNSフォワーダーに月額€300以上を支払う準備はありません
AWSサポートにお問い合わせください。 1週間の長い待機の後、彼らはまだ問題を理解していないようです。事業支援計画中です。
誰でも、既存のADを使用してこれを解決する方法をいくつか教えていただけますか?
更新:AWS内部ルート53への別のドメインのルーティングは、条件付き転送でエラーを無視するだけで機能します。ただし、サブドメインの場合は、委任を行う必要があります。委任は照会時にSERVFAILをスローします。
更新2:可能ではないようです。また、AWSテクニカルサポートも中止しました。これで、すべてのサーバーとサービスに別のドメイン名を登録し、ADで固定DNSを使用して、IT部門以外が使用するサービスをセットアップしました。 EC2のプロキシを使用して、プロキシをLB DNS名に変換します。
それが正しければ、2つの制約があります。
これらの制限により、1)ADにRoute53と直接通信するように考えさせ、2)Route53にDNSリクエストがVPC内のIPからのものであると考えさせるソリューションを設計する必要があります。
考えられる答えの1つはNAT-ネットワークアドレス変換です。これが私が行う方法です。
小さなEC2インスタンスを起動します。 Amazon Linuxおよびインスタンスのネットワーク設定のDisable "Source/Destination Check"。多分それにも固定プライベートIPアドレスを与えます。また、セキュリティグループで着信TCPおよびUDPポート53を許可します。
/etc/sysctl.conf
を設定して、net.ipv4.ip_forward=1
でIP転送を許可します
インスタンスのiptables
を構成して、ポート53のすべての着信トラフィックをRoute53にリダイレクトします。つまり、VPC-CIDR + 2にリダイレクトします。何かのようなもの:
iptables -t nat -A PREROUTING -p tcp --dport 53 \
-s <on-prem-cidr> -j DNAT --to <VPC-CIDR+2>
iptables -t nat -A PREROUTING -p udp --dport 53 \
-s <on-prem-cidr> -j DNAT --to <VPC-CIDR+2>
ADがこのインスタンスのプライベートIPを指すようにします。 DNSトラフィックはNAT処理され、Route53に転送されます。Route53は、それがVPCからのものであると見なして応答します。また、信頼できるネームサーバーから直接回答が得られるため、ADも満足します。
それが役に立てば幸い:)
権限のあるサーバーはオンプレミスのMS ADではありませんでしたが、同じ状況でした。この問題を解決するために、Amazon VPC DNSをバックエンドとして使用して権威のあるネームサーバーを動作させる CoreDNSのプラグイン を記述しました。現在、私たちの環境で動作しています。
次のようにして行うことができます。