Trong bài viết này, chúng ta sẽ xem xét cách tìm bộ điều khiển miền với các vai trò FSMO trong Active Directory, cách chuyển nhượng một hoặc nhiều vai trò FSMO sang bộ điều khiển miền khác (bổ sung/phụ) và cách điếm các vai trò FSMO trong trường hợp lỗi của bộ điều khiển miền nắm giữ vai trò FSMO.
Hiểu Về Vai Trò FSMO trong Miền Active Directory
Vai trò FSMO (Flexible Single Master Operation) trong miền Active Directory là gì? Bạn có thể thực hiện hầu hết các thao tác tiêu chuẩn trong Active Directory (như tạo tài khoản người dùng mới và nhóm bảo mật hoặc thêm máy tính vào miền) trên bất kỳ bộ điều khiển miền nào. Dịch vụ tương tự AD chịu trách nhiệm phân phối các thay đổi này khắp thư mục AD. Các xung đột khác nhau (ví dụ: đổi tên đồng thời tài khoản người dùng trên một vài bộ điều khiển miền) được giải quyết bằng một nguyên tắc đơn giản — cái sau cùng là đúng. Tuy nhiên, có một số thao tác mà xung đột là không thể chấp nhận được (ví dụ: khi tạo domain con/forest mới, thay đổi schema AD, v.v.). Để thực hiện các thao tác yêu cầu sự duy nhất, bạn cần bộ điều khiển miền với các vai trò FSMO. Nhiệm vụ chính của các vai trò FSMO là ngăn chặn các xung đột như vậy.
Có thể có năm vai trò FSMO trong một miền Active Directory.
Hai vai trò là duy nhất cho một AD forest:
- Schema master chịu trách nhiệm thực hiện thay đổi đối với schema Active Directory (ví dụ: khi mở rộng schema AD bằng lệnh
adprep /forestprep; - Domain naming master cung cấp tên duy nhất cho tất cả các miền và phân vùng ứng dụng bạn tạo trong forest AD của bạn (để quản lý nó, bạn cần đặc quyền “Enterprise admins”).
Và có ba vai trò cho mỗi domain (để quản lý chúng, tài khoản của bạn phải là thành viên của nhóm “Domain Admins”):
- PDC emulator là trình duyệt chính trong mạng Windows của bạn (Domain Master Browser được dùng để hiển thị máy tính trong môi trường mạng), nó theo dõi việc khóa người dùng khi nhập sai mật khẩu, nó là máy chủ NTP chính trong miền của bạn, nó được dùng để cung cấp tương thích với client chạy Windows 2000/NT, nó được dùng bởi DFS root server để cập nhật thông tin namespace;
- Infrastructure Master chịu trách nhiệm cập nhật liên kết đối tượng cross-domain; và lệnh
adprep /domainprepđược chạy trên nó; - RID Master — máy chủ phân phối RIDs (theo gói 500 cái) cho các bộ điều khiển miền khác để tạo định danh đối tượng duy nhất (SIDs).
Cách Liệt Kê Chủ Sở Hữu Vai Trò FSMO trong Miền?
Làm thế nào bạn có thể tìm ra bộ điều khiển miền nào là chủ sở hữu vai trò FSMO trong miền Active Directory của bạn?
Để tìm tất cả chủ sở hữu vai trò FSMO trong miền, chạy lệnh:
netdom query fsmo

Schema master dc01.test.com Domain naming master dc01.test.com PDC dc01.test.com RID pool manager dc01.test.com Infrastructure master dc01.test.com
Bạn có thể xem vai trò FSMO cho miền khác:
netdom query fsmo /domain:woshub.com
Trong ví dụ này, bạn thấy rằng tất cả vai trò FSMO đều nằm trên DC01. Khi triển khai forest AD mới (miền), tất cả vai trò FSMO được đặt trên DC đầu tiên. Bất kỳ bộ điều khiển miền nào, trừ RODC, có thể là chủ sở hữu của bất kỳ vai trò FSMO nào. Theo đó, quản trị viên miền có thể chuyển nhượng bất kỳ vai trò FSMO nào sang bất kỳ bộ điều khiển miền nào khác.
Bạn có thể lấy thông tin về vai trò FSMO trong miền của bạn qua PowerShell bằng cmdlet Get-ADDomainController (mô-đun RSAT Active Directory cho PowerShell phải được cài đặt):
Get-ADDomainController -Filter * | Select-Object Name, Domain, Forest, OperationMasterRoles |Where-Object {$_.OperationMasterRoles}
Hoặc bạn có thể xem vai trò FSMO cấp forest hoặc domain như sau:
Get-ADDomain | Select-Object InfrastructureMaster, RIDMaster, PDCEmulator
Get-ADForest | Select-Object DomainNamingMaster, SchemaMaster

Dưới đây là các khuyến nghị chung của Microsoft về việc đặt vai trò FSMO trong miền:
- Đặt vai trò cấp forest (Schema master và Domain naming master) trên root domain mà đồng thời là Global Catalog server;
- Đặt cả ba vai trò FSMO cấp domain trên một bộ điều khiển miền với hiệu suất phù hợp;
- Tất cả DC forest phải là Global Catalog server vì nó cải thiện độ tin cậy và hiệu suất AD. Sau đó vai trò Infrastructure Master thực tế không cần thiết. Nếu bạn có DC không có vai trò Global Catalog, hãy đặt vai trò Infrastructure Master trên nó.
- Đừng đặt bất kỳ tác vụ nào khác trên DC chủ sở hữu vai trò FSMO.
Bạn có thể chuyển nhượng vai trò FSMO trong Active Directory bằng một vài phương pháp: sử dụng snap-in đồ họa AD MMC, ntdsutil.exe hoặc PowerShell. Việc chuyển nhượng vai trò FSMO có liên quan khi tối ưu hóa cơ sở hạ tầng AD của bạn, hoặc DC nắm giữ vai trò FSMO đã gặp sự cố phần cứng/phần mềm nghiêm trọng. Có hai cách di chuyển vai trò FSMO: chuyển nhượng (khi cả hai DC đều có sẵn) hoặc điếm (khi DC với vai trò FSMO không có sẵn hoặc đã bị hỏng).
Cách Chuyển Nhượng Vai Trò FSMO với PowerShell?
Cách dễ dàng và nhanh nhất để chuyển nhượng vai trò FSMO trong miền là sử dụng cmdlet PowerShell Move-ADDirectoryServerOperationMasterRole.
Bạn có thể chuyển nhượng một hoặc nhiều vai trò FSMO cùng lúc sang DC được chỉ định. Lệnh sau sẽ di chuyển hai vai trò sang DC02:
Move-ADDirectoryServerOperationMasterRole -Identity dc03 -OperationMasterRole PDCEmulator, RIDMaster

Trong đối số OperationMasterRole, bạn có thể chỉ định tên của vai trò FSMO hoặc chỉ số của nó theo bảng sau:
| PDCEmulator | 0 |
| RIDMaster | 1 |
| InfrastructureMaster | 2 |
| SchemaMaster | 3 |
| DomainNamingMaster | 4 |
Lệnh trước ở dạng ngắn gọn trông như sau:
Move-ADDirectoryServerOperationMasterRole -Identity dc02 -OperationMasterRole 0,1
Để chuyển nhượng tất cả vai trò FSMO cùng lúc sang bộ điều khiển miền bổ sung, chạy lệnh này:
Move-ADDirectoryServerOperationMasterRole -Identity dc03 -OperationMasterRole 0,1,2,3,4
Chuyển Nhượng Vai Trò FSMO Sử Dụng Snap-in Đồ Họa Active Directory
Để di chuyển vai trò FSMO, bạn có thể sử dụng snap-in đồ họa Active Directory tiêu chuẩn. Thao tác chuyển nhượng tốt nhất được thực hiện trên DC có vai trò FSMO. Nếu console cục bộ của máy chủ không có sẵn, sử dụng tùy chọn Change Domain Controller và chọn bộ điều khiển miền trong snap-in MMC.

Cách Chuyển Nhượng Vai Trò RID Master, PDC Emulator & Infrastructure Master?
Để chuyển nhượng vai trò cấp domain (RID, PDC, Infrastructure Master), console Active Directory Users and Computers (DSA.msc) được sử dụng.
- Mở snap-in Active Directory Users and Computers (ADUC);
- Click chuột phải tên miền của bạn và chọn Operations Master;

- Một cửa sổ với ba tab (RID, PDC, Infrastructure) xuất hiện. Sử dụng các tab này để chuyển nhượng các vai trò tương ứng bằng cách chỉ định chủ sở hữu FSMO mới và nhấp nút Change.

Cách Chuyển Nhượng Vai Trò Schema Master?
Để chuyển nhượng vai trò FSMO Schema Master cấp forest, snap-in Active Directory Schema được sử dụng.
- Trước khi bắt đầu snap-in, bạn phải đăng ký thư viện schmmgmt.dll bằng cách chạy
regsvr32 schmmgmt.dlltrong command prompt;

- Mở console MMC, bằng cách gõ MMC trong command prompt;
- Chọn File → Add/Remove snap-in từ menu và thêm console Active Directory Schema;

- Click chuột phải gốc console (Active Directory Schema) và chọn Operations Master;
- Nhập tên bộ điều khiển miền bạn muốn chuyển nhượng vai trò Schema Master sang, sau đó nhấp Change và OK. Nếu nút không có sẵn, đảm bảo rằng tài khoản của bạn là thành viên của nhóm Schema admins.

Cách Chuyển Nhượng Vai Trò Domain Naming Master FSMO?
- Để chuyển nhượng vai trò FSMO Domain Naming Master, mở console Active Directory Domains and Trusts;
- Click chuột phải tên miền của bạn và chọn Operations Master;
- Nhấp Change, nhập tên bộ điều khiển miền và nhấp OK.

Sử Dụng Ntdsutil.exe để Chuyển Nhượng Vai Trò FSMO từ Command Prompt
Quan trọng. Sử dụng công cụ ntdsutil.exe cẩn thận và đảm bảo bạn biết mình đang làm gì hoặc bạn có thể làm hỏng miền Active Directory của mình!
- Chạy command prompt trên bộ điều khiển miền của bạn và chạy:
ntdsutil - Nhập lệnh này:
roles - Sau đó:
connections - Sau đó bạn phải kết nối đến DC bạn muốn chuyển nhượng vai trò FSMO sang. Để làm điều đó, nhập:
connect to server <servername> - Gõ
qvà nhấn Enter; - Để chuyển nhượng một vai trò FSMO, sử dụng lệnh này:
transfer <role>, nơi <role> là vai trò bạn muốn chuyển nhượng. Ví dụ:transfer schema master,transfer RID, v.v;

- Xác nhận chuyển nhượng vai trò FSMO;

- Khi xong, nhấn
qvà sau đó Enter để thoát ntdsutil.exe; - Khởi động lại bộ điều khiển miền.
Điếm Vai Trò AD FSMO
Nếu một DC với một trong các vai trò FSMO đã bị hỏng (và không thể khôi phục) hoặc không có sẵn trong thời gian dài, bạn có thể buộc điếm bất kỳ vai trò nào của nó. Tuy nhiên, rất quan trọng để đảm bảo rằng máy chủ bạn điếm vai trò từ đó không bao giờ xuất hiện trong mạng nếu bạn không muốn bất kỳ vấn đề mới nào với AD (ngay cả nếu bạn sau đó khôi phục DC từ bản sao lưu). Nếu bạn muốn trả DC hỏng trở lại miền, phương pháp đúng duy nhất là xóa tài khoản máy tính của nó khỏi AD, thực hiện cài đặt Windows sạch với hostname mới, cài đặt vai trò ADDS và nâng cấp máy chủ lên bộ điều khiển miền.
Bạn có thể điếm vai trò FSMO bằng PowerShell hoặc NTDSUtil.
Cách dễ nhất để điếm một vai trò FSMO là qua PowerShell. Để làm điều đó, cùng cmdlet Move-ADDirectoryServerOperationMasterRole được sử dụng, nhưng tham số –Force được thêm vào.
Ví dụ: để điếm vai trò PDCEmulator và buộc chuyển nó sang DC02, chạy lệnh:
Move-ADDirectoryServerOperationMasterRole -Identity DC2 -OperationMasterRole PDCEmulator –Force
Bạn cũng có thể điếm vai trò FSMO sang máy chủ DC02 của bạn bằng ntdsutil.exe. Việc điếm vai trò tương tự như chuyển nhượng phổ biến. Sử dụng các lệnh sau:
ntdsutil
roles
connections
connect to server DC02 (máy chủ bạn chuyển nhượng vai trò sang)
quit
Để điếm các vai trò FSMO khác nhau, sử dụng các lệnh này:
seize schema master
seize naming master
seize rid master
seize pdc
seize infrastructure master
quit