SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

Archive for 6月, 2009

repadmin /syncall で別サイトの DC と同期

leave a comment

WIndows 2000 / 2003 のサポートツールに含まれている repadmin.exe を使用すると DC のレプリケートを
コマンドラインで実行することができます。

オプションを何も設定しないで実行すると同一サイト内の DC とのみレプリケートが実行されますので、
複数のサイトを作成している場合は /e オプションを指定する必要があります。

[自サイト内の DC とのみレプリケート]

repadmin /syncall

?

[他のサイトの DC も含めてレプリケート]

repadmin /syncall /e

?

[Active Directory サイトとサービス] を使用して [今すぐレプリケート] で同期をとる場合は
対象の接続オブジェクトを選択するので別サイトでも問題はありませんが、コマンドで実行する場合は
気をつけないといけないですね。

Written by Masayuki.Ozawa

6月 29th, 2009 at 11:36 pm

Posted in Active Directory

VBScript で別ファイルをインクルード

leave a comment

よく忘れるのでメモ。

Scripting.FileSystemObject の ReadAll で別ファイルの内容を読み込んで、
ExecuteGlobal に読み込んだ内容を渡して別ファイルをインクルード。

ExecuteGlobal ステートメント

Written by Masayuki.Ozawa

6月 24th, 2009 at 12:27 pm

Posted in その他

ダウンレベルクライアントに影響するグループポリシー

leave a comment

Windows Server 2003 のドメインコントローラーを使用している場合にダウレベルクライアントで
影響が出そうなグループポリシーをメモ
# グループポリシーに KB823659 へのリンクが表示されていたものです。

グループポリシー 設定値
Microsoft ネットワーク クライアント: 常に通信にデジタル署名を行う
  • 有効
  • 無効
Microsoft ネットワーク サーバー: 常に通信にデジタル署名を行う
  • 有効
  • 無効
ドメイン メンバ: 強力な (Windows 2000 かそれ以降のバージョン) セッション キーを必要とする
  • 有効
  • 無効
ドメイン メンバ: 常にセキュリティで保護されたチャネルのデータをデジタル的に暗号化または署名する
  • 有効
  • 無効
ネットワーク アクセス: SAM アカウントおよび共有の匿名の列挙を許可しない
  • 有効
  • 無効
ネットワーク アクセス: SAM アカウントの匿名の列挙を許可しない
  • 有効
  • 無効
ネットワーク アクセス: 匿名の SID と名前の変換を許可する
  • 有効
  • 無効
ネットワーク セキュリティ: LAN Manager 認証レベル
  • LM と NTLM 応答を送信する
  • LM と NTLM を送信する – ネゴシエーションの場合、NTLMv2 セッション セキュリティ
  • NTLM 応答のみ送信する
  • NTLMv2 応答のみ送信する
  • NTLMv2 応答のみ送信する (LM を拒否する)
  • NTLMv2 応答のみ送信する (LM と NTLM を拒否する)
ネットワーク セキュリティ: 必須の署名をしている LDAP クライアント
  • なし
  • ネゴシエーション署名
  • 必須署名
監査: セキュリティ監査のログを記録できない場合は直ちにシステムをシャットダウンする
  • 有効
  • 無効

セキュリティ的に問題ないかは別にして、これらの設定をドメインコントローラにしておけば、
95 / 98 / NT 4.0 SP3 以前がログインできないという現象は回避できそうです。

ダウンレベルクライアントがなくなったら設定を戻しましょうという但し書きをしたうえで設定しておこう。

Written by Masayuki.Ozawa

6月 23rd, 2009 at 11:25 am

Posted in Active Directory

Tech・Ed 2009 テクニカルセッションの情報が更新されています。

leave a comment

Microsoft の方がスピーカーを担当されるテクニカルセッションのアジェンダが公開されたようです。

テクニカル セッション

SQ!L Server 2008 R2 のセッションがあるので行きたいです…。
去年と比べると SQL Server のセッション数はだいぶ減りましtね。

今年も去年と同様 Post Conference DVD が一般販売されないのでしょうかね。
去年は事務局に問い合わせたところ、一般販売も予定しているといわれていたのですが、
最終的には販売されなかったので…。

tech days のように後日、全セッションの動画 / スライド一般公開されると、とてもうれしいのですが。

Written by Masayuki.Ozawa

6月 22nd, 2009 at 11:45 pm

Posted in セミナー

CNAME を使用したファイル共有

leave a comment

Windows のファイルサーバーではないのですが DNS の Ailias (CNAME) で CIFS 共有にアクセスすると
認証が発生してしまうという社内の問い合わせがあったので少し調べてみました。

とりあえず Windows のファイルサーバーだとどうなるんだろうと思い調べてみたところ、事例がありました。

Windows 2000 ベースのサーバー上の SMB 共有へのエイリアス名による接続が機能しない
Windows2000/Server2003の共有フォルダをDNSのCNAMEレコードを使用して開けない
Windows Server 2003 Service Pack 1 のインストール後に FQDN または CNAME エイリアスを使用してサーバーにローカル アクセスしようとするとエラー メッセージ "アクセスが拒否されました" または "指定されたネットワーク パスはどのネットワーク プロバイダによっても受け付けられませんでした" が表示される
ログオン ウィンドウの表示 Windows Server 2003 Service Pack 1 NLB 仮想 NLB クラスタ名を参照するとき

以下のレジストリを設定すれば CNAME でアクセスできるようになります。

HKEY_LOCAL_MACHINESystemCurrentControlSetServicesLanmanServerParameters

値の名前 : DisableStrictNameChecking
データの種類 : REG_DWORD
基数 : 10進
値 : 1

エラーの時は以下のようなメッセージが表示されます。

ネットワークに重複した名前があるため接続されませんでした。
コントロール パネルのシステムでコンピュータ名を変更して再実行してください。

image

CNAME だけでなく、A レコードで本来のコンピュータ名の IP を登録しても同様のエラーとなりました。

NLB で Kerberos 認証をする場合もいろいろと考慮点があるみたいですね。
# NLB の仮想ホスト名も CNAME みたいなものだと思いますので。

Windows Server 2003 NLB構成で Kerberos認証を有効にする
負荷分散アーキテクチャで Kerberos 経由の認証の委任は動作しません
Kerberos authentication for load balanced web sites
Enabling Kerberos Delegation on a NLB scenario

こちらはアプリケーションプールをドメインユーザーで起動して、 NLB で負荷分散に使用するホスト名と
アプリケーションプールの起動ユーザーで SPN を登録するのがポイントみたいです。

SQL Server の Kerberos 認証もそのうち試そうと思ってなかなか手が出せていないですね~。
まだまだ勉強することが沢山です。

Written by Masayuki.Ozawa

6月 22nd, 2009 at 2:17 pm

Posted in Active Directory

NT ドメインアップグレード後のプライマリ DNS サフィックスの表示内容

leave a comment

NT ドメインを Windows 2000 Active Directory にアップグレードした場合の、メンバーとして参加している
コンピュータのプライマリ DNS サフィックスの表示内容についてです。

[NT ドメインの時の表示内容]

以下の画像が、NT ドメインならびに、AD アップグレード直後のドメインとフルコンピュータ名の表示です。
アップグレードをしてもそのままの状態ではフルコンピュータ名とドメイン名は変更されません。

[Windows XP]

imageimage

[Windows NT]

image image
image
?

一度ログオン / ログオンまたは、再起動するすと以下の内容に変更となります。

[ログオン / ログオフまたは再起動後]

[Windows XP]

image?image

XP だと再度コンピュータにログオンし、マイコンピュータのプロパティを確認すると
[変更はコンピュータの再起動後に有効になります。]
と表示されています。

コンピュータのプロパティの再起動に関しては以下のレジストリ値の比較で表示が制御されているようです。

-[HKLMSYSTEMCurrentControlSetServicesTcpipParameters]
 [Domain]
 [NV Domain]

NT ドメインからのアップグレード後は [Domain] が空白、[NV Domain] が参加ドメインの値となっているようです。
image

この設定値が異なることによって再起動のメッセージが表示されてしまうようです。

[Windows NT]

image image
image?image

[再起動後]

[Windows XP]

image image
image

再起動後は [Domain] に値が設定されています。
アップグレード後は再起動しないと DNS サフィックスが設定されないので再起動のメッセージが表示されていると
コンピュータ名の名前解決で思ったような結果が得られないかと。

[Windows NT]

image image
image
image

NT のメンバサーバーの場合は変化はないようですね。

2000 / 2003 のメンバーサーバーでは試せていないのですが XP と同じ動きになりそうな気が。
SID の解決は再起動しなくてもできていそうですが、名前解決が想定した動きにならない場合は、
コンピュータのプロパティを開き、再起動の表示がないことを確認したほうが良さそうです。

Written by Masayuki.Ozawa

6月 21st, 2009 at 7:08 am

Posted in Active Directory

既存のドメインコントローラーに新しい子ドメイン追加時のドメイン名の設定反映について

leave a comment

各、ドメインコントローラーで別々の DNS を使用している場合に現象が発生しました。

子ドメインを既存ドメイン (親ドメイン) に追加すると、親ドメインの [Active Directory サイトとサービス] に
作成したドメインのドメインコントローラが追加されます。

以下が、子ドメイン追加後のサイトとサービスの内容になります。

image

[2000-AD-01] を [us.domain.local] として追加したのですが追加直後はドメインがブランクになっていました。
[2000-AD-01] で [Active Directory サイトとサービス] を確認するとこちらでは正常に表示されています。
image

image

親ドメインと子ドメインで同一の DNS を使用している場合はこのような現象は発生しなかったのですが、
各ドメインで独自の DNS を使用して、委任 / フォワーダで名前解決をさせている環境を作ったところ、
このような状態になりました。

他のドメインコントローラには自動生成の接続オブジェクト (2000-AD-01 のプルレプリケーション) は
作成されていますので、[今すぐレプリケート] を実行してみると以下のメッセージが表示されます。

image

[名前付きコンテキストが削除中華、または指定されたサーバーからレプリケートされていません。]? となってしまいます。
別々の DNS を使用しているので FQDN でないと名前解決ができないことが原因でしょうか…。
現在はドメインが空白になっているために解決できないのかも。

[2000-AD-01] で [レプリケーショントポロジの確認] をして KCC による接続の自動生成をしようとすると
以下のメッセージになります。

image

[ディレクトリのプロパティがキャッシュに見つかりません。] とのことですが、今回の場合は、プロパティは
ドメイン名の部分のことでしょうか。

正しい状態には以下のどちらかの方法で設定できました。

  1. ADSIEDIT.msc を使用して修正
  2. KCC がチェックするまでしばらく待つ

?

[ADSIEDIT.msc]

  1. [ADSIEDIT.msc] を起動します。
    image
  2. Configuration で対象のサイトを展開し、対象サーバーを右クリックし、[プロパティ] をクリックします。
    image
  3. [dNSHostName] を選択し、[Edit] をクリックします。
    image
  4. [Value] に FQDN を設定します。
    image

[しばらく待つ]

  1. 親ドメインのドメイン個とローラーのイベントビューアに以下のメッセージが表示されるまで待ちます。
    # 私の環境だとドメインコントローラー追加後 13 分後ぐらいに表示されました。
    [ソース]:NTDS KCC
    [イベント ID]:1104
    image?

どちらかの対応 (一方はただ待つだけですが…) をすると親ドメインでも正常にドメイン名が
表示されるようになります。

新規ドメインを追加した場合は各ドメインコントローラの [repadmin /showrepl] を確認して、
接続オブジェクトの作成状況のチェックは必要ですね。

Written by Masayuki.Ozawa

6月 20th, 2009 at 10:47 am

Posted in Active Directory

Windows Server 2008 で crcdisk.sys の読み込みで停止してしまう

leave a comment

かなり前の機種のサーバーに Windows Server 2008 を P2P で移行していたところ、
crcdisk.sys の読み込みで停止してしまうという現象が発生してしまいました。
# セーフモードで起動し、ファイルのロード状況を眺めていたところ crcdisk.sys で
 停止していました。

マザーボードの電池が消耗していたため、BIOS の日付がクリアされていたことが
原因のようでした…。

電源を外すと BIOS の日付が 00/00/00 になってしまったので、作業をしていた日の
日付に修正したところ正常に起動しました。

試しに再度、電源ケーブルを抜き日付をクリアしたところ現象が再現できました。

今まで事象に当たっていなかったため知らなかったのですが [crcdisk.sys] で
停止する現象は結構有名みたいですね。

日付以外にも様々なことが起因して起動しなくなることがあるようですね。
とても勉強になりました。

2009/9/28 追記

Hyper-V のゲスト OS で [crcdisk.sys] の読み込みで止まってしまう現象が発生し、どうしようかと悩んでいたところ、
とりあえず VHD をマウントして、起動する Windows Server 2008?の [crcdisk.sys] を [C:windowssystem32drivers] に
コピーしたらなんとか起動しました。
BIOS で AHCI から IDE にディスク接続を変更し起動後戻したり、AHCI のディスクだけにして起動するという方法で、
解決することもあるようですが、ゲスト OS で現象が発生すると困りますね…。

Written by Masayuki.Ozawa

6月 19th, 2009 at 9:57 am

Posted in Windows Server

Active Directory のスキーマのバージョン確認

leave a comment

新しいバージョンの AD を追加 / 一部のアプリケーション (Exchange 等) をインストールする場合には
AD のスキーマ拡張が必要となります。

スキーマのバージョン確認基本的な作業は以下の KB に記載されているとおりです。

Active Directory インストール ウィザードの実行時にエラー メッセージ "ソース フォレストの Active Directory スキーマのバージョンはこのコンピュータの Active Directory のバージョンと互換性がありません" が表示される

以下の手順で確認可能です。

[確認手順]

  1. [adsiedit.msc] を起動します。
  2. [CN=Schema,CN=Configuration,DC=<ドメイン名>] を右クリックし、プロパティをクリックします。
    image
  3. [objectVersion] の値を確認します。
    image

以下が [objectVersion] と OS の対応表になります。

objectVersion OS
13 Windows 2000 Server
30 Windows Server 2003
31 Windows Server 2003 R2
44 Windows Server 2008

今のところ Windows Server 2008 R2 のスキーマバージョンは [47] となっているようですね。
Sch47.ldf

スキーマ拡張をした際に、各ドメインコントローラでスキーマ拡張が反映されているかを確認する場合は
この値を確認するのが良さそうです。

Written by Masayuki.Ozawa

6月 18th, 2009 at 1:22 pm

Posted in Active Directory

Active Directory のレプリケーションを一時的に停止する方法

leave a comment

今月は SQL Server の投稿を増そう月間にするつもりだったのですが業務都合上そうもいかず、
当初の予定とは異なり AD のメモを増やさなくてはいけなさそうです…。

AD ではサイト間、サイト内にオブジェクトを伝搬するためにレプリケーションが行われていますが、
OCS や Exchange の導入時にスキーマ拡張やドメインのオブジェクト準備をするときに特定の
ドメインコントローラーから出力方向 (変更を他のドメインコントローラーに伝搬) のrレプリケーションを
一時的に無効化したいこともあるかと思います。
# DNS を AD 統合にして自サーバー内に持っているのであればネットワークケーブルを抜いて
 代わりにループバックコネクタをつけておけばよいのかもしれませんが…。

repadmin コマンドでオプションを設定すると一時的にレプリケーションを無効にすることができます。
Windows Server 2003 まではこのコマンドはサポートツールに含まれていますので、設定する場合は
OS のメディアまたはサービスパックのメディアからインストールする必要があります。
Windows Server 2008 には AD の役割を追加すると自動でインストールされます。
# 2008 には replmon / netdiag は含まれていないようですが。

出力方向のレプリケーションを停止

repadmin /options <DC 名> +DISABLE_OUTBOUND_REPL

出力力方向ですので対象のドメインコントローラで変更した内容のレプリケーションを
ブロックする設定になります。
# 変更内容尾を伝搬させない。

入力方向のレプリケーションを停止

repadmin /options <DC 名> +DISABLE_INBOUND_REPL

入力方向ですので他のドメインコントローラの変更を取り込まない設定になります。

出力方向のレプリケーションを開始

repadmin /options <DC 名> -DISABLE_OUTBOUND_REPL

?

入力方向のレプリケーションを開始

repadmin /options <DC 名> -DISABLE_INBOUND_REPL

?

2003-AD-01 というドメインコントローラーで入力 / 出力のレプリケーションを停止する場合は
以下のようなコマンドとなります。

repadmin /options 2003-ad-01 +DISABLE_OUTBOUND_REPL
repadmin /options 2003-ad-01 +DISABLE_INBOUND_REPL

?

この状態で [repadmin /showreps] コマンでレプリケーションの状態を確認すると以下のような表示となります。
# 2003-AD-01 のレプリケーションパートナーである 2003-AD-02 のレプリケーショントポロジーを表示しています。

>repadmin /showreps 2003-ad-02
Root-Domain-Site2003-AD-02
DC Options: IS_GC
Site Options: (none)
DC object GUID: 3e5f87fa-f72d-4d0d-b09f-aee1304d3b3f
DC invocationID: d48f468f-2b08-489c-9b7f-7036cf593874

==== INBOUND NEIGHBORS ======================================

DC=domain,DC=local
??? Root-Domain-Site2003-AD-01 via RPC
??????? DC object GUID: b7bc0b57-eed7-4168-935f-ee3904526c70
??????? Last attempt @ 2009-06-17 13:49:27 failed, result 8456 (0x2108):
??????????? ソース サーバーは現在、レプリケーション要求を拒否しています。
??????? 7 consecutive failure(s).
??????? Last success @ 2009-06-17 13:43:12.

CN=Configuration,DC=domain,DC=local
??? Root-Domain-Site2003-AD-01 via RPC
??????? DC object GUID: b7bc0b57-eed7-4168-935f-ee3904526c70
??????? Last attempt @ 2009-06-17 13:47:07 failed, result 8456 (0x2108):
??????????? ソース サーバーは現在、レプリケーション要求を拒否しています。
??????? 2 consecutive failure(s).
??????? Last success @ 2009-06-17 13:42:48.

CN=Schema,CN=Configuration,DC=domain,DC=local
??? Root-Domain-Site2003-AD-01 via RPC
??????? DC object GUID: b7bc0b57-eed7-4168-935f-ee3904526c70
??????? Last attempt @ 2009-06-17 13:47:07 failed, result 8456 (0x2108):
??????????? ソース サーバーは現在、レプリケーション要求を拒否しています。
??????? 2 consecutive failure(s).
??????? Last success @ 2009-06-17 13:40:54.

DC=jp,DC=domain,DC=local
??? Root-Domain-Site2003-AD-01 via RPC
??????? DC object GUID: b7bc0b57-eed7-4168-935f-ee3904526c70
??????? Last attempt @ 2009-06-17 13:47:07 failed, result 8456 (0x2108):
??????????? ソース サーバーは現在、レプリケーション要求を拒否しています。
??????? 2 consecutive failure(s).
??????? Last success @ 2009-06-17 13:43:23.

?
2003-AD-01 でレプリケーションが拒否されていることが確認できます。
# 停止してからレプリケーションのパートナー側で停止されていると認識されるまで少し時間がかかりました。
 実運用で停止する場合は小出しに showreps を実行して停止しているかを確認したほうがよいかも。
 上記、実行結果のように全パーティションでレプリケーション要求を拒否することはできます。

入力と出力の関係によっては以下のメッセージが表示されることも。

宛先サーバーは現在、レプリケーション要求を拒否しています。

レプリケーションが停止しているドメインコントローラーはサポートツールの [replmon.exe] では
以下の画像のように表示されます。

image

[Active Directory サイトとサービス] で複製をしようとすると以下の警告となります。

image

ドメインコントローラーで今、どのようなオプションが設定されているかは以下のコマンドで確認可能です。

repadmin /showreps <DC 名>

実行すると以下のような結果
が表示されます。

>repadmin /options 2003-ad-01
Current DC Options: IS_GC DISABLE_INBOUND_REPL DISABLE_OUTBOUND_REPL

レプリケーションの停止の仕方をよく忘れてしまうのでメモとして残しておきたいと思います。

Written by Masayuki.Ozawa

6月 17th, 2009 at 5:01 am

Posted in Active Directory