Buộc sao chép giữa hai bộ điều khiển miền trong Active Directory

Hãy tưởng tượng(Imagine) chỉ có một cánh cửa dẫn đến ngôi nhà của bạn. Không có cửa sổ, không có cửa hiên, chỉ có một cửa ra vào. Điều gì xảy ra nếu bạn không thể mở cánh cửa đó? Ngôi nhà và mọi thứ trong đó đều vô dụng đối với bạn.

Theo một nghĩa nào đó, bộ điều khiển miền giống như một cánh cửa. Một với một người bảo vệ nó. Đó là cửa ngõ để vào bên trong những thứ bạn muốn. Active Directory (AD) là cơ quan bảo vệ trước cửa. Nó kiểm tra thông tin đăng nhập của bạn, xác định xem bạn có được phép đi qua cửa hay không và những tài nguyên nào bạn có thể truy cập khi vào bên trong. 

Nếu bạn đang điều hành một mạng thuộc bất kỳ loại nào và chỉ có một bộ điều khiển miền, bạn đang sống trong một ngôi nhà có một cửa. Nếu điều gì đó xảy ra với bộ điều khiển miền đó, toàn bộ hệ thống máy chủ của bạn sẽ tan rã. Luôn có nhiều hơn một bộ điều khiển miền (DC).

Nhưng làm thế nào để bạn đảm bảo rằng cả hai bộ điều khiển miền có cùng thông tin? Giả sử bạn đã thực hiện một thay đổi liên quan đến bảo mật trên một DC. Bạn muốn đảm bảo rằng thay đổi đó sẽ được lặp lại trên các DC(DCs) khác của bạn ngay lập tức. Tại sao phải đợi 15 phút hoặc hơn để nó xảy ra theo lịch trình? Bạn cần buộc sao chép bộ điều khiển miền trong Active Directory

Có 3 cách để tiếp cận điều này; thông qua giao diện người dùng đồ họa ( GUI ), thông qua giao diện dòng lệnh ( CLI ) hoặc qua PowerShell .

Buộc sao chép bộ điều khiển miền thông qua GUI(Force Replication Of Domain Controller Through GUI)

Máy chủ Windows sử dụng GUI(GUIs) rất nhiều, điều này rất tốt cho các Quản trị viên Hệ thống(Systems Administrators) mới làm quen . Nó dễ học hơn và đôi khi giúp bạn hình dung những gì đang thực sự xảy ra. 

  1. Đăng nhập vào một trong các DC của bạn và mở các Trang web và Dịch vụ Active Directory(Active Directory Sites and Services) .

  1. Điều hướng đến trang web mà bạn muốn sao chép bộ điều khiển miền. Mở rộng nó bằng cách nhấp vào đầu mũi tên bên cạnh tên trang web. Mở rộng Máy chủ(Servers) . Mở rộng DC mà bạn muốn sao chép. Nhấp(Click) vào Cài đặt NTDS(NTDS Settings) .

  1. Trong ngăn bên phải, nhấp chuột phải vào máy chủ và chọn Replicate Now .

  1. Tùy thuộc vào số lượng DC(DCs) , quá trình này có thể mất ít hơn một giây đến vài phút. Khi hoàn tất, bạn sẽ thấy thông báo “Dịch vụ miền Active Directory đã sao chép các kết nối.”. Nhấn (Click) OK để hoàn tất.

Buộc sao chép bộ điều khiển miền thông qua lệnh CLI(Force Replication of Domain Controllers Through CLI Command)

Nếu bạn đã quen thuộc với Windows CMD cũ , thì lệnh repadmin là dành cho bạn. Đây là cách nhanh nhất một lần để buộc sao chép DC. Nếu bạn chưa quen thì đây là thời điểm tốt để tìm hiểu về Windows CMD(learn about Windows CMD)

  1. Đăng nhập(Log) vào một trong các DC(DCs) của bạn và mở Command Prompt .

  1. Nhập(Enter) lệnh sau, rồi nhấn phím Enter .
repadmin /syncall /AdeP

  1. Một loạt thông tin sẽ cuộn lên trên màn hình. Nếu bạn thấy dòng cuối cùng ghi, “SyncAll đã kết thúc mà không có lỗi.”, Và sau đó xuất hiện dấu nhắc lệnh bên dưới nó, các DC(DCs) của bạn đã được sao chép thành công.

Buộc sao chép bộ điều khiển miền với PowerShell(Force Domain Controller Replication With PowerShell)

Nếu bạn không sử dụng PowerShell trong cuộc sống hàng ngày của mình, bạn đang bỏ lỡ. Bạn thực sự mắc nợ chính mình khi học PowerShell(learn PowerShell) . Nó sẽ làm cho cuộc sống của bạn dễ dàng hơn, và nếu bạn là Quản trị viên Hệ thống Cơ(Systems Administrator) sở, nó sẽ giúp đưa sự nghiệp của bạn lên một bước tiếp theo.

Các bước này có thể được thực hiện trong PowerShell CLI thông thường , nhưng chúng tôi đã thực hiện nó trong PowerShell ISE để hiển thị tốt hơn các lệnh và kết quả của chúng. Chúng tôi sẽ xây dựng một tập lệnh mà bạn có thể lưu hoặc thậm chí biến thành một lệnh ghép ngắn mà bạn có thể gọi từ dòng lệnh PowerShell .

  1. Đăng nhập vào một trong các DC của bạn và mở PowerShell hoặc PowerShell ISE .

  1. Trước khi viết bất kỳ tập lệnh nào, hãy lưu đoạn mã này với tên mô tả như force-DCReplication.ps1 để bạn có thể sử dụng lại dễ dàng hơn. Nhập mã sau và chạy nó để xem nó sẽ lấy tên của tất cả các DC(DCs) của bạn như thế nào .
(Get-ADDomainController -Filter *).Name

Hãy xem nó trả về tên của các DC(DCs) như thế nào? Bây giờ bạn có thể chuyển kết quả đó vào lệnh ghép ngắn tiếp theo. Dấu gạch ngang là ký tự dòng dọc ( | ), thường được tìm thấy trên bàn phím ngay phía trên phím Enter .

  1. Ở cuối lệnh trước, nhập mã sau:
| Foreach-Object { repadmin /syncall $_ (Get-ADDomain).DistinguishedName /AdeP }

Lệnh sẽ giống như trong hình dưới đây. Chạy nó đi. Nó sẽ trả về một thông báo giống như thông báo trong phần Buộc sao chép bộ điều khiển miền(Force Domain Controller Replication) thông qua GUI ở trên. Nếu nó kết thúc bằng, " SyncAll đã(SyncAll) kết thúc mà không có lỗi." sau đó nó hoạt động. 

Bạn có thấy nó cũng sử dụng lệnh repadmin không?

  1. Hãy thêm một dòng khác để giúp bạn đảm bảo rằng quá trình sao chép thực sự đã hoàn thành. Đoạn mã sau sẽ trả về ngày và giờ khi mỗi DC(DCs) của bạn được sao chép lần cuối. Lệnh này có thể được sử dụng riêng vào lúc khác nếu bạn chỉ tò mò khi các DC(DCs) của bạn được sao chép lần cuối. Nhập(Enter) mã và chạy nó.
Get-ADReplicationPartnerMetadata -Target "$env:userdnsdomain" -Scope Domain | Select-Object Server, LastReplicationSuccess

Kết quả sẽ giống như hình ảnh bên dưới. Bạn sẽ thấy ở dưới cùng ngày và thời gian chính xác lần cuối diễn ra.

  1. Để đánh bóng một chút kịch bản này, hãy làm cho đầu ra của nó bớt dài dòng hơn một chút. Gần cuối dòng đầu tiên, nhập | Out-Null giữa /AdeP và dấu ngoặc nhọn cuối. Điều đó cho biết nó không đưa ra kết quả của lệnh ghép ngắn đó. Kết quả cuối cùng sẽ giống như hình sau.

Keep'em Replicated

Bây giờ bạn đã biết 3 cách để buộc sao chép bộ điều khiển miền trong AD. Bạn cũng đã tập hợp một tập lệnh PowerShell có thể tái sử dụng mà bạn có thể gọi từ dòng lệnh PowerShell bất cứ khi nào bạn muốn. Không có lý do gì để những thay đổi DC mới nhất của bạn phải ngồi và chờ đợi bản nhân rộng theo lịch trình tiếp theo, bất cứ khi nào có thể.



About the author

Tôi là một lập trình viên máy tính và đã có hơn 15 năm. Kỹ năng của tôi nằm ở việc phát triển và duy trì các ứng dụng phần mềm, cũng như cung cấp hỗ trợ kỹ thuật cho các ứng dụng đó. Tôi cũng đã dạy lập trình máy tính cho học sinh trung học và hiện đang là một giảng viên chuyên nghiệp.



Related posts