第 04 章 ネットワーク、DNS & 暗号 管理画面: #pNetwork

pfSense、OPNsense、HAProxy & SSL ゲートウェイの背後での運用

多くのエンタープライズ環境では、Web サーバーと nextxch を共有の境界ファイアウォール (pfSense、OPNsense、Sophos) や SSL/HAProxy ゲートウェイの背後にある社内 VLAN で運用しています。Hairpin NAT (NAT リフレクション) がないと、ネットワーク内部から自社のパブリック WAN IP 宛てに送信されたパケットはゲートウェイでタイムアウトします。

運用のヒントとアーキテクチャに関する注記

共有ゲートウェイの背後で、以前ポート チェックが 'Timeout' と報告していたのはなぜですか? NAT リフレクションのない同じ pfSense ファイアウォールの背後からプローブを送信した場合、外部のインターネット クライアントは正常に接続できるにもかかわらず、WAN ループバック パケットが破棄されていました。nextxch v1.2.4 はこの構成を自動的に検出して補正します。

pfSense / OPNsense の推奨 Split-DNS & プロキシ設定

スプリット DNS により、内部ユーザーの WAN ヘアピン経由をなくし、実際の LAN 送信元 IP を保持できます。

リファレンス / 構成
# 1. pfSense -> Services -> DNS Resolver -> Host Overrides:
Host: mail    Domain: firma.de    IP: 172.16.0.55 (Interne LAN/DMZ-IP)

# 2. Reverse-Proxy (Nginx / HAProxy) Timeout für ActiveSync Ping (TCP 443):
proxy_read_timeout 960s;
proxy_send_timeout 960s;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;

設定、既定値 & ベスト プラクティス

設定 / 場所 説明 既定値 本番環境のベスト プラクティス
pfSense / OPNsense: Split-DNS (DNS Resolver) WAN 経由のヘアピンではなく、社内クライアントや同じネットワーク内のサーバーに対して mail.company.com を社内 LAN/DMZ IP (例: 172.16.0.55) に直接解決します。 Im Gateway konfigurieren 推奨のベスト プラクティス第 1 位です。Unbound/DNS Resolver に mail.company.com を社内 LAN IP にマッピングするホスト オーバーライドを追加すると、ホップなしの速度と実際のクライアント IP が得られます。
pfSense: NAT Reflection (Pure NAT) スプリット DNS を使用しない場合に、内部ホストがパブリック WAN IP 経由でポート フォワードされた WAN サービスに到達できるようにします。 Deaktiviert in pfSense 社内ホストからパブリック WAN IP にアクセスする必要がある場合は、System -> Advanced -> Firewall & NAT で Reflection 用に Pure NAT + Automatic Outbound NAT を有効にします。
SSL-Gateway / Reverse-Proxy für Port 443 エッジ ゲートウェイ (HAProxy / Nginx) で HTTPS を終端し、Webmail、管理、CalDAV/CardDAV、ActiveSync を nextxch に転送します。 Direkt oder Reverse-Proxy ActiveSync Ping のロング ポーリングのため、ゲートウェイの読み取り/アイドル タイムアウトを 900 秒以上に増やし、X-Forwarded-For と X-Forwarded-Proto ヘッダーを転送してください。
Smtp/Imap:EnableProxyProtocol (HAProxy v2) TCP ポート 25、465、587、993 で HAProxy PROXY Protocol v1/v2 ヘッダーから実際のリモート クライアント IP を抽出します。 false (Direktes NAT) 標準的な pfSense/iptables の DNAT ポート フォワード (送信元 IP がすでに保持される) では FALSE のままにしてください。HAProxy が明示的に send-proxy-v2 を送信する場合にのみ有効にしてください。