アイデンティティ管理(2)相互運用上のギャップを埋める

*本記事は「Red Hat Enterprise Linux Blog」に掲載された記事を翻訳したものです
原著:「Closing the Integration Gap
執筆:Dmitri Pal
翻訳:ソリューションアーキテクト 森若 和雄

この記事は、LinuxシステムをActive Directory(AD)環境に統合することについてのブログの連載2回目です。前回の投稿では、食洗機の話に加えて、もう少しまじめにいくつかの原則について議論しました。今回はLinuxシステムとADの統合時にどのようにギャップがあらわれるのか、従来どのように捉えられていたか、どのような選択肢が利用できるのかについて見ていきます。

まず、歴史的な視点からはじめましょう。ADが登場する前は、LinuxおよびUNIXシステムは、中央のLDAPサーバーにアイデンティティ参照と認証のために接続して情報をやりとりしていました。これらの接続は素朴なもので、環境は(現在のものとくらべて)それほど複雑ではありませんでした。このソリューションは、その時点では十分なものでした。そしてその後、ADが誕生しました。

ADは、その中にいくつかのサービス(具体的にはLDAP, Kerberos, DNS)を統合しているだけでなく、アイデンティティ集合間のより複雑な関係にも対応しています。たとえば、伝統的にLDAPサーバー(もしくはレプリケーションにより情報を共有しているLDAPサーバー群)を1つの名前空間と考えてきました。ADは単に複数の名前空間を扱えるだけでなく、名前空間どうしの複雑な関係を管理できます。これらの特性は実世界の問題を解決し、大きく以下2点の結果をもたらしました:(1)ADが企業での支配的なアイデンティティソリューションになりました。(2)より複雑な環境が作れるようになりました。アイデンティティ情報はフォレストと呼ばれる複数の異なるドメインまたは(かつ)ドメイン群の集合として構成が可能となりました(下図参照)。

f:id:mrwk:20201111150552p:plain

ADが企業のデータセンターで急速にはずみをつけていく中で、素朴なLinuxネイティブ統合ツールは徐々に旧式で、不十分なものになってきました。これは、新しいツールが登場する機会を創り出しました。オープンソース側では、最も広く使われる統合ソリューションはSamba winbindとなりました。Sambaプロジェクトは、Microsoftの技術をオープンソースで再実装することを第一の目標としています。Sambaは実際には関連する複数のコンポーネントと技術を組み合わせたものです。Samba開発のある部分はSMBファイルサーバーとCIFSサーバー(Samba FS)に注力しており、別の部分はADに相当するドメインコントローラー(Samba DC)に注力していて、さらに別の部分はLinuxと他のシステムをADに接続する(Samba winbind)に注力しています。

初期のSamba winbind開発はLinuxをADに統合する基本的なオープンソースソリューションを作りだし、これはその時点では満足のいくものでした。(Samba winbindとその後継であるSSSDについては、このトピックについての連載の中でまた扱いますが、今回はADとLinuxの接続性についてのおおまかな概要を続けましょう。)

商用側では、市場に複数のスタートアップが登場しました。Vintella, Likewise, Centrifyといった会社です。これらのソリューションの主な目的は、AD世界とLinux、UNIX、そしてMacといった非Windowsシステムのギャップを埋めること、およびADが優位な環境に非Windowsシステムを自然に混在させることでした。

Sambaと商用ベンダーが統合の欠けた部分を活発にそれぞれのソリューションで埋めている間、コアLinuxはこのギャップに注力していませんでした。しかし2007年に、FreeIPAプロジェクトが始まり、それに続いて2009年、SSSDプロジェクトがFreeIPAプロジェクトから枝分れしました。FreeIPAとは何でしょう? FreeIPAは、基本的にはADと同等のものですが、LinuxおよびUNIXシステムでの必要性にフォーカスしています。はっきりさせておくと、FreeIPAはADの置き換えではありません(SSSDと同じように、FreeIPAについても後のblog投稿で扱います)。強調しておくと、SSSDとFreeIPAはネイティブのLinuxプロジェクトで、相互運用上のギャップを埋めるものです。これらのプロジェクトが成熟してSambaやCentrifyにひけをとらない機能を提供するまでにはしばらくかかりましたが、およそ6年の開発ののち(この記事は2015年1月に書かれたものです)、現在ではFreeIPAとSSSDはよく確立されたソリューションとなっています。

f:id:mrwk:20201111150639p:plain

上の年表をみると、ここ6〜7年の間にLinuxはADとの統合に関連するネイティブ機能を順調に手にしており、商用ソリューションの必要性を大幅に下げていることは明らかです。食洗機のたとえ(前回の投稿をご覧ください)に戻れば、なぜ食洗機本体についてくるのに、サードパーティのホース、管継手、アダプターを買うのでしょう? あなたの買った食洗機には、任意のパイプに繋ぐために必要なもの一式がついてくるのです。そして(既存の企業IT環境に)Linuxシステムを統合する話にこのたとえを用いると、LinuxシステムをADに接続するために必要なもののほとんどはSSSDとFreeIPAに含まれているのです。もし追加の機能が必要であれば、(追加の費用はかかりますが)追加のホース、管継手、アダプターを商用ベンダーから買うことができます。そうする十分な理由があるのであれば。時が過ぎるにつれて、Linux OS(Red Hat Enterprise Linuxなど)のネイティブ機能は必然的に進歩していきます。ひょっとするとサードパーティのソリューションは不要になるかもしれません。商用ソリューションがまだ死に絶えていないことは明らかですが、絶えつつあると言ってもよいでしょう。

まとめ
Linuxシステム(Red Hat Enterprise Linuxのような)は、現在AD統合のためのツールを含んでいて、これにより企業ユーザーは使いはじめるにあたっての追加費用(と時間)を節約することができます。次回の投稿では、統合における着眼点について見ていきます。というのも、LinuxシステムをAD環境に接続するのは、食洗機を配管するのに比べてやや複雑だからです。

 

* 各記事は著者の見解によるものでありその所属組織を代表する公式なものではありません。その内容については非公式見解を含みます。