Início > Active Directory Modules for Windows Powershell, Windows PowerShell > Active Directory Modules for Windows PowerShell – Elevando/rebaixando o DFL/FFL na floresta/domínio

Active Directory Modules for Windows PowerShell – Elevando/rebaixando o DFL/FFL na floresta/domínio

maio 2, 2015

Olá pessoALL,

Salve novamente para todos que acompanham o blog e me desculpem pelo tempo sem inserir nada novo. Projetos pessoais e profissionais muitas vezes demandam mais tempo do que o que se espera e abrir mão de algums coisas temporariamente as vezes é necessário.

Enfim… Hoje eu vou falar sobre um processo simples que todos os profissionais que lidam com Directory Services já passaram, estão passando ou irão passar algum dia. A elevação do nível funcional de domínio (DFL) e/ou floresta (FFL).

Este processo não é uma ação traumática de ser feita, no entanto, é preciso ter conhecimento do que está envolvido neste tipo de alteração e também das suas consequências.

Olhando pelo lado da ação literalmente, para se realizar a elevação do nível funcional de domínio é preciso:

  • ser membro do grupo Domain Admins do domínio.
  • a elevação pode ser feita somente sobre o Domain Controller onde a FSMO de PDC Emulator está ao utilizar o PowerShell para esta ação.
  • o nível funcional de domínio determina que somente versões do Windows Server correspondentes ou superiores possam ser Domain Controllers neste domínio.
  • você não pode ter um nível funcional de domínio inferior do nível funcional de floresta.

Falando agora sobre a elevação do nível funcional de floresta é preciso:

  • ser membro do grupo Enterprise Adminis do domínio.
  • a elevação pode ser feita somente sobre o Domain Controller onde a FSMO de Schema Master está ao utilizar o PowerShell para esta ação.
  • o nível funcional de floresta determina que somente versões do Windows Server correspondentes ou superiores possam ser Domain Controllers nesta floresta.

É possível encontrar em alguns locais, textos informando que não é possível reverter a elevação de nível de domínio e/ou floresta, mas esta informação não é completamente verdadeira.

Em versões anteriores ao Windows Server 2008 R2 esta era uma verdade, mas a partir desta versão, caso a elevação tenha sido feita e por alguma razão seja necessário rebaixá-la, desde que e somente se o downgrade for para um nível inferior, está ação é possível, no entanto, há resalvas e também condições específicas para ser viável o rollback.

Para entender melhor as regras e possibilidades de Rollback para DFL/FFL, tal como os recursos obtidos em cada nível de domínio e floresta, eu recomendo a leitura do artigo a seguir:

Understanding Active Directory Domain Services (AD DS) Functional Levels

Voltando ao assunto de upgrade/downgrade de DFL/FFL, o primeiro passos que iremos realizar é determinar préviamente a versão de cada Domain Controller no domínio.

É importante ter esta informação bem clara, pois se houver um DC com uma versão inferior ao nível de FFL/DFL esperado, não será possível a elevação até que este DC seja decomissionado.

Abra o Active Directory Modules for Windows PowerShell como Administrator e execute o comando abaixo para listar todos os DC do domínio:

Get-ADDomainController -Filter * | Ft Name,Domain,Site,OperatingSystem,OperationMasterRoles -Wrap -AutoSize

Raise_DFL_FFL_0001

Como podemos ver na imagem acima, temos três Domain Controllers e todos eles estão executando a versão Windows Server 2012 R2 Standard, então podemos elevar o nível funcional de floresta e domínio para o Windows Server 2012 R2 sem nenhum problema.

Ainda na janela do PowerShell, vamos conferir se o usuário atual que estamos usando para efetuar a elevação de FFL/DFL possui os grupos necessários para esta ação com o seguinte comando:

Get-ADUser nsfw_admin -Properties MemberOf | select -ExpandProperty MemberOf

Raise_DFL_FFL_0002

Na imagem anterior é possível visualizarmos que o usuário nsfw_admin é membro dos grupos Domain Admins e Enterprise Admins.

Para fecharmos o levantamento das informações necessárias, vamos verificar quais são os níveis de FFL/DFL usando os comandos abaixo:

Get-ADDomain | Ft DomainMode,DistinguishedName -Wrap -AutoSize

Get-ADForest | Ft ForestMode,Domains -Wrap -AutoSize

Raise_DFL_FFL_0003

Neste caso, os níveis de FFL/DFL já estão em seus níveis mais elevados e os possíveis valores para este resultado no caso de um ambiente onde estes níveis estejam inferiores são:

DFL

  • Windows2000
  • Windows2003InterimDomain
  • Windows2003Domain
  • Windows2008Domain
  • Windows2008R2Domain
  • Windows2012Domain
  • Windows2012R2Domain

FFL

  • Windows2000Forest
  • Windows2003InterimForest
  • Windows2003Forest
  • Windows2008Forest
  • Windows2008R2Forest
  • Windows2012Forest
  • Windows2012R2Forest

Vamos supor que neste caso o nível de DFL/FFL estivessem em Windows2008R2Domain/Windows2008R2Forest e que o objetivo é subir o DFL/FFL para Windows2012R2Domain/Windows2012R2Forest, o primeiro passo seria elevarmos o DFL a partir do DC onde a FSMO de PDC Emulator está ativa, mas não necessáriamente precisamos efetuar este comando sobre o DC onde esta FSMO está.

Para executarmos esta ação a partir de qualquer DC ou até mesmo de qualquer cliente que tenha as ferramentas do RSAT instalado você precisa apenas executar o seguinte comando sobre o Active Directory Modules for Windows PowerShell:

Set-ADDomainMode -Identity (Get-ADDomain).DNSRoot -Server (Get-ADDomain).PDCEmulator -DomainMode Windows2012R2Domain

Raise_DFL_FFL_0004

O que nós acabamos de fazer foi utilizar o PowerShell para elevarmos o DFL do domínio NoSafeForWork.net a partir de qualquer DC ou cliente procurando através do resultado para o comando (Get-ADDomain).PDCEmulator para obter o nome do DC onde a FSMO de PDC Emulator está.

Após termos elevado o DFL, vamos agora elevar o FFL utilizando o mesmo conceito do comando anterior, mas alterando o CMDLet usado para obter as informações sobre o nome da floresta e nome do DC onde a FSMO de SchemaMaster está hospedada.

Set-ADForestMode -Identity (Get-ADForest).Name -Server (Get-ADForest).SchemaMaster -ForestMode Windows2012R2Forest

Raise_DFL_FFL_0005

Perfeito! Com este último comando nós acabamos de elevar o FFL da floresta e para conferir as novas informações sobre os níveis de DFL/FFL, utilize novamente os comandos abaixo mostrados anteriormente:

Get-ADDomain | Ft DomainMode,DistinguishedName -Wrap -AutoSize

Get-ADForest | Ft ForestMode,Domains -Wrap -AutoSize

Agora, vamos rebaixar (downgrade) o nível de DFL/FFL por que por alguma razão o upgrade de versão para o sistema operacional mais recente foi deferida, por que há alguma necessidade de se ter um DC com uma versão anterior ao atual, etc.

O processo é o mesmo, mas você precisa ter lido com muita atenção ao documento que foi citado no inicio deste post. Rebaixar ou fazer ou downgrade do DFL/FFL apenas será possível caso você não tenha feito uma alteração significativa e irreversível no domínio.

Um exemplo prático deste tipo de situação é a AD Recycled Bin. Este é um recurso excelente inserido a partir do Windows Server 2008 R2, porém, uma vez alterado, não pode mais ser desabilitado. Mas o que a AD Recycled Bin influencia neste caso?

Bem, digamos que você tenha um domínio com DFL/FFL definidos como Windows2012R2Domain/Windows2012R2Forest e por algum motivo você precisa inserir um Windows Server 2008 como Domain Controller.

Se a AD Recycled Bin estiver habilitada, você somente será capaz de rebaixar o DFL/FFL para Windows2008R2Domain/Windows2008R2Forest que é a versão mínima para este recurso. Agora, caso a AD Recycled Bin estiver desabilitada que é o padrão, você será capaz de rebaixar o DFL/FFL para Windows2008Domain/Windows2008Forest sem nenhum problema.

Outro ponto muito importante no processo de rebaixar o DFL/FFL é que a sua replicação precisa estar completamente saudável antes de executar este passo, caso contrário, o processo poderá falhar. Um detalhe importante é que o processo para rebaixar o DFL/FFL pode ser feito apenas através do PowerShell.

Tendo em mente, verificado e validado todos os pontos envolvidos, vamos então mostrar o quão simples é o processo para rebaixar o DFL/FFL para Windows2008R2Domain/Windows2008R2Forest.

Abra o PowerShell com privilégio de Administrator e execute o comando abaixo para rebaixar o FFL:

Set-ADForestMode -Identity (Get-ADForest).Name -Server (Get-ADForest).SchemaMaster -ForestMode Windows2008R2Forest

Você pode verificar os passos como mostrado na imagem abaixo:

raise_dfl_ffl_00043

Já temos o FFL rebaixado, agora vamos executar o mesmo processo para o DFL com o comando a seguir:

Set-ADDomainMode -Identity (Get-ADDomain).DNSRoot -Server (Get-ADDomain).PDCEmulator -DomainMode Windows2008R2Domain

E vamos verificar novamente na imagem abaixo como isto foi feito:

raise_dfl_ffl_00044

Pretty easy, huh!?

É isso pessoal. Espero que tenham gostado e que este tipo de procedimento tenha ficado um pouco mais claro e o processo para elevar/rebaixar o DFL/FFL mais simples de ser feito.

Até a próxima…

%d blogueiros gostam disto: