はじめに
LPIC202の試験勉強でネットワーククライアント管理が出てきました。
難しい言葉が多いので、ネットワーククライアント管理とはなんぞや??を整理します。
一言で言うと
ネットワーククライアント管理とは、「誰が・どの端末で・どのサービスに入れるか」を制御する仕組みです。DHCP、LDAP、PAM、OpenLDAPの4つのコンポーネントが連携して、企業ネットワークにおける統合的なアクセス制御を実現します。
郵便配達システムに例えると
流れの説明
- 役所(DHCP):まず住所(IPアドレス)を割り当てる
- 住民台帳(OpenLDAP):その住所に住んでいる人の情報を管理
- 窓口(LDAPクライアント):住民票を取りに行く
- 警備員(PAM):建物の入口で本人確認
- 受取人(ユーザー):郵便物(データ)を受け取る
理解するための前提知識
認証と認可の違い
- 認証(Authentication):「あなたは誰ですか?」を確認すること
- 認可(Authorization):「あなたは何ができますか?」を確認すること
クライアント・サーバモデル
- サーバ:サービスや情報を提供する側
- クライアント:サービスや情報を利用する側
システム全体の構成図
1. DHCP:ネットワークへの入場券を発行
システム全体の一番左に位置するDHCP!クライアントをネットワークの中に存在させる。人間に住所を与える感じ。
なぜ必要?
手動でIPアドレスを設定すると、重複や設定ミスが発生します。DHCPが自動化することで、誰でも簡単にネットワークに参加できます。
2. OpenLDAP:ユーザー情報の中央管理庫
ディレクトリ構造で、ユーザー情報を整理して管理。変更も一部で済むから楽!
全ユーザーのアカウント情報を一箇所で管理するデータベース
なぜ必要?
各サーバで個別にユーザー管理すると、パスワード変更や退職時の処理が大変です。OpenLDAPで一元管理すれば、一度の変更で全システムに反映されます。
3. LDAPクライアント:情報を取りに行く使者
各端末からOpenLDAPサーバにアクセスして、ユーザー情報を取得します。
なぜ必要?
端末とOpenLDAPサーバの間を橋渡しする役割です。これがないと、端末は外部のユーザー情報を利用できません。
4. PAM:最終的な門番
ログイン時の認証・認可を実際に行う仕組みです。
なぜ必要?
認証方法を柔軟に変更できます。ローカル認証からLDAP認証への切り替えや、多要素認証の追加も、PAMの設定変更だけで実現できます。
実際の動作フロー:ログインの裏側で何が起きているか
┌─────────────────────────────────────────────────────────────┐
│ ログインシーケンス │
└─────────────────────────────────────────────────────────────┘
1. ネットワーク参加
クライアント端末 ──DHCP要求──→ DHCPサーバ
クライアント端末 ←─IP割り当て─ DHCPサーバ
2. ユーザーログイン試行
ユーザー ──ログイン要求──→ PAM
3. 認証情報の取得
PAM ──ユーザー情報問い合わせ──→ LDAPクライアント
LDAPクライアント ──LDAP検索──→ OpenLDAPサーバ
LDAPクライアント ←─ユーザー情報─ OpenLDAPサーバ
PAM ←─ユーザー情報─ LDAPクライアント
4. 認証判定
PAM ──認証結果──→ システム
5. セッション確立
システム ──セッション開始──→ ユーザー環境
ユーザーがログインする際の処理を順番に見ていきましょう。
この仕組みで実現できる3つの制御
1. 「誰が」の制御
- OpenLDAPでユーザーアカウントを一元管理
- PAMで認証ポリシー(パスワード強度など)を設定
- 退職者のアカウントを一箇所で無効化すれば、全システムでアクセス不可に
2. 「どの端末で」の制御
- DHCPでMACアドレスベースのIP割り当て制御
- PAMでホスト単位のアクセス制御
- 特定の端末からのみログインを許可する設定が可能
3. 「どのサービスに入れるか」の制御
- PAMでサービス別の認証設定
- OpenLDAPでグループベースのアクセス制御
- 開発部のメンバーだけが開発サーバにアクセスできる、といった制御が可能
よくある誤解:これらは「〇〇ではない」
DHCPは「セキュリティ機能ではない」
DHCPはIPアドレスを配るだけで、認証機能はありません。不正な端末でもネットワークに参加できてしまうため、別途MACアドレスフィルタリングなどが必要です。
LDAPは「データベースではない」
正確には「ディレクトリサービス」です。一般的なRDBMSとは異なり、読み取り性能に特化した階層構造のデータストアです。
PAMは「認証サーバではない」
PAMは認証の「仕組み」であり、実際の認証情報はOpenLDAPなど外部に保存されます。PAM自体はモジュールを組み合わせて認証フローを制御する役割です。
まとめ:4つのコンポーネントの連携で実現する統合管理
ネットワーククライアント管理によって、クライアントに住所を持たせて、クライアントPCを使うユーザー情報も管理できます。
| コンポーネント | 役割 | 具体的な機能 |
|---|---|---|
| DHCP | ネットワーク参加 | IPアドレスの自動割り当て |
| OpenLDAP | 情報の中央管理 | ユーザー・グループ情報の一元管理 |
| LDAPクライアント | 情報の橋渡し | OpenLDAPへの問い合わせ |
| PAM | 認証・認可の実行 | ログイン制御とアクセス管理 |