Active DirectoryがKerberosまたはNTLMを使用しているかどうかをどのように確認しますか?


15

使用できるコマンドラインプログラムはありますか?


ドメインコントローラーにはアクセスできず、他のクライアントにしかアクセスできません。
ルウォーディ2009年

Thunderbirdメールクライアントをダウンロードしてログイン情報を入力すると、Active DirectoryがKerberosまたはNTLMを使用している場合、Thunderbirdが自動検出します。
エリックレシンスキー

回答:


9

頭の中で質問をひねる必要があると思います。Active Directoryは、KerberosとNTLMの両方をサポートしています。Windowsは最初にKerberosを試行し、すべての要件が満たされない場合はNTLMにフォールバックします。

たとえば、\ server1 \ shareなどの名前でファイル共有にアクセスするとKerberosが呼び出され、適切な許可があれば成功します。ただし、IPアドレスを使用して同じファイル共有にアクセスすると、Kerberosが最初に呼び出されて失敗し(IPアドレスにSPNがないため)、NTLMにフェールオーバーします。

したがって、プログラムがどのようにADに対して認証を試みているかを判断し、使用されているプロトコルを通知する必要があります。

この質問をするきっかけは何だったのか知りたいです。


6

アクティブなKerberosチケットのリストを表示して、たとえばklist.exeを実行することにより、対象のサービス用のKerberosチケットがあるかどうかを確認できます。

レジストリをハッキングした場合、Kerberosイベントをログに記録する方法もあります


2

コンピューターがサーバーであるかワークステーションであるかに関係なく、ログオンイベントを実際に監査する必要があります。どのユーザーがシステムにアクセスしているかを把握し、セキュリティ関連の問題をトラブルシューティングすると役立ちます。

グループポリシーを使用して、監査ポリシーを変更できます。スタート...実行... gpedit.msc ...コンピューター構成、Windows設定、セキュリティ設定、ローカルポリシー、監査ポリシー、「ログオンイベントの監査」。[成功]および[失敗]チェックボックスをオンにします。ログアウトしてからログインして、Windowsセキュリティイベントログで一般的な540イベントを確認してください。


0

Netstatは、リスニングするすべてのTCPおよびUDP接続を表示します。オプション-naを使用すると、すべての接続に使用され、名前やポートの解決は行われません。「b」オプションは、関連するプログラムを表示することです。DNSが実行されている場合、他の多くの接続が表示される可能性があるため、TCPも指定できます。

Kerberosは、Active Directoryドメインコントローラーを展開する場合に最も確実に実行されます。

netstat -nab


The requested operation requires elevation.
アミットナイ

0

ログオンイベントを監査すると仮定して、セキュリティイベントログを確認し、540個のイベントを探します。特定の認証がKerberosとNTLMのどちらで行われたかを教えてくれます。


540件のイベントはありません。(
LeWoody 2009年

0
 public string FindAllUsers()
        {
            string strReturn="";
            try
            {
                DirectoryEntry directoryEntry = new DirectoryEntry("WinNT://" + Environment.UserDomainName);
                string userNames = "";
                string authenticationType = "";
                foreach (DirectoryEntry child in directoryEntry.Children)
                {
                    if (child.SchemaClassName == "User")
                    {
                        userNames += child.Name + Environment.NewLine; //Iterates and binds all user using a newline
                        authenticationType += child.Username + Environment.NewLine;
                    }
                }

                strReturn = userNames + "\n\n" + authenticationType;
                //Console.WriteLine("************************Users************************");
                //Console.WriteLine(userNames);
                //Console.WriteLine("*****************Authentication Type*****************");
                //Console.WriteLine(authenticationType);
            }
            catch (Exception)
            {
                Console.WriteLine("Network error occured.");
                strReturn = "";
            }
            return strReturn;
        }

4
これには、さらに多くの説明が必要です。
スヴェン

0

このツールを試すことができます。 http://blog.michelbarneveld.nl/media/p/33.aspx

これは、Webサイトで認証をテストするツールです。使用されている認証タイプが表示されます:Kerberos、NTLM、基本、なし。ただし、使用されているSPN、HTTPヘッダー、復号化されたNTLMおよびKerberos認証ヘッダーなどの他の情報も表示されます。また、Kerberosチケットを表示および削除することもできます。


-1

関係するクライアント/サーバーに依存します。たとえば、Webページがあります(申し訳ありませんが、今すぐ検索する時間はありません)。Kerberosを使用したかNTLMを使用したかを通知するWebサイトに配置できます。ただし、SQL Serverが使用した認証方法を知る方法はありません。以前に確認されたように、セキュリティログが表示する場合があります。
なぜあなたは見つけようとしているのですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.