FC2ブログ
基盤系インフラSE 4年目 技術備忘録 派遣社員(特定派遣)

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告|
  3. トラックバック(-)|
  4. コメント(-)

SPN重複の問題

AD環境より、SPN重複が起こっているのがSQL Serverのみであることを確認した。
何故、SQL鯖だけなのか・・・、と悩んでいたがわかった。

MSの有償サポート?のさらに高価なSEによる調査をしてもらっているのに肝心なところで
「~かもしれません」「~の可能性があります」と逃げてくるだけで何にもならなかった。
どこかのネットの人のほうが有力な情報もってるという。

MSのSE、初めからこれを教えてくれればよかったのに。
わかったところでもうどうでもいいけど。
https://support.microsoft.com/en-us/kb/305971



SRV(Server Selection) レコード

 特定のサービスを提供しているサーバのホスト名を取得するためのリソース。
 ドメインコントローラ、Kerberos の KDC(Key Distribution Center)、LADP サーバ等を探索する場合に使用される。 RFC2782
 
 書式
 [owner] [ttl] [class] SRV [priority] [weight] [port] [target]
 
 owner: _サービス名._トランスポート層プロトコル名.ドメイン名
      例えば、Kerberos サービスの場合は、_kerberos._tcp.netdive.local. となる。
 priority: target で記述したホストの優先順位。この数値が小さいほど優先順位が高い。
       ロードハランシングを利用しない場合は、0 とする。
 port: そのホスト上でサービスを提供している TCP/UDP のポート番号。
       提供するサーバが存在しない場合は「.」を記述する。

 例)_ldap._tcp IN SRV 0 8 389 ldap1
IN SRV 0 2 389 ldap2
   この場合、ldap1.netdive.local と ldap2.netdive.local のアクセス負荷は、8:2 の割合となる。(マシンで処理能力が異なる場合に有効)
   
   SRVレコードによるメールサーバの指定
   _smtp._tcp IN SRV 10 0 25 mx.netdive.local.
    IN SRV 20 1 25 mx1.netdive.local.
    IN SRV 30 4 25 mx2.netdive.local.

 Active Directory で DNS が使われているのは、この位置情報をどこからでも引けるようにする為。

DNS ドメイン ゾーンのドメイン コントローラの SRV レコード
http://support.microsoft.com/kb/556006
Active Directory サポートのための BIND (Berkeley Internet Name Domain) の構成
http://technet.microsoft.com/ja-jp/library/cc985025.aspx
WindowsのActive DirectoryとbindによるDNSの連携
http://piro791.blog.so-net.ne.jp/2010-03-11



 操作マスタの種類
 ・PDCエミュレータ
   デフォルト:ドメインで最初にインストールされたドメインコントローラで、ドメインに1台
   役割:BDC の復元、パスワード更新
   動作タイミング:BDC への複製時、パスワード変更要求時
   障害時の影響:BDC への複製、Windows 95/98/NT からのパスワード変更要求に失敗する
          ※Windows 95/98 の場合は、DSCLIENT.EXE をインストールしないとドメインに参加出来ません。(メモにインストール方法を書いてます。またグループポリシーやケルベロスはサポートされません)
 ・RIDマスタ
   デフォルト:ドメインで最初にインストールされたドメインコントローラで、ドメインに1台
   役割:RIDプールの配布
   動作タイミング:ドメインコントローラが RID プールを使いきり、追加のプールが必要になった時
   障害時の影響:RID プールが空で RID マスタが利用不可能の場合、新規ユーザ、グループ、コンピュータオブジェクトの作成が出来ない
 ・インフラストラクチャマスタ
   デフォルト:ドメインで最初にインストールされたドメインコントローラで、ドメインに1台
   役割:メインをまたがるグループとユーザーの参照と更新
   動作タイミング:グループメンバー情報を更新した時(ユーザーの追加、変更等)
   障害時の影響:正しいグループメンバー情報が表示されない
 ・ドメイン名前付けマスタ
   デフォルト:フォレストで最初にインストールされたドメインコントローラで、フォレストに1台
   役割:フォレスト内でのドメインの追加・削除
   動作タイミング:フォレストにドメインを追加・削除した時
   障害時の影響:フォレストに新しいドメインの追加・削除が出来ない
 ・スキーママスタ
   デフォルト:フォレストで最初にインストールされたドメインコントローラ、フォレストに1台
   役割:スキーマの更新
   動作タイミング:スキーマを更新する時
   障害時の影響:管理者によるスキーマ更新が出来ない、スキーマを更新するアプリがインストール出来ない可能性



イベントID:11
ソース:KDC
名前が MSSQLSvc/myserver.netdive.local:1433 で種類が DS_SERVICE_PRINCIPAL_NAME のアカウントが複数あります。
と、イベントログに出た場合の対策。

 KB:Windows 2000 Server Prompts Domain User for Credentials

 原因
  Kerberos が有効な Active Directory 環境で SQL Server のサービスアカウントを変更するとこのエラーが出ます。
 修復方法(上記のKBとは手順が違います)
 1.SPN の照会 を参考にスプリクトを作成。
 2.querySpn.vbs MSSqlSvc/* を実行し重複しているサービスアカウントを探す。
 3.setspn コマンドで SPN を削除
   例)setspn -d MSSQLSvc/myserver.netdive.local:1433 sqlsvc
   ※ setspn.exe はリソースキットに入っています。

    Windows Server 2003 の Setspn.exe サポート ツールの更新プログラム
    http://support.microsoft.com/kb/970536

アカウントを変更した場合は、SQL Server のメモリがページングされないように、セキュリティポリシーの
「ユーザー権利の割り当て」から「メモリ内のページロック」を開いて、そのアカウントを追加しておく事。

  SQL Server 2005 の 64 ビット版でのバッファプール メモリ ページングを減らす方法。
  http://support.microsoft.com/kb/918483/

基本的にドメインコントローラーに他の事はさせない方がいいです。ポリシーが書き換えられて正しく動かない可能性が高い。

 ドメイン コントローラ上での WSUS サーバーの稼動について (Windows Server 2012 以降の WSUS) - Japan WSUS Support Team Blog - Site Home - TechNet Blogs
 http://blogs.technet.com/b/jpwsus/archive/2015/05/12/wsus-2012-dc.aspx


 資料
  Microsoft SQL Server 2000 のセキュリティ
  SQL Server の管理 セキュリティ アカウントの委任
  PRB: Setspn fails if domain name differs from NetBIOS name where SQL Server SPN is registered
  Windows Server 2003 と Windows 2000 Server で、Active Directory のインストール ウィザードを使用して強制的に降格を実行しても、ドメイン コントローラが正常に降格されない
  Windows Server 2003 でのファイル レプリケーション サービスのトラブルシューティング方法
Local Service とほかの既知のセキュリティ プリンシパルが Windows Server 2003 ドメイン コントローラで表示されません。
  Kerberos 認証と委任問題のトラブルシューティング
  ドメイン コントローラのシステム ログのイベント ID 11
  Microsoft Dynamics AX のサービス プリンシパル名の問題のトラブルシューティングを行う

 重複関連として SID も。
  C:\>ntdsutil
  ntdsutil: security account management
  security account management: connect to server netdive.local
  security account management: check duplicate sid
  .
  重複した SID の確認は正常に終了しました。dupsid.log を確認してください。
  security account management: cleanup duplicate sid
  .
  重複した SID のクリーンアップは正常に終了しました。dupsid.log を確認してください。
  security account management: quit
  ntdsutil: quit
  netdive.local から切断しています... 
  [HOWTO] Windows Server 2003 の Ntdsutil を使用して重複するセキュリティ識別子の検出およびクリーンアップを行う方法

 ちなみに、SID を調べるには GETSID という 2 つのユーザーアカウントの SID を比較するツールを利用して調べる事が出来ます。
 getsid . username . username ( . の代わりに環境変数 %logonserver% としても同じ結果が得られます)

管理者のためのActive Directory入門(Windows Server 2003対応改訂版) 第1回
http://www.atmarkit.co.jp/fwin2k/operation/2003adprimer01/2003adprimer01_01.html
第4回 Active Directory関連用語集(後編)
http://www.atmarkit.co.jp/fwin2k/operation/adprimer004/adprimer004_01.html
Active Directory
http://www.microsoft.com/technet/prodtechnol/windowsserver2003/ja/library/ServerHelp/a9d684f0-90b1-4c67-8dca-7ebf803a003d.mspx?mfr=true



一部をまるこぴさせて頂きました。→コピペ元

https://support.microsoft.com/ja-jp/kb/305971

https://support.microsoft.com/ja-jp/kb/321044



2g.png


1g.png


3g.png

  1. 2015/11/11(水) 00:31:23|
  2. WindowsServer|
  3. トラックバック(-)|
  4. コメント:0

コメント

コメントの投稿

管理者にだけ表示を許可する

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。