前回,同内容の連載を執筆してから8年が経過しました。Directoryの重要性は増す一方です。Directoryの代替となるものではありません。Directoryの機能は一部に限られます。Directoryは企業ネットワークにおける認証サービスの中核として,引き続き活用されていくでしょう。Directory(以下ADと呼びます)への認証統合は,さまざまな場面で必要とされています。した状況の中で,Linuxサーバの認証統合の方式についても,この8年の間にsssdの登場をはじめとするさまざまな変化がありました。本連載では,こうした状況をふまえ,改めてLinuxサーバの認証統合の方法について,最新の状況を解説していきたいと思います。今回と次回で,認証統合を検討する上での前提となる概念やライセンス面の知識と,Linuxにおける認証統合を実現する機構であるPAMおよびNSSの概要について解説します。認証統合を実現する前に認証統合にあたって,まずは共通的な概念やライセンス上の留意点について押さえておきましょう。通常は「認証統合」という言葉で一括して扱われることが多いのですが,Linuxとの認証統合を検討する上では,ユーザ名やホームディレクトリの情報といったユーザ情報の連携と認証情報(パスワードなど)の連携を区別して考える必要があります。「連携」という表現をしましたが,統合の方法としては,都度ADを参照して情報を取得する連携と,情報自体をLinux上に複製してしまう同期を区別する必要があります。次回説明するpam_krb5を用いた認証統合では認証情報の連携のみを実現します。この場合,ユーザ情報の連携はないため,図1のようにユーザ自体はLinux上に作成済のユーザが参照されます。認証情報のみを連携する認証統合また「同期」ではなく「連携」のため,何らかの要因でADが参照できなくなると,認証を行うことはできません。今回説明する認証統合の方式の大半は,ユーザ情報と認証情報の両方を連携します。この場合,図2のようにLinux上のユーザ情報は参照されず,ADに存在するユーザが自動的にLinux側で認識されて,ログインが可能となります。ユーザ情報と認証情報の両方を連携する認証統合クライアントアクセスライセンス(CAL)についてマイクロソフト社は,サーバに「アクセス」する「デバイス」もしくは「ユーザ」ごとに,CALと呼ばれるライセンスが必要であるという定義をしています(※1⁠)⁠。この「アクセス」ですが,「⁠マルチプレキシング」という概念で,間接的なアクセスについてもライセンスの対象になるという定義が行われています。そのため,Linuxサーバの認証をWindowsサーバ上に構築されたADで行うように認証連携した場合,そのLinuxサーバにアクセスするユーザやデバイスは,間接的にWindowsサーバにアクセスするという扱いとなるため,ライセンスが必要となります(※2⁠)⁠。DirectoryのドメインコントローラであるWindowsサーバとの間で直接の通信は必要ないケースもあります。した場合でも,Windowsクライアントもしくは認証対象のユーザごとにライセンスが必要となります。Linuxサーバ自体ではなく,末端のデバイスもしくはユーザに対してライセンスが必要となる点に注意してください。※1)「インターネット経由で,かつ認証なしでアクセスする場合のみCALは不要である」というのがマイクロソフトの定義ですので,認証を行っている時点でCALの対象となります。詳細はマイクロソフト社の各種ドキュメントを参照してください。※2)CALの節約のためにLinuxサーバの活用を検討する場合は,Windowsサーバ上で構築されたADに認証を統合する時点で節約が不可能となってしまいます。Sambaで構築したADを利用するなど,Windowsサーバを利用しない形にすることで,CALを節約することは可能です。ADの実体と認証機構Linuxとの認証連携を実現するうえでは,Windowsの世界では隠蔽されているADの実体を理解しておく必要があります。Directoryの実体ADの実体は,Kerberos認証によりアクセスされるLDAPディレクトリサービスです。ドメインに参加しているユーザやコンピュータは,ログオン(サインイン)もしくは起動時にKerberos認証により認証されます。Center)として機能し,ADのドメインはKerberos認証上のレルム(realm)として認識されます。このため,日本ではあまり一般的ではありませんが,Linuxサーバなどで構築されたレルムとの間で信頼関係を締結することも可能です。ADの実装では,コンピュータがKerberos認証を行う際のユーザ名相当の概念(プリンシパル名)として,コンピュータのFQDN名を用います。ADが動作する上ではDNSを用いたFQDN名の名前解決が必須なため,DCは通常DNSサーバとしても機能させます。Kerberos認証を行う上では時刻同期も必要なため,通常DC上がNTPサーバとして機能し,時刻同期を行います。この他ADは,互換性維持やAD外からのアクセスに対応するため,NTLM認証と呼ばれる認証形式にも対応しています。認証後は,LDAPを用いてADにアクセスし,ディレクトリ上の各種情報を取得するほか,マイクロソフト社固有のファイル共有プロトコルであるSMBを用いてサーバ上のファイル共有にアクセスし,グループポリシーの定義ファイルなどの各種ファイルを取得します。LDAPサーバとしてのDCは,OpenLDAPなどのLinuxで一般的な実装によるLDAPサーバと異なり,デフォルトでは匿名アクセスは禁止されており,基本的にはSASLという機構を経由して,前述したKerberos認証で認証の上アクセスする必要があります。これ以外の方法としては,平文認証に相当する簡易認証(シンプル認証,シンプルバインドと呼ばれることもあります)や,同じくSASL経由でMD5によるダイジェスト認証を用いて認証することもできますが,セキュリティ上は推奨されません。そのため,LDAPを用いてパスワード情報の書き込みを行う際には,クライアント証明書を用いたLDAPSが必須となっています。このほか,各種管理用の通信ではMS-RPCと呼ばれるプロトコルを用いてDCにアクセスします。MS-RPCは大量のハイポート(1024以上のポート)を使用しますので,ADのDC間の通信をポート単位で制御することはあまり意味がなく,推奨されません。Kerberos認証上の制約など,いくつかの理由により,ドメインに参加している各コンピュータ(クライアント-サーバおよびサーバ同士)間の通信では,静的NATを含め,NATがサポートされていません。認証自体からは外れますが,ADが存在するネットワークのネットワーク設計やアクセス制御を行う上では,こうした点にも留意する必要があります。駆け足で解説しましたが,このように,ドメインコントローラは多種多様なサーバとして機能しています。次回は,Linux側の認証機構につい解説します。もとのぶ)大学卒業後,株式会社NTTデータに入社。数年間UNIX上でのプログラム開発に携わった後,クライアント/サーバシステム全般に関する技術支援業務を行う部署に異動し現在に至る。「日本Sambaユーザ会」スタッフなどを務め,オープンソース,Microsoft双方のコミュニティ活動に関わるとともに,各種雑誌への記事執筆や,講演などの活動を行っている。2005年6月には「Sambaのすべて」を出版。2019」を開催しました。DAY1・DAY2の様子を注目セッションとともにお伝えします。LINEのエンジニア3名がイベントに先駆けて見どころを紹介します。コードの安全性・安定性を高める開発サイクル~テスト管理の効率を上げ,脆弱性診断を自動で行う~本連載では,連載「業務を改善する情報共有の仕掛け」を受けつつ,安全性・安定性を加えた開発サイクルについて考えていきます。若者世代から圧倒的な人気を誇るライブ配信&動画投稿コミュニティアプリ「MixChannel」(ミクチャ)の裏側(レコメンドシステムやサーバサイド開発など)について解説していきます。その他の連載CSS3アニメーションでつくるインターフェイス表現CSS3によるアニメーション表現を紹介していきます。その中でも,幅広い読者に応用してもらえるだろうインターフェイスを主なお題とします。MySQL道普請便り本連載では,MySQLを使ったアプリ開発・運用に関するノウハウをご紹介していきます。RecipeUbuntuの強力なデスクトップ機能を活用するための,いろいろなレシピをお届けします。JavaScriptセキュリティの基礎知識JavaScriptに関するセキュリティ上の問題はどこで発生し,どうすれば防ぐことができるのか?について解説していきます。〜システムをきちんと運用するための基礎知識システムは「作って終わり」ではなく,運用の中でさまざまな問題が発生します。問題の発生に備えて事前にどのような対応をしておくべきなのか,問題発生時に何をしなければならないのか,ポイントを解説していきます。きたみりゅうじの聞かせて珍プレーソフトウェア開発の現場で体験したトホホな失敗,思わずうなる珍プレーをきたみりゅうじ氏が四コママンガで紹介。Linuxのメンテナンスの傍ら,Linuxやオープンソースソフトと日々を過ごす著者が,その魅力とつきあい方を,エッセイ風味でお届けします。PRESS特別編集部員,さわやか笑顔のスーパーハカーはまちちゃんとネット大好き14歳わかばちゃんが,毎号,読者の皆さんから寄せられたおたよりを紹介します。皆さんの日頃の悩みにも答えちゃいますよ。]メールでのお知らせメールで次の案内をお送りしております。メールの配信を希望する方は,利用したい項目をチェックしてメールアドレスを入力し,[登録]ボタンをクリックしてください。UPDATES[ほぼ週間に1回]新刊メールマガジン[ほぼ週間に1回]電脳会議の各号案内[ほぼ1ヵ月半に1回]※変更する場合や停止する場合は,登録情報変更ページをご覧ください。※登録いただいたメールアドレスには,そのお知らせ以外,配信いたしません。Ltd.ページ内容の全部あるいは一部を無断で利用することを禁止します。個別にライセンスが設定されている記事等はそのライセンスに従います。