Chapter 36. NT4 PDC からSamba-3 PDCへの移行

John H. Terpstra

Samba Team

April 3, 2003

Table of Contents

計画と開始方法
目的
移行プロセスの手順
移行オプション
うまくいくための計画
Samba-3実装の選択

これは、NT4ドメイン制御からSamba-3ベースのドメイン制御に移行する事を手助けするための、 大まかなガイドである。

計画と開始方法

ITの世界では、しばしば、すべての問題は、貧弱な計画のために発生すると言われている。 この言葉の結果として、予期され、計画される問題はすべてではない。さらに言うと、 計画が良いと、ほとんどの、致命的なタイプの状況を予想できると言うことである。 In the IT world there is often a saying that all problems are encountered because of poor planning. The corollary to this saying is that not all problems can be anticipated and planned for. Then again, good planning will anticipate most show-stopper-type situations.

Microsoft Windows NT4ドメイン制御からSamba-3ドメイン制御環境への移行を考えている場合、 詳細な移行プランを作成すべきである。そこで、ここでは、移行を進めるために手助けとなる、 いくつかの点について説明する。

目的

多くの組織における重要な目的は、可能な限り副作用がないように、Microsoft Windows NT4 からSamba-3ドメイン制御に移行を行うことである。移行手順において体験する挑戦の1つは、 新しい環境でも状態がそのまま残っているという、説得力のある状態の提供であろう。 オープンソース技術を導入する人は、最初にトラブルの徴候があったときに、Microsoftベースの プラットフォームソリューションに戻せ、という圧力を体験するだろう。

Samba-3が制御しているネットワークに移行を試みる前に、可能な限り、周りすべてから、 変更に対する、承認を得る努力を行うようにする。なぜ組織において 変更が重要であるかを正確に理解しておくこと。変更を行う動機付けの例としては以下がある:

  • ネットワーク管理の容易性向上。

  • ユーザーレベルでのよりすぐれた機能の提供。

  • ネットワーク運用コストの低減。

  • MicrosoftによるNT4サポート終了によって引き起こされるexposureの低減。

  • Avoid MS License 6 implications.

  • 組織がMicrosoftに依存する事の低減。

Samba-3はMicrosoft Windows NT4ではないことを、誰でもが知っておくようにすること。 Samba-3はMicrosoft Windows NT4とも、それに対して利点を提供する事とも異なる、代替 ソリューションを提供する。Samba-3は、Microsoft NT4からMicrosoft Windows 2000と その後継(Active Directoryサービスを使う/使わないのどちらでも)への移行における、 本質的な価値として紹介している多くの機能を持っていないことを認識すること。

Samba-3が提供できていないはどのようなものがあるだろうか?

  • Active Directoryサーバー

  • グループポリシーオブジェクト(Active Directory中の)。

  • マシンポリシーオブジェクト。

  • Active Directory中のログオンスクリプト

  • Active Directory中のソフトウェアアプリケーションとアクセス制御。

Samba-3の機能で提供していないものと、使用しているサイトでとても大きな関心があるかも しれないものは以下の通り:

  • より少ない所有コスト。

  • Global availability of support with no strings attached.

  • UNIX/Linuxシステム単位で1つ以上のSMB/CIFSサーバーを動作できる)。

  • その場その場でのログオンスクリプトの作成。

  • その場その場でのポリシーファイルの作成。

  • より優れた安定性、信頼性、パフォーマンスと可用性。

  • SSH接続経由よる操作性。

  • バックエンド認証技術を自由に選べる(tdbsam,ldapsam)。

  • 完全なシングルサインオン技術の実装機能。

  • 絶対的に小さい広域ネットワークのバンド幅を要求するための分散認証技術機能。

Microsoft Windows NT4からSamba-3へのネットワーク移行の前に、すべての必要な要素を考慮する。 変更についてユーザーを教育し、そうすることでユーザーに受け入れられるようになり、必要な仕事の 障害にならないようにすべきである。以下の節では、移行を成功させるための要素について説明 している。

ドメインレイアウト

Samba-3はドメインコントローラー、バックアップドメインコントローラー(おそらく、最も 広くセカンダリコントローラーと呼ばれる)、ドメインメンバー、あるいはスタンドアロンサーバーとして 設定できる。Windowsネットワークセキュリティドメインコンテキストは、実装の前に、 sized(?)と、よく調査を行うべきである。バックアップドメインコントローラー(BDC)と同様、 プライマリドメインコントローラー(PDC)を配置するため、特別な注意を払う必要がある。 Samba-3がMicrosoftの技術とは違う1つの方法は、もしもLDAP認証バックエンドを使うことを 選択した場合、同じデータベースをいくつかの異なったドメインで使うことが出来るという ことである。複雑な組織において、それは、同時に多数のドメインをサポートできる、 分散可能な(1つのマスターサーバーと複数のスレーブサーバー)単一のLDAPデータベースにできる。 Samba-3 can be configured as a domain controller, a backup domain controller (probably best called a secondary controller), a domain member, or a standalone server. The Windows network security domain context should be sized and scoped before implementation. Particular attention needs to be paid to the location of the Primary Domain Controller (PDC) as well as backup controllers (BDCs). One way in which Samba-3 differs from Microsoft technology is that if one chooses to use an LDAP authentication backend, then the same database can be used by several different domains. In a complex organization, there can be a single LDAP database, which itself can be distributed (have a master server and multiple slave servers) that can simultaneously serve multiple domains.

デザインの観点から、1台のサーバーあたりのユーザー数はドメインあたりのサーバーの数と同様、 サーバーの能力とネットワークのバンド幅を考慮に入れて、スケーリングすべきである。

物理的なネットワークセグメントはいくつかのドメインを収容しているかもしれない。おのおのは、 複数のネットワークセグメントにまたがっているかもしれない。ドメインがルーテイングされた セグメントにまたがっている場合、ネットワークの設計とレイアウトのパフォーマンス評価を テストし考慮する。複数のルーティングされたネットワークセグメントをサポートするように 設計された、中央に位置するドメインコントローラーは、パフォーマンスが悪いという問題を 引き起こすかもしれない。リモートセグメントとPDC間のレスポンスタイム(pingのタイミング)を 調べること。もしもそれが長い(100msよりも大きい)場合、ローカルでの認証を提供する ために、リモートセグメント上にBDCを配置し、制御サーバーにアクセスする。

サーバーの共有とディレクトリのレイアウト

足を付けずには破ることの出来ない、効果的なネットワーク設計のための基本原則がある。 最も重要なルールは:よく制御されたネットワークおのおのにおいて、単純さを確保すること。 基盤のすべての部分は、管理可能にしなければならない。それをより複雑にすると、 システムをセキュアに保つことと機能を確保することの要求は増大するだろう。

どのようにデータを共有しなければならないかという性質について、心にとめておくこと。 物理ディスクスペースレイアウトは注意深く考えられるべきである。いくつかのデータは バックアップが必要である。ディスクレイアウトを単純にすると、バックアップの必要性を 記録するのはより容易になるだろう。どのメディアが必要を満たすかについて見極めること。 テープ、CD-ROMあるいはDVD-ROMや他のオフラインストレージシステムを考慮する。最小限の メンテナンスを計画し、実現の用意をする。設計の中に危険な点を残さないこと。とりわけ、 バックアップすることを忘れてはならない。バックアップし、テストし、すべてのバックアップを 検証する。ディザスタリカバリプランを作成し、それが動くかを検証する。

データアクセス制御の必要性を付与するために、ユーザーはグループ化されるべきである。 ファイルとディレクトリアクセスは、グループパーミッション経由で最もよく制御でき、 グループ制御のディレクトリ上にスティッキービットを使うと、Sambaの 共有ユーザーからのファイルアクセス時の不満を十分に防止するかもしれない。

未経験のネットワーク管理者は、しばしば、ファイル、ディレクトリ、共有に対して、共有内の 定義と同じようにアクセス制御を設定するための、手が込んだ技術を適用しようとする。 設計と実装は単純にすること、そして、広範囲に設計を文書化すること。他の誰かが作成した 文書を監査するようにすること。後継者が理解できないような、複雑な文書を作らないこと。 覚えておいてほしいのは、複雑な設計と、実装を使うジョブのセキュリティは、新参の管理者が 結び目のほぐし方を学ぶように、利用者に対して、運用障害と運用停止をもたらすかも しれない。アクセス制御は簡単かつ効果的にして、obtuse complexityによって中断されることの 無いようにする。 Inexperienced network administrators often attempt elaborate techniques to set access controls on files, directories, shares, as well as in share definitions. Keep your design and implementation simple and document your design extensively. Have others audit your documentation. Do not create a complex mess that your successor will not understand. Remember, job security through complex design and implementation may cause loss of operations and downtime to users as the new administrator learns to untangle your knots. Keep access controls simple and effective, and make sure that users will never be interrupted by obtuse complexity.

ログオンスクリプト

ログオンスクリプトは、すべてのユーザーが必要に応じて共有とプリンターへの接続を得る事を 保証する事を手助けするものである。

ログオンスクリプトは、動的に作成でき、動作させるすべてのコマンドは、そのユーザーが持つ 権限と権利が指定される。優先する制御の設定は、グループメンバーシップを使って設定 すべきであり、グループ情報は、カスタムログオンスクリプトを作成するために使われ、 それは、NETLOGON共有に対する root preexecパラメーターを使う。

いくつかのサイトでは、制御されたユーザー環境を確立するために、kixstart のようなツールを使っている。この場合、ログオンスクリプトプロセス制御のために、Google検索を 行ってもよい。実際、ログインスクリプト経由で、ユーザーが介入することなしに、 プリンターを追加する方法について記述しているMicrosoft Knowledge Baseの記事KB189105の使用法 を調査してもよい。

プロファイルの移行/作成

ユーザーとグループのプロファイルは、デスクトッププロファイル管理という節で説明されている ツールを使って移行できる。

プロファイルはSamba-3ツールprofilesを使って管理しても良い。このツールは、 Samba-3ドメインのSIDに変更される、NTuser.DATプロファイルファイル中に 格納されるMicrosoft Windows NT形式のセキュリティ識別子(SID)を扱える。

ユーザーとグループアカウント

Microsoft Windows NT4ドメインからSamba-3に、すべてのアカウント設定を移行することは 可能である。ユーザーとグループアカウントを移行する前に、Microsoft Windows NT4ドメインに 存在しているグループをSamba-3中に作成することと、それを適切なUNIX/Linuxグループにマップ することを強く推奨する。以下の単純な助言に従い、すべてのユーザーと グループの属性は、無事に移行すべきである。

移行プロセスの手順

おおよその移行プロセスは以下の通りである。

  • 移行対象の、ユーザー、グループ、ポリシーとプロファイルを持つNT4 PDCがあるとする。

  • Samba-3はnetlogon共有、プロフィル共有やその他を持つドメインコントローラーとして 設定してある。smb.confファイルをBDCとして機能するように、 domain master = No と設定する。

Procedure 36.1. アカウント移行プロセス

  1. NT4 サーバーマネージャを使い、Sambaサーバーを古いNT4ドメイン中でBDCに設定する。 Samba must not be running.

  2. net rpc join -S NT4PDC -w DOMNAME -U Administrator%passwd

  3. net rpc vampire -S NT4PDC -U administrator%passwd

  4. pdbedit -L

    注意: ユーザーは移行できただろうか?

  5. 次に、各UNIXグループをNTグループに割り当てる: initGroups.shとして下記のテキストをコピーし、スクリプトに しておくと便利である。)

    #!/bin/bash
    #### Keep this as a shell script for future re-use
    			
    # First assign well known domain global groups
    net groupmap add ntgroup="Domain Admins" unixgroup=root rid=512 type=d
    net groupmap add ntgroup="Domain Users"  unixgroup=users rid=513 type=d
    net groupmap add ntgroup="Domain Guests" unixgroup=nobody rid=514 type=d
    
    # Now for our added domain global groups
    net groupmap add ntgroup="Designers" unixgroup=designers type=d
    net groupmap add ntgroup="Engineers" unixgroup=engineers type=d
    net groupmap add ntgroup="QA Team"   unixgroup=qateam    type=d
    

  6. net groupmap list

    すべてのグループが認識されたかを確認する。

すべてのプロファイルの移行と、すべてのポリシファイルの移行。

移行オプション

Microsoft Windows NT4ドメイン制御からSambaベースのソリューションへの移行を行いたい サイトは、一般的に3つの基本的なカテゴリに適合する。 以下のテーブルは、その例を表示する。

Table 36.1. 3つの主要なサイトのタイプ

ユーザー数説明
< 50

特段の手間暇を掛けずに単純な移行をしたい。

50 - 250

新しい機能を追加したい。いくつかの、組織内の複雑制を管理することが出来る。

> 250

ソリューション/実装は規模に対応しなければならない。 複雑な要求がある。組織間の調整。ほとんどの領域での専門的な知識。


うまくいくための計画

Microsoft Windows NT4からSamba-3へ移行したいサイトには、3つの基本的な選択肢がある。

  • 単純な移行 (丸ごと取り替え)。

  • アップグレードする移行(統合の一種でありえる)。

  • 完全な再設計 (完全に新しいソリューション)。

終了間際の問題を最小にするには:

  • 十分な時間の確保。

  • パニックを防ぐ。

  • すべての仮定のテスト。

  • ワークステーションの展開を含む、完全に提供されるプログラムのテスト。

以下のテーブルは、与えられた、予想される 移行のタイプの移行の選択肢を一覧表示する。

Table 36.2. 移行方式による相違点の詳細

単純移行アップグレード再設計

最低限のOS固有機能の使用

NT4の機能を新しいホストOSの機能に変更

NT4の機能を改善し、管理能力を強化

NT4からSamba-3にすべてのアカウントを移行

コピーと改善

認証システム(データベースの配置とアクセス)

最低限の操作上の変更

漸進的な改良

デスクトップ管理手法

最小限の移行時間

ユーザーへのインパクトを最小化

デスクトップ/ユーザーの制御を改善

運用停止を伴う移行作業

最大限の機能を利用

管理性、拡張性、保全性、可用性に対する必要性の識別

Samba-3の統合は、ユーザーが有効な時に移行し、次に、制御を変更(スワップアウト) Integrate Samba-3, then migrate while users are active, then change of control (swap out)

管理操作が少ないことを有効に利用


Samba-3実装の選択

認証データベース/バックエンド

Samba-3は外部の認証バックエンドを使える:

  • Winbind (他のSambaかNT4/200xサーバー)。

  • 外部サーバーはActive DirectoryかNT4ドメインを使える。

  • ホームディレクトリの自動作成を行うために、pam_mkhomedir.soが使える。

  • Samba-3はローカル認証バックエンドとして: smbpasswd, tdbsam, ldapsamが使える。

アクセス制御が出来る場所

Sambaは以下の場所でアクセス制御を設定できる:

  • 共有それ自身では共有ACLを使う。

  • ファイルシステム上ではファイルとディレクトリ上でUNIXのパーミッションを使う。

    注意:POLIX ACLは、ファイルシステム中でも有効に出来る。

  • Sambaの共有パラメーターも使えるが苦肉の策以外、推奨しない。

ポリシー(移行または新しいものの作成)

レジストリの変更時には、十分に用心すること;正しいツールを使い、恒久的に 変更点が保存される、NT4形式のNTConfig.POLファイルを 経由して変更が行われることに注意。

  • グループポリシーエディターを使用(NT4)

  • 入れ墨効果(tattoo effect)に注意。

ユーザーとグループプロファイル

プラットフォーム固有の場合では、ローカルから、ローミングプロファイル変更するために、 プラットフォームのツールを使う。SIDを変更するために新しいプロファイルツールが 使える(NTUser.DAT)。

ログオンスクリプト

それがどのように動くかは分かっている。

ユーザーとグループの、UNIX/Linuxへのマッピング

ユーザーとグループマッピングコードは新しくなった。Samba-2.2.xからSamba-3に 移行することになれているネットワーク管理者は、多くの問題を体験した。 新しいパスワードバックエンドの動作と、新しいグループマッピング機能について 記述している章を注意深く学習すること。

  • username map機能が必要になるかもしれない。

  • net groupmapでNT4グループをUNIXグループにつなぐ。

  • ユーザー設定を設定/変更するためにpdbeditを使う。

    LDAPバックエンドに移行するとき、初期LDAPデータベースをLDIFにダンプ、 編集し、次にLDAPに再ロードするのは容易である。

OS固有のスクリプト/プログラムが必要になるかもしれない

すべてのOSはそれ固有の習慣がある。設計者の体験と、予期されない副作用があるかもしれない 事をベースにする技術的な議論の結果がある。Windowsネットワーク管理者が引っかかる制限には 以下のものがある:

  • ユーザーの追加/削除: OSによる名前のサイズ制限に注意 (Linuxは8文字まで, NT4は254文字まで)。

  • マシンの追加/削除: ドメインメンバーのみに適用される (注意:マシン名は16文字までに制限される)。

  • NT4グループからUNIXグループへ接続するためにnet groupmapを使用。

  • グループの追加/削除:OSによるサイズと特性の制限に注意。 Linuxは16文字まで、空白不可、大文字不可(groupadd)。

移行ツール

ドメイン制御(NT4形式)プロファイル、ポリシー、アクセス制御、セキュリティ

  • Samba: net, rpcclient, smbpasswd, pdbedit, profiles

  • Windows: NT4 ドメインユーザーマネージャ, サーバーマネージャ(NEXUS)