Pesado WAN e controlador de domínio de utilização da CPU quando efectuar cópias de segurança de estado de sistema

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 2789917

Este artigo descreve como cópias de segurança de estado de sistema por controladores de domínio do Active Directory transitoriamente actualizam atributos de referência que fazem com que os clientes do Active Directory Service Interfaces (ADSI) Transferir o esquema de agregação. Este processo de transferência potencialmente aumenta a carga nos computadores de função de controlador de domínio e da rede subjacente.
Sintomas
Os seguintes problemas podem ocorrer ao efectuar cópia de segurança de estado de sistema da partição do esquema em qualquer controlador de domínio numa floresta do Active Directory:
  • Um aumento de utilização da CPU nos computadores de função para controlador de domínio quando computadores baseados no Windows de referência de consulta do Active Directory de atributos que são utilizados os seguintes fins:
    • Para detectar actualizações no esquema de agregação
    • Para copiar o esquema de agregação de controladores de domínio, se uma alteração é detectado
  • Aumentar tráfego Lightweight Directory Access Protocol (LDAP) na rede quando os clientes ADSI copiar o conteúdo do esquema global dos controladores de domínio.
Causa
Este problema ocorre porque o atributo de Assinatura do DSA é actualizado no contexto de nomenclatura do esquema (NC do esquema) quando efectua uma cópia de segurança do Estado do sistema de um controlador de domínio que esteja a executar o Windows Server 2003 Service Pack 1 (SP1) ou uma versão posterior.

Quando o atributo de Assinatura do DSA é actualizado por uma cópia de segurança do Estado do sistema, carimbos de data são actualizados no dois atributos de referência. Um destes atributos encontra-se no cabeçalho NC esquema e o outro encontra-se do CN = agregado, CN = Schema objecto.

Os clientes de Windows que são executados os scripts e aplicações de ADSI consultar estes atributos de referência para detectar actualizações no esquema de agregação. Quando detectam estas actualizações, os clientes ADSI transferirem uma cópia actualizada do esquema global do controlador de domínio através de um LDAP ler.

Nota
para mais informações sobre o esquema de agregação que está relacionado com as consultas LDAP e de rede e/s a detectar, consulte a secção "Mais informação".
Soluções alternativas
Uma solução do lado do servidor e uma solução do lado do cliente fornecem isenção parcial, reduzindo, mas não eliminar o número de vezes que os clientes ADSI transfiram o esquema de agregação. As soluções do lado do cliente e do lado do servidor podem ser aplicadas independentemente umas das outras. Isto significa que pode implementar a solução do lado do cliente só, a alteração do lado do servidor ou ambas as soluções ao mesmo tempo.

Solução do lado do servidor



Editar assinatura do DSA

A solução do lado do servidor consiste em impedir cópias de segurança de estado de sistema da partição do esquema de actualizar o atributo deAssinatura do DSA . O atributo de Assinatura do DSA contém um sinalizador DRA_INHIBIT_BACKUP_AUTO_STAMP para determinar se uma cópia de segurança do Estado do sistema actualizado este atributo. No entanto, porque o atributo de Assinatura do DSA é armazenado em formato binário de grandes dimensões, não pode ser alterado facilmente utilizando uma ferramenta como o LDP. EXE ou o ADSIEDIT. MSC.

Para contornar este problema, execute um script do Windows PowerShell ou um ficheiro executável que impede a cópias de segurança de estado de sistema de actualizar o atributo de Assinatura do DSA na partição do esquema e, por sua vez, o atributo whenChanged no esquema cabeçalho NC e da whenModified atributo do CN = agregado objectos.

Consulte o Editar atributo dSASignature Script PowerShell no site do Microsoft Script Center.

Também pode compilar e executar o seguinte código de exemplo para definir ou desmarcar o sinalizador DRA_INHIBIT_BACKUP_AUTO_STAMP no atributo de Assinatura do DSA sobre o NC do esquema.

Independentemente de se for utilizada um PowerShell ou correcção de programação, existe um efeito negativo do lado de activar o sinalizador DRA_INHIBIT_BACKUP_AUTO_STAMP . Este efeito secundário é documentado na secção "Mais informação".

Nota Este código de exemplo tem de ser executado sob um contexto de segurança de administração de esquema num controlador de domínio.

Certificando-se de que as definições estão actualizadas

Por último, certifique-se de que thatIPv4 e sub-rede, site e definições de site de sub-rede IPv6 são actualizadas na floresta do Active Directory em abrangem todas as sub-redes da sua empresa em todas as florestas. Este procedimento faz com que surethat computadores que executem aplicações de ADSI que estão a consultar e copiar versões actualizadas do esquema global fazê-lo de controladores de domínio ideal para o site. Para mais informações sobre como configurar as definições do site, vá para o seguinte Web site Microsoft TechNet:

Código de exemplo

//+-------------------------------------------------------------------------////// File: dsasignaturemod.c//// This is a sample program for setting or clearing the// DRA_INHIBIT_BACKUP_AUTO_STAMP flag in the dSASignature// attribute on the schema NC.////--------------------------------------------------------------------------#include <windows.h>#include <winldap.h>#include <winber.h>#include <strsafe.h>#include <stdio.h>#include <conio.h>#define CHECKLDAP(result, op) if (result) { printf("%s failed with LDAP error=0x%x(%d)\n", op, result, result); goto Exit; }#define CHECKLDAPLE(result, op) if (!result) { printf("%s failed with LDAP error=0x%x(%d)\n", op, LdapGetLastError(), LdapGetLastError()); goto Exit; }//// Type definitions for the dsaSignature attribute//#define DRA_INHIBIT_BACKUP_AUTO_STAMP (0x1)typedef struct _BACKUP_NC_HEAD_DSA_SIGNATURE_STATE_V1 {DWORD dwFlags;LONGLONG BackupErrorLatencySecs;UUID dsaGuid;} BACKUP_NC_HEAD_DSA_SIGNATURE_STATE_V1;typedef struct _BACKUP_NC_HEAD_DSA_SIGNATURE_STATE {DWORD dwVersion;DWORD cbSize;union{BACKUP_NC_HEAD_DSA_SIGNATURE_STATE_V1 V1;};} BACKUP_NC_HEAD_DSA_SIGNATURE_STATE;// Whether we are setting or clearing the bitBOOL gfSet = FALSE;// Whether we are querying the bitBOOL gfGet = FALSE;// Whether we are automating and want to skip PromptForOK()BOOL skipPrompt = FALSE;// Copy of the schema NC DNLPWSTR pszSchemaNCCopy = NULL;BOOL PromptForOK(){int prompt;BOOL ret = skipPrompt;printf("\n");printf("This program is about to %s the DRA_INHIBIT_BACKUP_AUTO_STAMP flag in\n", gfSet ? "set" : "clear");printf("the dSASignature attribute on the following directory NC:\n");printf("\n");printf(" %S\n", pszSchemaNCCopy);printf("\n");if (!skipPrompt) {printf("Do you wish to continue? (Y\\N)");prompt = _getch();printf("\n");ret = (prompt == 'Y' || prompt == 'y') ? TRUE : FALSE;}return ret;}void Usage(){CHAR szExeName[MAX_PATH];ZeroMemory(szExeName, sizeof(szExeName));GetModuleFileNameA(NULL, szExeName, ARRAYSIZE(szExeName));printf("Usage:\n");printf("\n");printf("%s [/get | /set | /clear] [/auto]\n", szExeName);printf("\n");printf(" /get - queries current state of the DRA_INHIBIT_BACKUP_AUTO_STAMP flag\n");printf(" /set - sets the DRA_INHIBIT_BACKUP_AUTO_STAMP flag\n");printf(" /clear - clears the DRA_INHIBIT_BACKUP_AUTO_STAMP flag\n");printf(" /auto - skips the prompt for proceeding (for automation purposes)\n");printf("\n");}BOOL ParseArgs(int argc, __in char ** argv){BOOL ret = FALSE;if (argc >= 2){if (!_stricmp("/get", argv[1])) {gfGet = TRUE;ret = TRUE;}else if (!_stricmp("/set", argv[1])) {gfSet = TRUE;ret = TRUE;}else if (!_stricmp("/clear", argv[1])) {gfSet = FALSE;ret = TRUE;}if (argc >= 3){if (!_stricmp("/auto", argv[2])) {skipPrompt = TRUE;}}}return ret;} void __cdecl main(int argc, __in char ** argv){BOOL fFoundDSASignature = FALSE;BOOL fFlagSet = FALSE;LDAP* ldap = NULL;ULONG cb = 0;ULONG cch = 0;ULONG result = 0;LPWSTR pszAttrs[2] = { 0 };LPWSTR* ppszSchemaNC = NULL;LDAPMod mod;LDAPMod* mods[2];LDAPMessage* pldapMsg = NULL;LDAPMessage* pldapResults = NULL;struct berval valMod;struct berval* vals[2];struct berval** val = NULL;BACKUP_NC_HEAD_DSA_SIGNATURE_STATE dsaSignature;ZeroMemory(&dsaSignature, sizeof(dsaSignature));if (!ParseArgs(argc, argv)) {Usage();return;}printf("\n");//// Init connection handle//ldap = ldap_init(NULL, LDAP_PORT);CHECKLDAPLE(ldap, "ldap_init");//// Connect to DC//result = ldap_connect(ldap, NULL);CHECKLDAP(result, "ldap_connect");//// Retrieve schema NC name//pszAttrs[0] = L"schemaNamingContext";pszAttrs[1] = NULL;result = ldap_search_sW(ldap,NULL,LDAP_SCOPE_BASE,L"(objectclass=*)",pszAttrs,0,&pldapResults);CHECKLDAP(result, "ldap_search_s for schemaNamingContext");pldapMsg = ldap_first_entry(ldap, pldapResults);CHECKLDAPLE(pldapMsg, "ldap_first_entry");//// Make a copy of the schema NC name//ppszSchemaNC = (LPWSTR*)ldap_get_valuesW(ldap, pldapMsg, L"schemaNamingContext");cch = wcslen(ppszSchemaNC[0]) + 1;pszSchemaNCCopy = (LPWSTR)malloc(cch * sizeof(WCHAR));StringCchCopy(pszSchemaNCCopy, cch, ppszSchemaNC[0]);ldap_value_free(ppszSchemaNC);ppszSchemaNC = NULL;ldap_msgfree(pldapResults);pldapResults = NULL;//// Bind to the DC//result = ldap_bind_s(ldap, pszSchemaNCCopy, NULL, LDAP_AUTH_NEGOTIATE);CHECKLDAP(result, "ldap_bind_s");//// Retrieve current value of the dSASignature attribute//pszAttrs[0] = L"dSASignature";pszAttrs[1] = NULL;result = ldap_search_sW(ldap,pszSchemaNCCopy,LDAP_SCOPE_BASE,L"(objectclass=*)",pszAttrs,0,&pldapResults);CHECKLDAP(result, "ldap_search_s for dSASignature");pldapMsg = ldap_first_entry(ldap, pldapResults);CHECKLDAPLE(pldapMsg, "ldap_first_entry");//// Make a copy of the dSASignature attribute.//val = (struct berval**)ldap_get_values_len(ldap, pldapMsg, L"dSASignature");// Make sure that the value was there and seems to be the correct size.if (val && val[0]) {if (val[0]->bv_len == sizeof(BACKUP_NC_HEAD_DSA_SIGNATURE_STATE)) {memcpy(&dsaSignature, val[0]->bv_val, val[0]->bv_len);fFoundDSASignature = TRUE;}}ldap_value_free_len(val);val = NULL;ldap_msgfree(pldapResults);pldapResults = NULL;//// Sanity check//if (!fFoundDSASignature ||dsaSignature.dwVersion != 1) {printf("The dSASignature attribute was either not\n");printf("found or was in an unexpected format.\n");goto Exit;}//// Cache whether the flag is set already or not//fFlagSet = (DRA_INHIBIT_BACKUP_AUTO_STAMP & dsaSignature.V1.dwFlags) ? TRUE : FALSE;//// If query-only mode, display current setting and leave//if (gfGet) {printf("The target directory %s have the DRA_INHIBIT_BACKUP_AUTO_STAMP set.\n",fFlagSet ? "DOES" : "DOES NOT");goto Exit;}//// If doing a modification, see whether there is anything to do.//if (gfSet && fFlagSet) {printf("The /set operation was specified but the target directory already\n");printf(" has the flag set. Exiting with no changes.\n");goto Exit;}else if (!gfSet && !fFlagSet) {printf("The /clear operation was specified but the target directory already\n");printf(" has the flag cleared. Exiting with no changes.\n");goto Exit;}//// Yes there is work to do; prompt the admin// for approval before you continue.//if (!PromptForOK()) {goto Exit;}//// Set or clear the bit in our local copy//if (gfSet) {dsaSignature.V1.dwFlags |= DRA_INHIBIT_BACKUP_AUTO_STAMP;}else {dsaSignature.V1.dwFlags &= (~DRA_INHIBIT_BACKUP_AUTO_STAMP);}//// Prepare for the modify//ZeroMemory(&valMod, sizeof(valMod));valMod.bv_len = sizeof(dsaSignature);valMod.bv_val = (PCHAR)&dsaSignature;vals[0] = &valMod;vals[1] = NULL;ZeroMemory(&mod, sizeof(mod));mod.mod_op = LDAP_MOD_REPLACE | LDAP_MOD_BVALUES;mod.mod_type = L"dSASignature";mod.mod_vals.modv_bvals = vals;mods[0] = &mod;mods[1] = NULL;//// And do it://result = ldap_modify_s(ldap,pszSchemaNCCopy,mods);CHECKLDAP(result, "ldap_modify_s for dSASignature");printf("\n");printf("Modification succeeded!\n");Exit:if (pszSchemaNCCopy) {free(pszSchemaNCCopy);}if (ldap) {ldap_unbind(ldap);}printf("\n");return;}

Exemplo de resultado de programa

Seguem-se as saídas do programa de exemplo:
C:\>dsasignaturemod.exe /get The target directory DOES NOT have the DRA_INHIBIT_BACKUP_AUTO_STAMP set.
C:\>dsasignaturemod.exe /set  This program is about to set the DRA_INHIBIT_BACKUP_AUTO_STAMP flag inthe dSASignature attribute on the following directory NC:     CN=Schema,CN=Configuration,DC=rootdomain,DC=com Do you wish to continue? (Y\N) Modification succeeded!
C:\>dsasignaturemod.exe /set /auto  This program is about to set the DRA_INHIBIT_BACKUP_AUTO_STAMP flag inthe dSASignature attribute on the following directory NC:     CN=Schema,CN=Configuration,DC=rootdomain,DC=com  Modification succeeded!
C:\>dsasignaturemod.exe /get The target directory DOES have the DRA_INHIBIT_BACKUP_AUTO_STAMP set.
C:\>dsasignaturemod.exe /clear  This program is about to clear the DRA_INHIBIT_BACKUP_AUTO_STAMP flag inthe dSASignature attribute on the following directory NC:     CN=Schema,CN=Configuration,DC=rootdomain,DC=com Do you wish to continue? (Y\N) Modification succeeded!
C:\>dsasignaturemod.exe /clear /auto  This program is about to clear the DRA_INHIBIT_BACKUP_AUTO_STAMP flag inthe dSASignature attribute on the following directory NC:     CN=Schema,CN=Configuration,DC=rootdomain,DC=com  Modification succeeded!

Solução do lado do cliente

Optimizar a selecção do controlador de domínio

Algumas aplicações explicitamente ligar a um controlador de domínio específico e, em seguida, transfira a cache de esquema actualizado a partir deste controlador de domínio. No entanto, aplicações, normalmente, deixe-o para o localizador do controlador de domínio para localizar o melhor controlador de domínio para um determinado contexto de atribuição de nomes de LDAP. Os clientes podem sofrer um atraso considerável na actualização da cache de esquema porque os controladores de domínio de destino através de uma ligação de rede lenta. Este é susceptível de ocorrer em limites de floresta. O objectivo deve ser sempre transferir a cache do esquema do controlador de domínio mais próximo em termos de rede.

Solução alternativa

A solução do lado do cliente consiste em configurar os computadores que executem o Windows Vista, Windows Server 2008 ou versões posteriores para utilizar um arquivo de por computador baseado para o esquema de agregação.

Em computadores baseados no Windows XP, a cache de esquemas de agregação utilizada numa loja de por computador. Isto significa que a transferência do esquema agregação foi partilhada entre todos os utilizadores que estavam a iniciar sessão no computador local, desde que ambos os utilizadores têm direitos administrativos concedidos ou os arquivos locais no sistema de ficheiros e o registo tem permissões de escrita concedidas a utilizadores autenticados. Caso contrário, a cache do esquema ter sido transferida na RAM durante cada sessão ADSI e foi eliminada depois de terminada a sessão ADSI.

No Windows Vista e versões posteriores, a cache do esquema ADSI é implementada num arquivo de por utilizador. Apesar de segurança é melhorada com a cache por utilizador, cada utilizador exclusivo que esteja a iniciar sessão para um protocolo de ambiente de trabalho remoto (RDP) ou servidor de terminais AQ, quiosque ou outro sistema multi-utilizador pode fazer com que o mesmo computador para transferir a cache do esquema ADSI.

Pode forçar uma reversão para a configuração do arquivo por computador em computadores que executem o Windows Vista e versões posteriores, definindo o REG DWORD PerMachine no caminho de registo HKLM\SYSTEM\CurrentControlSet\Services\ADSI\Cache para um valor de 1. Além disso, tem de conceder acesso de escrita em %systemroot%\SchCache e HKLM\Software\Microsoft\ADs\Providers\LDAP a utilizadores autenticados. Para mais informações, consulte ADSI e controlo de conta de utilizador.

Nota Utilizar o arquivo "por máquina" é especialmente útil em cenários em que um perfil de utilizador guardado no servidor é eliminado quando o utilizador termina sessão. Esses utilizadores têm que criar um novo perfil guardado no servidor e poderão ter de transferir o esquema de agregação. Cenários específicos que fazem com que a eliminação de um perfil itinerante incluem o seguinte:
  • Utilizadores que estão configurados para iniciar sessão utilizando perfis de utilizador obrigatório.
  • Utilizadores que estão sujeitas à política "eliminar perfis de utilizador mais antigos do que um número especificado de dias no arranque do sistema".
  • Utilizadores que estão sujeitas à política "eliminar cópias em cache de perfis guardados no servidor".
  • Um utilizador cujo perfil em cache foi eliminado por um script ou a ferramenta, tal como DELPROF. EXE ou equivalente.
Mais Informação

Informações sobre ADSI

Um cliente ADSI é uma implementação de programação que aceder ao Active Directory para estar em conformidade com o para o modelo COM (Component Object).

Computadores baseados no Windows que estiverem a executar os scripts e aplicações de ADSI mantém uma cópia local do esquema do Active Directory agregação. No início de cada sessão de cliente ADSI, o atributo de esquema de referência é verificado para que as alterações. Uma vez que nenhum atributo explícito no Active Directory identifica todas as eventuais alterações ao esquema do Active Directory, os atributos de proxy são utilizados para determinar quando computadores baseados no Windows, devem copiar uma cópia actualizada do esquema global através da rede de um controlador de domínio no domínio respectivo do cliente. Exemplos de aplicações de ADSI incluem o seguinte:
  • Snap-in do directório administrativas Centro Microsoft Management Console (MMC) activa
  • Snap-in de MMC de fidedignidades e domínios do Active Directory
  • Snap-in de MMC de serviços e locais do Active Directory
  • Snap-in de MMC de computadores e utilizadores do Active Directory
  • Snap-in MMC de Editar ADSI
  • Snap-in MMC de DHCP
  • Snap-in MMC do Gestor de DNS
  • Consola de gestão do Exchange
  • Snap-in do MMC de gestão de política grupo
  • Squery.exe

Atributos que são utilizados para detectar alterações ao esquema agregação

A tabela seguinte fornece uma descrição geral dos atributos que são utilizados para detectar alterações de esquema global para cada versão do Windows:

Versão do sistema operativo de cliente ADSICondição para a transferência de cache de esquema ADSI
Windows XP
Windows Server 2003
Windows Server 2003 R2
Windows Vista / Windows Server 2008
Windows 7 / Windows Server 2008 R2
Actualização do atributo modifyTimeStamp no objecto de esquema global
O Windows 8 / Windows Server 2012
Windows 8.1 / Windows Server 2012 R2
Actualização do atributo de esquema de whenChanged
Se for detectada uma alteração destes atributos de proxy, o cliente ADSI transfere uma nova cópia do esquema de agregação.

O atributo modifyTimeStamp no esquema global de consulta de computadores que executem sistemas operativos anteriores ao Windows 8 ou Windows Server 2012. O modifyTimeStamp foi actualizado por reinícios do serviço do Active Directory para que o reiniciar um controlador de domínio ou reiniciar o serviço do Active Directory causou alguns clientes ADSI transferir a cache de esquemas de agregação de um controlador de domínio quando nenhuma alteração de esquema legítimas tivesse ocorrido. Este era inferior de um problema início no, uma vez que o Active Directory tornou-se um serviço em modo de reinício no Windows Server 2008.

O atributo whenChanged no cabeçalho NC esquema de consulta de computadores que executem o Windows 8, 2012 de servidor do Windows ou uma versão posterior. O atributo whenChanged tem o efeito secundário de que está a ser actualizado quando uma cópia de segurança do Estado do sistema actualiza o atributo de Assinatura do DSA no contexto de atribuição de nomes de esquema. Por sua vez, este procedimento actualiza o carimbo de hora no atributo whenChanged do esquema cabeçalho NC.

Eventos que actualizar atributos de proxy de esquema global num controlador de domínio

A tabela seguinte fornece uma descrição geral dos atributos de referência que são actualizadas de acordo com a versão do sistema operativo e as operações que accionam o atributo actualizações.

Versão do sistema operativo de controlador de domínioCondição para a actualização do atributo de esquema global modifyTimeStampCondição para a actualização do atributo de esquema de whenChanged
Windows Server 2003
Windows Server 2003 R2
Windows Server 2008
Windows Server 2008 R2
Inicia o controlador de domínio ou o serviço de directório do NT (NTDS) Extensão do esquema / cópia de segurança de estado do sistema
Windows Server 2008 R2 com KB 2671874
Windows Server 2012
Windows Server 2012 R2
Extensão do esquema / cópia de segurança de estado do sistemaExtensão do esquema / cópia de segurança de estado do sistema
Se for detectada uma alteração, a cache do esquema ADSI tem de ser transferido. Uma cópia de segurança do Estado do sistema escreve dados no atributo de Assinatura do DSA do contexto de atribuição de nomes do esquema resulta num carimbo de hora actualizada whenChanged do esquema.

Detectar actualizações de cache de esquema global por clientes ADSI

Para detectar elevada da CPU e utilização da rede, utilize a Monitor de rede 3.4. ferramenta para capturar a utilização da rede e, em seguida, siga estes passos para analisar os resultados:
  1. Utilize um dos seguintes filtros de visualização da ferramenta, consoante o sistema operativo Windows.

    Nota Estes filtros, substitua a cadeia "CN = Schema, CN = Configuration, DC = Contoso, DC = com" com o caminho nome distinto (DN) do Active Directory esquema contexto de nomenclatura em questão.
    Windows 7 e clientes de versões anteriores
    Utilize o seguinte filtro de visualização para consultar o valor do atributo modifyTimeStamp no objecto esquema agregação o tráfego de rede capturados:
    (LDAPMessage.SearchRequest.BaseObject.OctetStream == "CN=Aggregate,CN=Schema,CN=Configuration,DC=Contoso,DC=com" AND LDAPMessage.SearchRequest.Attributes.Attribute.OctetStream == "modifyTimeStamp") OR(LDAPMessage.SearchResultEntry.ObjectName.OctetStream == "CN=Aggregate,CN=Schema,CN=Configuration,DC=Contoso,DC=com" AND LDAPMessage.SearchResultEntry.Attributes.PartialAttribute.Type.OctetStream == "modifyTimeStamp")
    Windows 8 cliente e versões posteriores

    Utilize o seguinte filtro de visualização para consultar o valor do atributo whenChanged no esquema cabeçalho NC no tráfego de rede capturados:
    (LDAPMessage.SearchRequest.BaseObject.OctetStream == "CN=Schema,CN=Configuration,DC=Contoso,DC=com" AND LDAPMessage.SearchRequest.Attributes.Attribute.OctetStream == "whenChanged") OR (LDAPMessage.SearchResultEntry.ObjectName.OctetStream == "CN=Schema,CN=Configuration,DC=Contoso,DC=com" AND LDAPMessage.SearchResultEntry.Attributes.PartialAttribute.Type.OctetStream == "whenChanged")
    Por predefinição, este valor é comparado com o valor de tempo no registo do cliente na seguinte chave:

    HKEY_CURRENT_USER\Software\Microsoft\ADs\Providers\LDAP\CN=Aggregate,CN=Schema,CN=Configuration,DC=<root domain>,DC=com

    O cliente transfere uma cache de esquema actualizado se o tempo no atributo modifyTimeStamp ou whenChanged mais tarde do que o valor que é armazenado no registo. (Este atributo depende do sistema operativo de cliente.)

    Segue-se uma captura de ecrã de exemplo da ferramenta:

    Esta captura de ecrã é um exemplo que se a hora no atributo modifyTimeStamp ou whenChanged é mais tarde do que o valor que é armazenado no registo

    De captura de ecrã, pode ver o seguinte:
    • O cliente ADSI liga ao controlador de domínio no 8 do nome de pacote.
    • A procura de LDAP para o atributo de proxy alterada de esquema é armazenada dos pacotes LDAPSASLBuffer antecipados que siga o enlace.
    • O tráfego LDAP é encriptado em vários pacotes de LDAPSASLBuffer (porta no DC de destino = 389 de TCP).
    • O controlador de domínio continua a enviar dados encriptados adicionais através de muitos pacotes de TCP que tenham um comprimento de payload TCP de 1460.
  2. Depois de ter identificar a conversação correcta no rastreio de rede que apresente este comportamento, pode filtrar na porta TCP que o cliente está a utilizar. No exemplo, a conversação é iniciada a partir do cliente através da porta TCP 65237. Um filtro de Monitor de rede tal como "tcp.port = = 65237" podem ser utilizadas para isolar pacotes relacionados.
  3. Se copiar todos os pacotes nesta conversação e colar para o Microsoft Excel, verá que a cópia de esquema global predefinido tem um tamanho de payload TCP de 2 megabytes (MB) de dados na ligação. O tamanho do ficheiro do esquema global predefinido é de cerca de 4 MB depois da codificação.

Correlacionar o tráfego de rede para o processo do lado do cliente

Pode utilizar o Monitor de sistema (Sysmon) para determinar o processo no cliente que iniciou esta conversação. 3 o ID de evento é registado no registo de eventos Microsoft-Windows-Sysmon operação quando Sysmon é instalado e configurado para ligações LDAP de registo. Isto permite-lhe relacionar o tráfego de rede a um processo do lado do cliente, uma vez que inicia sessão IP de origem e a porta com o nome de ID de processo e imagem.


Nome do registo: Microsoft-Windows-Sysmon/operacional
Origem: Microsoft-Windows-Sysmon
Data: Data
ID do evento: 3
Categoria de tarefa: Detectada ligação de rede (regra: NetworkConnect)
Nível: informações
Palavras-chave:
Utilizador: sistema
Computador: Computador
Descrição:
Foi detectada uma ligação de rede:
SequenceNumber: 206
UtcTime: UtcTime
ProcessGuid: {ProcessGuid}
ProcessId: 3220
Imagem: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
Utilizador: Nome de utilizador
Protocolo: tcp
Iniciado: true
SourceIsIpv6: Falso
SourceIp: SourceIp
SourceHostname: ADSIClient
Portadeorigem: 65237
SourcePortName:
DestinationIsIpv6: Falso
DestinationIp: DestinationIp
DestinationHostname: DestinationHostname
DestinationPort: 389
DestinationPortName: ldap
Evento Xml:

<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider name="Microsoft-Windows-Sysmon" guid=""></Provider></System></Event>"{Nome do fornecedor}" />
<EventID>3</EventID>
<Version>4</Version>
<Level>4</Level>
<Task>3</Task>
<Opcode>0</Opcode>
<Keywords>0x8000000000000000</Keywords>
<TimeCreated SystemTime=" systemtime=""></TimeCreated SystemTime=">Hora" />
<EventRecordID>39</EventRecordID>
<Correlation></Correlation>
<Execution processid="1140" threadid="3492"></Execution>
<Channel>Microsoft-Windows-Sysmon/operacional</Channel>
<>r >Computador
<Security UserID=" userid=""></Security UserID=">ID de utilizador" />

<EventData>
<Data name="SequenceNumber">206</Data>
<Data name="UtcTime"></Data></EventData>Hora
<Data name="ProcessGuid">{</Data>ProcessGuid}
<Data name="ProcessId">3220</Data>
<Data name="Image">C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe</Data>
<Data name="User"></Data>Utilizador
<Data name="Protocol">TCP</Data>
<Data name="Initiated">Verdadeiro</Data>
<Data name="SourceIsIpv6">Falso</Data>
<Data name="SourceIp"></Data>SourceIp
<Data name="SourceHostname"></Data>SourceHostname
<Data name="SourcePort">65237</Data>
<Data name="SourcePortName">
</Data>
<Data name="DestinationIsIpv6">Falso</Data>
<Data name="DestinationIp"></Data>DestinationIp
<Data name="DestinationHostname"></Data>DestinationHostname
<Data name="DestinationPort">389</Data>
<Data name="DestinationPortName">LDAP</Data>

Monitor do processo de registo no cliente

Monitor do processo de registo no cliente fornece informações contextuais ricos. Filtre o ID do processo que tem sessão iniciada de eventos registados pelo Sysmon sessão Monitor do processo.

A captura de ecrã filtros de registo do Monitor do processo no ID do processo com sessão iniciada de eventos registados pelo Sysmon

Poderá encontrar as seguintes operações de interesse.
OperaçãoCaminho
Em RegOpenKeyHKLM\SYSTEM\CurrentControlSet\Services\ADSI\Cache
RegQueryValueHKCU\Software\Microsoft\ADs\Providers\LDAP\CN = agregado, CN = Schema, CN = Configuration, DC =domínio subordinado, DC =domínio raiz, DC = com\Time
Recepção de TCPNome de anfitrião>: porta-> <DCName> </DCName>: LDAP
Funções RegCreateKeyHKCU\SOFTWARE\Microsoft\ADs\Providers\LDAP\CN = agregado, CN = Schema, CN = Configuration, DC =domínio subordinado, DC =domínio raiz, DC = com
WriteFileC:\Users\<username>\AppData\Local\Microsoft\Windows\SchCache\</username>domínio subordinado.domínio raiz. com.sch
Nota É uma forma de verificar se os computadores baseados no Windows estão a actualizar a cópia local da cache do esquema de agregação monitorizar alterações o carimbo de data do ficheiro *.sch no sistema de ficheiros local do cliente ADSI.

Pode utilizar os dados na tabela seguinte para redefinir o filtro para registos de Monitor do processo muito grandes.

Filtros opcionais adicionais:
ColunaRelaçãoValor
CaminhoContémSchCache
OperaçãoÉWriteFile
A captura de ecrã é o filtro de Monitor do processo

Configurar Sysmon para ligações LDAP de registo

  1. Transferir Sysmon no cliente.
  2. Criar um novo ficheiro de texto para a configuração de Sysmon, guarde o ficheiro como Sysmonconfig.xml e adicionar o seguinte conteúdo:

    <Sysmon schemaversion="2.0">  <!-- Capture all hashes -->  <HashAlgorithms>*</HashAlgorithms>  <EventFiltering>  <!-- Log all drivers except if the signature -->  <!-- contains Microsoft or Windows -->  <DriverLoad onmatch="exclude">  <Signature condition="contains">microsoft</Signature>  <Signature condition="contains">windows</Signature>  </DriverLoad>  <!-- Do not log process termination -->  <ProcessTerminate onmatch="include" />  <!-- Log network connection if the destination port equal 443 -->  <NetworkConnect onmatch="include">  <DestinationPort>389</DestinationPort><DestinationPort>636</DestinationPort><DestinationPort>3268</DestinationPort><DestinationPort>3269</DestinationPort>  </NetworkConnect>  </EventFiltering></Sysmon>
  3. Execute o seguinte comando para instalar Sysmon:
    Sysmon -i sysmonconfig.xml

Efeito secundário de activar o sinalizador DRA_INHIBIT_BACKUP_AUTO_STAMP

Um efeito secundário de activar o sinalizador DRA_INHIBIT_BACKUP_AUTO_STAMP é esse evento que ID 2089 irá indicar incorrectamente que a partição do esquema não está a ser capturada em florestas que estão a criar sistema cópias de segurança do Estado.

Um evento de amostra ID 2089 semelhante à seguinte é registado no registo de aplicações:


Tipo de evento: aviso
Origem do evento: Replicação de NTDS
Categoria de evento: cópia de segurança
ID do evento: 2089
Data: data
Hora: hora
Utilizador: nome de utilizador
Computador: nome de computador
Descrição:

Esta partição de directório não foram efectuou uma cópia desde pelo menos o seguinte número de dias.

Partição de directório:

CN = schema, DC = partição de aplicações de dns de raiz de floresta

Nota ID de evento 2089 não está registado para outras partições chaves tal como CN = Configuration ou partições do directório de domínio porque não existe nenhum método para efectuar cópias de segurança específico de partição. Para mais informações, consulte o seguinte artigo na Microsoft Knowledge Base:
914034 2089 de eventos de replicação do NTDS é registado se o Windows Server 2003 SP1 e posteriores controladores de domínio não são efectuados cópias num determinado período de tempo

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 2789917 - Última Revisão: 07/29/2015 21:14:00 - Revisão: 3.0

Windows Server 2012 R2 Datacenter, Windows Server 2012 R2 Standard, Windows Server 2012 R2 Essentials, Windows Server 2012 Datacenter, Windows Server 2012 Standard, Windows Server 2012 Essentials, Windows Server 2008 R2 Datacenter, Windows Server 2008 R2 Enterprise, Windows Server 2008 R2 Standard

  • kbexpertiseadvanced kbsurveynew kbbug kbprb kbtshoot kbmt KB2789917 KbMtpt
Comentários