【入門編】 ゼロトラスト移行期におけるレガシー認証方式(Kerberos/NTLM)のZTNA側でのラップ手法 – ゼロトラスト&エンタープライズセキュリティ実践ガイド

境界線のない世界へようこそ!レガシーな「身分証」をゼロトラストで守り抜く技術

こんにちは!ネットワークセキュリティの世界へようこそ。

かつて、企業のセキュリティは「城郭」そのものでした。堅牢な壁(ファイアウォール)を築き、その中にいれば安全、外から入るには厳重なチェックが必要……というのが常識でしたよね。しかし、テレワークが当たり前になり、クラウドサービスが普及した今、その城壁はもはや「ザル」のようなもの。

そこで登場したのがゼロトラストです。「誰も信用しない(Never Trust, Always Verify)」という考え方ですが、ここで現場のエンジニアを悩ませるのが「昔ながらのアプリ」の存在です。

今日は、いまだに現役でバリバリ動くレガシーな認証方式(KerberosやNTLM)を、最新のゼロトラスト環境でどう扱うか。その「翻訳テクニック」についてお話しします。

—

なぜレガシー認証が「ゼロトラスト」を邪魔するの?

まずは、KerberosやNTLMがどんなものか、イメージしてみましょう。

これらは、いわば「社内専用の秘密の合言葉」です。一度社内ネットワークに入ってしまえば、「自分はこの部署の誰々です」と提示するだけで、パスワードを何度も入力することなくシステムを使える便利な仕組みです。

でも、ゼロトラストの世界では「社内にいれば安全」という前提がありません。外からアクセスしてきたユーザーに対し、この「合言葉」をそのままネットに流すのは、鍵を丸出しにして歩くようなもの。非常に危険ですよね。

そこで登場するのが「プロキシ(代理人)」です。

—

郵便配達で例える「認証の翻訳」

ゼロトラスト・ネットワーク・アクセス(ZTNA)の仕組みは、凄腕の「郵便局員」が常駐していると考えてください。

1. ユーザー(差出人)が、インターネット越しにプロキシ(郵便局)へ荷物を送ります。
2. プロキシは、そのユーザーが本当に本人か、IDとパスワード(あるいは多要素認証)で厳重にチェックします。
3. 本人確認が取れたら、プロキシはレガシーアプリ(受取人)に向けて、代わりにKerberosやNTLMの「合言葉」を差し出してくれます。

つまり、ユーザーは直接レガシーな方式に触れることなく、安全なモダン認証だけでアプリにたどり着けるというわけです。

—

設定の現場:プロキシによる認証変換

実際にこの仕組みを構築する場合、ZTNAのゲートウェイ(またはコネクタ)で設定を行います。ここでは、一般的なプロキシ設定のイメージをコードで見てみましょう。

# ZTNAゲートウェイの認証変換設定例
proxy_service:
  name: "legacy-app-portal"
  # ユーザーにはモダンなSAML認証を求める
  frontend_auth: saml_provider_01 
  
  # レガシーアプリ側への接続設定
  backend_auth:
    type: "kerberos"
    # アプリ側で必要なチケットを自動発行するための設定
    service_principal_name: "HTTP/legacy-app.internal.corp"
    keytab_file: "/etc/secrets/app.keytab" # 秘密の鍵が詰まったファイル
    
  # アプリへのアクセスルート
  upstream:
    address: "10.0.5.20" # 社内にあるレガシーアプリのIP
    port: 80

ポイント解説

  • frontend_auth: ユーザーが最初に通る門です。ここで最新の多要素認証(MFA)を済ませます。
  • backend_auth: ここが「翻訳」の心臓部です。プロキシが持っている keytab(鍵束のようなもの)を使って、アプリが納得する形式に認証情報を変換して渡します。

—

トラブルシューティング:現場でハマるポイント

この仕組みを導入すると、たまに「認証は通ったはずなのに画面が真っ白」といったトラブルが起きます。現場でよくある原因はこれです。

1. 時刻のズレ: Kerberosは「時間」に非常に厳しいです。サーバーとゲートウェイの時計が数分ズレているだけで、チケットが無効化されて拒否されます。まずは ntp 設定を確認しましょう。
2. SPNの不一致: service_principal_name がアプリ側の設定と1文字でも違えば、アプリは「知らない合言葉だ」と突き返してきます。大文字・小文字も含めて厳密に確認が必要です。

—

まとめ:境界線は「場所」から「人」へ

レガシーな仕組みをゼロトラストに持ち込むのは、一見すると「新しい服に古いパッチを当てる」ような違和感があるかもしれません。しかし、これこそが「既存の資産を活かしつつ、セキュリティを劇的に高める」ための現実解なのです。

物理的な壁を気にする時代は終わりました。これからは、「誰が」「何を」使っているかを、プロキシという名の賢い執事に見守らせる。そんなスマートなインフラ作りを、ぜひ楽しんでみてくださいね。

また次回の記事で、より深いトラブルシューティングの世界でお会いしましょう!ネットワークのパケットは、嘘をつきません。ちゃんと耳を傾ければ、必ず答えを教えてくれますよ。

コメント

タイトルとURLをコピーしました