Cách khôi phục các đối tượng Active Directory đã bị xóa: Hướng dẫn toàn diện
Là một dịch vụ danh bạ xác thực toàn cầu cung cấp khả năng quản lý tập trung các tài nguyên cơ sở hạ tầng CNTT, Active Directory (AD) là một trong những ứng dụng kinh doanh quan trọng nhất. Điều này có nghĩa là trong trường hợp xảy ra sự cố, việc khôi phục nhanh chóng là yếu tố thiết yếu để giảm thiểu thời gian ngừng hoạt động của dịch vụ. AD thường chứa rất nhiều đối tượng được tổ chức theo cấu trúc phân cấp, trong đó một số đối tượng phụ thuộc vào các đối tượng khác. Quá trình khôi phục có thể tốn nhiều thời gian vì bạn cần khôi phục một cấu trúc phân cấp phức tạp và tạo lại một số dữ liệu theo cách thủ công. Bài viết trên blog này giải thích cách khôi phục các đối tượng Active Directory đã bị xóa.
Cơ bản về khôi phục đối tượng Active Directory
Bạn có thể bắt đầu quá trình khôi phục AD bằng công cụ sao lưu tích hợp của Windows Server hoặc một công cụ của bên thứ ba được hỗ trợ khác. Active Directory cung cấp hai phương pháp khôi phục chính:
Non-Authoritative Recoverylà phương pháp mặc định để khôi phục Active Directory. Phương pháp này đơn giản là đưa miền trở về trạng thái tại thời điểm sao lưu được thực hiện và cho phép quá trình nhân bản thông thường ghi đè lên bất kỳ thay đổi nào đối với đối tượng và vùng chứa được thực hiện sau đó.Authoritative Recoverybao gồm hai phần: khôi phục không có thẩm quyền từ bản sao lưu, tiếp theo là khôi phục có thẩm quyền. Điểm khác biệt chính là phương pháp này có thể thực hiện các thay đổi có thẩm quyền đối với các đối tượng và thuộc tính của chúng trong toàn bộ thư mục. Loại khôi phục này có thể ảnh hưởng đến tài khoản máy tính, mối quan hệ tin cậy và tư cách thành viên nhóm.
Để chọn phương pháp khôi phục AD phù hợp, hãy xem xét các yếu tố sau:
The cause of the failure:Nguyên nhân là do xóa hoặc sửa đổi đối tượng một cách vô tình hay cố ý, đã được sao chép đến tất cả các bộ điều khiển miền, hay do sự cố hoàn toàn của toàn bộ máy ảo? Nếu là trường hợp xóa/sửa đổi, bạn cần thực hiện khôi phục có thẩm quyền.Roles and functionscủa máy chủ Active Directory bị lỗi.
Các công cụ tích hợp sẵn để khôi phục các đối tượng AD bị xóa
Các đối tượng AD bị xóa không phải lúc nào cũng hiển thị trong Active Directory Users and Computers (bổ trợ). Bạn có thể xem Deleted Objects (thùng rác) chứa các đối tượng AD bị xóa và chỉ có thể khôi phục chúng bằng các công cụ chuyên dụng.
Có hai phương pháp để khôi phục các đối tượng đã xóa trong Active Directory (AD) bằng các công cụ gốc của Microsoft, bao gồm các công cụ tích hợp sẵn trong Windows Server: sử dụng Thùng rác Active Directory và không sử dụng Thùng rác Active Directory. Có sự khác biệt lớn giữa hai phương pháp này.
Khôi phục mà không cần Sử dụng Thùng Rác AD
Khi AD Recycle Bin is disabled, quá trình xóa và khôi phục các đối tượng AD như sau:
- Khi một đối tượng bị xóa, đối tượng đó sẽ trở thành bia mộ.
- Đối tượng bia mộ được lưu trữ trong Container Đối tượng đã Xóa trong khoảng thời gian được đặt trong
tombstoneLifetimecho miền hiện tại. Phần lớn các thuộc tính bị mất khi đối tượng trở thành bia mộ, đồng nghĩa với một đối tượng đã bị xóa. - Trong thời gian tồn tại của bia mộ, bạn có thể khôi phục đối tượng AD nhưng không có thông tin bổ sung được ghi trong các thuộc tính của nó.
- Khi thời hạn tồn tại của bia mộ hết, đối tượng bị xóa vĩnh viễn mà không thể khôi phục được.
Vòng đời của đối tượng Active Directory được minh họa trong sơ đồ bên dưới để giải thích nguyên tắc khôi phục các đối tượng AD mà không cần Thùng Rác AD.
Khôi phục từ Thùng Rác AD
Tình huống thay đổi khi bạn turn on Active Directory Recycle Bin:
- Khi một đối tượng AD bị xóa, trạng thái của đối tượng đó được chuyển sang trạng thái “đã xóa về mặt logic”. Các thuộc tính của đối tượng được giữ lại trong khoảng thời gian được đặt trong thuộc tính Thời gian Tồn tại của Đối tượng đã Xóa ( msDS-deletedObjectLifetime ), bằng với khoảng thời gian Thời gian Tồn tại của Đối tượng Đã Thu hồi mặc định (180 ngày). Bạn có thể khôi phục các đối tượng đã xóa trong Active Directory trong khoảng thời gian này.
- Thuộc tính isDeleted được đặt thành True . Thuộc tính isRecycled là False .
- Sau khi khoảng thời gian Thời gian Tồn tại của Đối tượng đã Xóa kết thúc, trạng thái đối tượng chuyển đổi từ đã xóa về mặt logic sang đối tượng đã thu hồi . Đối tượng đã thu hồi tương tự như đối tượng bia mộ khi Thùng Rác AD bị vô hiệu hóa.
- Đối tượng đã thu hồi này vẫn nằm trong Container Đối tượng đã Xóa cho đến khi Thời gian Tồn tại của Đối tượng Đã Thu hồi được định nghĩa trong thuộc tính tombstoneLifetime kết thúc. Mặc định, khoảng thời gian này là 180 ngày. Thuộc tính isRecycled được đặt thành True . Phần lớn các thuộc tính của đối tượng, được giữ lại trong trạng thái đã xóa về mặt logic, sẽ bị xóa.
- Khi thời hạn Thời gian Tồn tại của Đối tượng Đã Thu hồi ( tombstoneLifetime ) kết thúc, cơ chế thu gom rác của Active Directory sẽ dọn sạch hoàn toàn đối tượng đã thu hồi và đối tượng này bị xóa vĩnh viễn. Hiện tại không thể khôi phục đối tượng.
Thùng rác Active Directory: những điều bạn cần biết
Thùng rác Active Directory lần đầu tiên được giới thiệu trong Windows Server 2008 R2 và chỉ có thể sử dụng qua PowerShell. Giao diện người dùng đồ họa (GUI) cho Thùng rác AD đã có sẵn kể từ Windows Server 2012. Theo mặc định, Thùng rác AD bị tắt.
Lưu ý những điều sau trước khi bật Thùng rác Active Directory:
- Khi bạn bật Thùng rác Active Directory, tất cả các đối tượng “tombstone” trong rừng miền sẽ bị xóa. Điều này có nghĩa là nếu bạn xóa các đối tượng Active Directory rồi mới bật Thùng rác Active Directory, sẽ không thể khôi phục lại các đối tượng đó. Để khôi phục các đối tượng Active Directory đã bị xóa, hãy sử dụng các phương pháp khác mà không phụ thuộc vào Thùng rác Active Directory và chỉ sau đó mới kích hoạt Thùng rác Active Directory.
- Việc kích hoạt Thùng rác Active Directory cho phép bạn khôi phục các đối tượng Active Directory bị xóa sau khi Thùng rác Active Directory đã được kích hoạt. Kích hoạt Thùng rác Active Directory
beforetrước khi xóa các đối tượng Active Directory. - Sau khi Thùng rác Active Directory được kích hoạt, bạn không thể vô hiệu hóa nó. Tùy chọn này là không thể đảo ngược. Sao lưu bộ điều khiển miền AD của bạn trước khi bật Thùng rác AD nếu bạn không chắc chắn rằng mình cần tính năng này vĩnh viễn.
- Việc bật Thùng rác AD sẽ thay đổi lược đồ Active Directory.
- Active Directory sẽ tăng kích thước vì các đối tượng cùng các thuộc tính của chúng được lưu giữ tạm thời trong Active Directory sau khi thay đổi trạng thái.
Cách khôi phục các đối tượng AD đã bị xóa bằng các công cụ gốc
Chúng ta sẽ xóa các đối tượng trong Active Directory và sau đó tìm hiểu cách khôi phục chúng khi có và không có Thùng rác AD. Chúng ta sẽ tìm hiểu 4 phương pháp tích hợp sẵn:
- Ví dụ 1: Sử dụng PowerShell
- Ví dụ 2: Sử dụng ADRestore
- Ví dụ 3: Sử dụng Ldp.exe
- Ví dụ 4: Khôi phục từ Thùng rác Active Directory
Ba ví dụ đầu tiên liên quan đến việc khôi phục các đối tượng AD mà không cần sử dụng Thùng rác Active Directory. Trong ví dụ thứ tư, chúng ta cần bật Thùng rác Active Directory, xóa một số đối tượng và sau đó khôi phục chúng.
The environment used in the examples:
- Một máy chủ miền chạy trên Windows Server 2019, là máy chủ miền duy nhất trong rừng miền.
- Tên miền là ID.TEST
- Chúng ta có nhiều người dùng – user1 , user2 , user3 , v.v. là các thành viên của Group-A trong miền AD này.
Lưu ý rằng các phương pháp gốc được giải thích dưới đây không yêu cầu tắt máy chủ miền và chuyển nó sang trạng thái ngoại tuyến để khôi phục người dùng AD đã bị xóa.
Ví dụ 1: Khôi phục các đối tượng AD trong PowerShell (Restore-ADObject)
Hãy xóa user1 trong Active Directory và sau đó thử khôi phục user1 đối tượng. Chúng ta thực hiện các thao tác này trên máy chủ miền.
Thực hiện các bước sau để khôi phục người dùng AD đã xóa:
- Mở PowerShell với quyền quản trị (PowerShell nâng cao).
- Các đối tượng đã xóa nằm trong container DeletedObjects và có cờ isDeleted . Xem các đối tượng AD đã xóa bằng lệnh:
Get-ADObject -IncludeDeletedObjects -Filter {IsDeleted -eq $true}
- Để khôi phục một đối tượng, chúng ta cần xóa cờ isDeleted khỏi đối tượng này. Chúng ta cần khôi phục user1 . Nhập lệnh để hiển thị tất cả các đối tượng có tên bắt đầu bằng user . Để thực hiện điều này, chúng ta thêm các tùy chọn sau vào bộ lọc: {Isdeleted -eq $true -and Name -like “
user*“}
Lệnh sau đây áp dụng để hiển thị các người dùng khác như user2 , user3 , v.v., nếu chúng đã bị xóa:
Get-ADObject -IncludeDeletedObjects -Filter {Isdeleted -eq $true -and Name -like "user*"}
- Lưu ý mã định danh đối tượng (ObjectGUID) hoặc tên phân biệt (DistinguishedName) của đối tượng cần thiết. Trong trường hợp của chúng tôi, chúng tôi sử dụng ObjectGUID cho user1 :
4c723d90-5a05-47c3-9482-c05dc3c6201c
- Để khôi phục đối tượng đã xóa, hãy chạy lệnh như sau:
Restore-ADObject -Identity "GUID or DistingushedName here" -NewName "new_restore_name"
Trong trường hợp của chúng tôi:
Restore-ADObject -Identity "4c723d90-5a05-47c3-9482-c05dc3c6201c" -NewName "user1-restored"
- Ngoài ra, bạn có thể định nghĩa một vị trí thay thế để khôi phục đối tượng hiện tại bằng cách sử dụng khóa
-TargetPathvà đặt tên phân biệt (DN) cho vị trí mới, ví dụ:
CN=Users,DC=domain,DC=net
Sau khi chạy lệnh và khôi phục đối tượng Active Directory, chúng ta không thấy user1 trong danh mục Users và trong Group-A nơi người dùng này từng nằm trước đó.
Điều này là do hầu hết các thuộc tính của đối tượng đều bị mất sau khi xóa một đối tượng Active Directory mà không sử dụng Thùng rác Active Directory (AD Recycle Bin), ngay cả khi chính đối tượng đó đã được khôi phục.
Chúng ta có thể tìm thấy đối tượng AD đã được khôi phục user1-restored trong nhóm Domain Users . Tên đăng nhập của người dùng chỉ được lưu dưới định dạng trước Windows 2000. Tài khoản user1-khôi phục đang ở trạng thái đã vô hiệu hóa. Điều quan trọng là SID gốc được bảo toàn và bất kỳ quyền NTFS nào cho các tệp và thư mục liên kết với người dùng này vẫn hợp lệ.
Lưu ý: Nếu bạn tạo lại một đối tượng AD mới thay vì khôi phục một đối tượng đã bị xóa từ tấm mộ, thì các giá trị mới cho thuộc tính objectGUID và objectSID được gán, và chúng yêu cầu cập nhật các tham chiếu đến đối tượng này.
Chúng tôi cần chỉnh sửa tên đăng nhập, kích hoạt tài khoản, cập nhật mật khẩu và thêm người dùng này vào Group-A . Có rất nhiều công việc thủ công cần làm để khôi phục tất cả các thuộc tính và thành viên chính xác.
Ví dụ 2: Sử dụng ADRestore để Khôi phục Người dùng AD đã Bị Xóa
Thùng Tái chế Active Directory vẫn đang được vô hiệu hóa trong ví dụ thứ hai của chúng tôi.
User2 , là thành viên của Group-A , đã bị xóa.
Chúng tôi sẽ sử dụng công cụ miễn phí ADRestore để khôi phục các đối tượng đã bị xóa trong Active Directory. Công cụ này có sẵn trên trang web của Microsoft:
https://docs.microsoft.com/en-us/sysinternals/downloads/adrestore
- Tải xuống công cụ và giải nén nội dung từ tệp zip vào một thư mục cụ thể, ví dụ: C:programsadrestore
- Đi đến thư mục này trong PowerShell:
cd c:programsadrestore
Chúng tôi chạy PowerShell với tư cách là quản trị viên.
- Xem thông tin về user2 đã bị xóa bằng cách chỉ định tên người dùng chính xác trong PowerShell nâng cao:
Get-ADObject -Filter 'SAMAccountName -eq "user2"' -IncludeDeletedObjects
Deleted: True xác nhận rằng người dùng này đã bị xóa.
CN=Deleted Objects có nghĩa là đối tượng (tài khoản người dùng) đã được chuyển đến Một Container Đã Xóa .
- Chú ý đến ObjectGUID của user2 :
c6c121a3-d664-4d71-a6ef-9ad26b833fe6
- Nhập lệnh để khôi phục đối tượng với
adrestorebằng cách chỉ định ObjectGUID của người dùng cần thiết:
.adrestore -r c6c121a3-d664-4d71-a6ef-9ad26b833fe6
Nhập y và nhấn Enter để xác nhận và tiến hành.
- Khi đối tượng bị xóa ( user2 ) đã được khôi phục, kiểm tra người dùng này trong cửa sổ Active Directory Users and Computers .
Kết quả tương tự như một trong ví dụ đầu tiên. user2 đã được khôi phục mà không cần bất kỳ dữ liệu bổ sung nào như thuộc tính và quyền thành viên trong nhóm.
Ví dụ 3: Khôi phục người dùng AD đã bị xóa bằng Ldp.exe
Phương pháp thứ ba trong hướng dẫn của chúng tôi để khôi phục người dùng AD đã bị xóa 3 không yêu cầu Thùng rác AD. Trong phương pháp này, chúng tôi sử dụng một tiện ích LDAP miễn phí ldp.exe
Công cụ Ldp là một công cụ gốc của Microsoft đi kèm với các hệ điều hành Windows Server như Windows Server 2008, 2012, v.v. Công cụ này là một máy khách LDAP nhẹ với giao diện người dùng đồ họa (GUI) theo phong cách Windows Explorer, cho phép bạn xem và chỉnh sửa các mục Active Directory.
- Nhấp vào
Start > Run(hoặc nhấnWin+R). - Nhập
ldpvào hộp thoại Run và nhấnEnter.
- Nhấp vào
Connection > Connecttrong cửa sổ chính của Ldp.
- Đặt các thông số cần thiết trong cửa sổ Connect .
Server: Nhập địa chỉ IP hoặc tên máy chủ AD DC của bạn.
Port: 389 hoặc 636 được sử dụng theo mặc định.
Nhấp vào OK.
- Nhấp vào
Connection > Bindtrong cửa sổ chính của Ldp.
- Vì chúng ta đã đăng nhập với tư cách quản trị viên miền trên máy chủ miền, hãy chọn tùy chọn đầu tiên:
Bind as currently logged on user.
Bạn có thể sử dụng tùy chọn thứ hai ( Kết nối bằng thông tin đăng nhập ) và thiết lập tên người dùng, mật khẩu, cùng miền mà bạn muốn kết nối.
Nhấn OK để tiếp tục.
- Nhấp vào
Options > Controlstrong cửa sổ Ldp chính.
Trong cửa sổ PowerShell với quyền quản trị, bạn có thể chạy lệnh để xem thông tin về người dùng đã bị xóa.
Get-ADObject -Filter 'SAMAccountName -eq "user3"' -IncludeDeletedObjects
Đối tượng objectGUI của user3 là:
17ede5dc-b527-4ae4-ba5b-3ed50855be80
Chọn Return deleted objects trong menu thả xuống Load Predefined của cửa sổ Controls . Nhấn OK.
- Nhấp vào
View > Treetrong cửa sổ chính của Ldp.
Nhập BaseDN . Tên miền của chúng ta là ID.TEST và BaseDN là DC=ID,DC=TEST
Nhấn OK để tiếp tục.
- Di chuyển trong cây thư mục đến đối tượng đã xóa mà bạn cần khôi phục ( user3 là đối tượng mà chúng ta muốn khôi phục từ Thùng rác AD trong trường hợp này). Mở rộng một miền và mở rộng container Deleted Objects .
Lưu ý: Bạn có thể xem kết quả của các thao tác đã thực hiện ở khung bên phải của cửa sổ.
- Nhấp chuột phải vào đối tượng ( user3 trong trường hợp của chúng ta) và nhấp vào
Modifytrong menu ngữ cảnh.
- DN đã được chọn tự động.
Nhập isDeleted vào trường Chỉnh sửa thuộc tính mục nhập .
Chọn Delete trong các tùy chọn Hoạt động .
Nhấp vào nút Enter trong cửa sổ này.
- Nhập
distinguishedNamevào trường Giá trị .
Nhập các giá trị để khôi phục các đối tượng, ví dụ: CN=user3,OU=Users,DC=ID,DC=test
Bạn có thể nhập các giá trị cho vị trí DN tùy chỉnh để khôi phục.
Chọn hoạt động Replace .
Nhấp vào nút Enter trong giao diện của cửa sổ Modify này.
Chọn hộp kiểm Synchronous và Extended . Sau đó nhấp vào Run.
Sau khi khôi phục đối tượng AD đến vị trí đã chọn bằng phương pháp này thông qua công cụ Ldp (LDAP), dữ liệu bổ sung có các thuộc tính sẽ không được khôi phục (mật khẩu, tư cách thành viên nhóm, v.v.). Bạn cần cấu hình các tham số này thủ công.
Nhìn chung, kết quả tương tự như kết quả đạt được với hai phương pháp còn lại, vốn cũng không sử dụng Thùng rác Active Directory.
Hãy kích hoạt Thùng rác Active Directory và xem kết quả khác biệt khi khôi phục các đối tượng đã xóa trong Active Directory.
Ví dụ 4: Cách khôi phục từ Thùng rác Active Directory
Trước khi tiến hành khôi phục, hãy xem cách kích hoạt Thùng rác Active Directory.
Cách kích hoạt Thùng rác Active Directory
Bạn nên Sao lưu Active Directory của bạn trước khi kích hoạt Thùng rác AD. Điều này sẽ cho phép bạn khôi phục lại trạng thái ban đầu (với Thùng rác AD bị vô hiệu hóa và các tombstone hiện có) nếu cần thiết.
Chạy lệnh sau để kiểm tra xem Thùng rác Active Directory đã được kích hoạt hay chưa:
Get-ADOptionalFeature "Recycle Bin Feature" | select-object name,EnabledScopes
Nếu bạn thấy dấu ngoặc trống {} trong kết quả, Thùng rác AD đang bị vô hiệu hóa.
Dưới đây là các yêu cầu để kích hoạt Thùng rác AD.
- Bạn phải đăng nhập vào Windows Server với tư cách quản trị viên miền hoặc người dùng là thành viên của nhóm Enterprise Admins hoặc Schema Admins.
- Mức chức năng của rừng phải là Windows Server 2008 trở lên để kích hoạt Thùng rác Active Directory.
Có hai phương pháp chính để kích hoạt Thùng rác AD: trong PowerShell và trong Server Manager.
1. Enabling AD Recycle Bin in PowerShell
Chạy các lệnh sau để bật Thùng rác Active Directory trong PowerShell với quyền quản trị:
Import-Module ActiveDirectory
Thông thường, lệnh để kích hoạt Thùng rác AD có dạng như sau:
Enable-ADOptionalFeature 'Recycle Bin Feature' -Scope ForestOrConfigurationSet -Target <your forest root domain name>
Trong trường hợp của chúng ta, lệnh chính xác với tên miền được chỉ định là:
Enable-ADOptionalFeature -Identity 'CN=Recycle Bin Feature,CN=Optional Features,CN=Directory Service,CN=Windows NT,CN=Services,CN=ConfigurationDC=id,DC=test' -Scope ForestOrConfigurationSet -Target 'id.test' Nhập tên miền của bạn thay cho id.test được sử dụng trong ví dụ của chúng ta.
2. Enabling AD Recycle Bin in Server Manager
- Mở Server Manager. Nhấp vào
Startvà nhậpserver managerhoặc nhấnWin+R. Trong cửa sổ Run , nhậpdsac.exevà nhấnEnter. - Chuyển đến
Tools > Active Directory Administrative Centertrong cửa sổ Server Manager .
- Chọn miền gốc của rừng trong ngăn bên trái. Trong trường hợp của chúng tôi, chúng tôi chọn
ID (local). - Nhấp vào
Enable Recycle Bintrong ngăn bên phải.
- Đọc cảnh báo và nhấp vào
OKtrong cửa sổ Xác nhận Bật Thùng rác để tiếp tục.
- Bạn cần làm mới cửa sổ Trung tâm Quản trị Active Directory. Nhấp vào nút
Refreshở góc trên bên phải của cửa sổ Trung tâm Quản trị. - Sau đó, tùy chọn
Enable Recycle Binsẽ bị mờ đi (không hoạt động). - Thùng rác Active Directory (
Deleted Objects) sẽ xuất hiện trong menu khi bạn nhấp vào miền của mình để mở rộng nội dung.
- Đảm bảo rằng Thùng rác Active Directory đã được bật bằng cách chạy lệnh trong PowerShell:
Get-ADOptionalFeature "Recycle Bin Feature" | select-object name,EnabledScopes
Để xem thêm thông tin về các tính năng, hãy sử dụng lệnh này:
Get-ADOptionalFeature -filter *
Khôi phục người dùng từ Thùng rác Active Directory
Hãy xóa người dùng user4 , người là thành viên của nhóm Group-A trong miền id.test của chúng ta, giống như cách chúng ta đã làm trong các ví dụ trước với các người dùng khác.
Mở Thùng rác AD tại Server Manager > Active Directory Administrative Center và chọn một người dùng đã bị xóa. User4 là đối tượng mà chúng ta muốn khôi phục từ Thùng rác Active Directory trong trường hợp này.
Có bốn tùy chọn chính đối với một đối tượng Active Directory đã bị xóa trong Thùng rác:
Restore– khôi phục các đối tượng AD đã xóa về đơn vị tổ chức gốcRestore To– chọn một đơn vị tổ chức khác làm điểm đích để khôi phục một đối tượng AD đã xóaLocate Parent– mở đơn vị tổ chức gốc, nơi lưu giữ đối tượng đã xóaProperties– xem một số thuộc tính của đối tượng đã xóa như Đã tạo , Đã sửa đổi , Tên chính thức , Lớp đối tượng hoặc Các số trình tự cập nhật
Để khôi phục người dùng về vị trí gốc, nhấp Restore trong menu nằm ở bên trái của cửa sổ.
User4 đã được khôi phục thành đối tượng Active Directory tại cùng vị trí với tất cả dữ liệu và thuộc tính liên quan được giữ nguyên. Tư cách thành viên nhóm được bảo lưu và user4 là thành viên của Nhóm-A sau khi được khôi phục.
Lệnh để khôi phục người dùng AD đã xóa khỏi Thùng Rác Active Directory trong PowerShell như sau:
Get-ADObject -Filter {displayName -eq "user4"} -IncludeDeletedObjects | Restore-ADObject
Thay đổi user4 thành đối tượng bạn muốn khôi phục trên máy chủ của mình.
Do đó, thùng rác Active Directory hữu ích nếu bạn không thực hiện Sao lưu Active Directory.
Cách thay đổi thời gian giữ trong Thùng Rác AD
Bạn có thể thay đổi một số cài đặt Thùng Rác Active Directory để có thể khôi phục các đối tượng đã xóa trong Active Directory lâu hơn. Chúng ta sẽ đi qua việc thay đổi hai cài đặt sau:
- Thời gian tồn tại Tombstone ( tombstoneLifetime )
- Cách kiểm tra thời gian tồn tại hiện tại của các mục tombstone trong PowerShell
- Cách chỉnh sửa thời gian tồn tại của tombstone trong PowerShell
- Thời gian tồn tại đối tượng đã xóa ( msDS-DeletedObjectLifetime )
Lưu ý: Tăng giá trị cho hai tham số này có thể ảnh hưởng đến hiệu suất của Active Directory.
Cách kiểm tra thời gian tồn tại tombstone hiện tại trong PowerShell
Xem thời gian tồn tại tombstone hiện tại trong PowerShell nâng cao với bộ lệnh này:
Import-Module ActiveDirectory
$ADForestconfigurationNamingContext = (Get-ADRootDSE).configurationNamingContext
$DirectoryServicesConfigPartition = Get-ADObject -Identity "CN=Directory Service,CN=Windows NT,CN=Services,$ADForestconfigurationNamingContext" -Partition $ADForestconfigurationNamingContext -Properties *
$TombstoneLifetime = $DirectoryServicesConfigPartition.tombstoneLifetime
Write-Output "Active Directory’s Tombstone Lifetime is set to $TombstoneLifetime days `r "
- Mở công cụ Chỉnh sửa ADSI là công cụ tiêu chuẩn được cài đặt sẵn trong Windows Server 2019.
Bạn có thể tìm công cụ này tại
“C:ProgramDataMicrosoftWindowsStart MenuProgramsAdministrative Tools“
hoặc sử dụng đường dẫn này:
%SystemRoot%system32adsiedit.msc
Bạn có thể nhấp Start và nhập ASDI Edit để chạy công cụ này nhanh chóng.
- Nhấp chuột phải vào
ADSI Edittrong cửa sổ và nhấpConnect totrong menu ngữ cảnh.
- Trong cửa sổ Cài đặt kết nối , đặt các tham số sau:
- Tên:
Configuration - Điểm kết nối :
Select a well known Naming Context>Configuration - Máy tính:
Default
Nhấn OK để áp dụng các cài đặt này.
- Cây có các tham số cấu hình Active Directory hiện được hiển thị trong cửa sổ chính của công cụ Chỉnh sửa ADSI.
- Đi đến
Configuration > CN=Configuration > CN=Services > CN=Windows NT > CN=Directory Service - Nhấn chuột phải
CN=Directory Servicevà trong menu ngữ cảnh, nhấpProperties.
- Cuộn xuống danh sách thuộc tính và tìm
tombstoneLifetime. Như chúng ta đã kiểm tra trước đó, giá trị mặc định là180ngày. - Nhấn đúp
tombstoneLifetimeđể chỉnh sửa giá trị được đặt.
- Nhập giá trị mới, ví dụ,
365và nhấnOKđể lưu cài đặt.
Lưu ý: Nếu bạn đặt giá trị thành null <not set>, thì tuổi thọ tượng trưng được tự động đặt thành 60 ngày do khoảng thời gian này được mã hóa cố định trong cấu hình hệ thống cho giá trị null.
- Giá trị mới đã được đặt.
- Nhấp
OKđể lưu cài đặt và đóng cửa sổProperties.
Bạn có thể chắc chắn rằng giá trị đã được đặt trong PowerShell bằng cách sử dụng tập hợp các lệnh đã được giải thích ở trên.
Cách chỉnh sửa tuổi thọ tượng trưng trong PowerShell
Mở PowerShell với tư cách quản trị viên.
Chạy một loạt lệnh để đặt giá trị tuổi thọ mới của tượng trưng trong PowerShell nâng cao:
Import-Module ActiveDirectory
$ADForestconfigurationNamingContext = (Get-ADRootDSE).configurationNamingContext
Set-ADObject -Identity "CN=Directory Service,CN=Windows NT,CN=Services,$ADForestconfigurationNamingContext" -Partition $ADForestconfigurationNamingContext -Replace @{tombstonelifetime='366'}
Kiểm tra tuổi thọ tượng trưng đã cập nhật bằng cách sử dụng tập hợp các lệnh thích hợp đã được giải thích trong phần trước.
Cách thay đổi tuổi thọ đối tượng bị xóa
Thuộc tính msDS-deletedObjectLifetime xác định tuổi thọ của đối tượng bị xóa. Bạn có thể chỉnh sửa tham số này bằng công cụ Chỉnh sửa ASDI giống như chúng ta đã làm khi chỉnh sửa tham số tuổi thọ tượng trưng.
Đi đến:
Configuration > CN=Configuration,DC=ID,DC=TEST > CN=Services > CN = Windows NT > CN=Directory Service
Trong CN=Directory Service, tìm thuộc tính msDS-deletedObjectLifetime và chỉnh sửa giá trị. Giá trị được đặt thành null <not set> theo mặc định. Điều này có nghĩa là khoảng thời gian tuổi thọ đối tượng bị xóa bằng với tuổi thọ tượng trưng.
Giá trị tối thiểu bạn có thể đặt là 2 (tức là, 2 ngày).
Hạn chế của Công cụ Phục hồi AD Gốc
Tổng kết các hạn chế của việc sử dụng công cụ và phương pháp phục hồi AD Gốc:
- Có rất nhiều công việc thủ công cần thực hiện, chẳng hạn như chạy các lệnh hoặc cấu hình các thông số cần thiết trong giao diện người dùng (GUI) của các tiện ích được cung cấp.
- Quá trình tìm kiếm và khôi phục có thể tốn nhiều thời gian.
- Mật khẩu người dùng sẽ không được giữ lại sau khi khôi phục. Bạn cần đặt lại mật khẩu cho từng người dùng.
- Bạn cần thêm thủ công một số đối tượng hoặc thuộc tính cho các đối tượng đã khôi phục.
- Thùng rác Active Directory (Active Directory Recycle Bin) cải thiện quy trình khôi phục các đối tượng AD và khôi phục hầu hết các thuộc tính của đối tượng. Tuy nhiên, tính năng này không có tác dụng nếu không được kích hoạt trước khi các đối tượng bị xóa.
- Khi bật Thùng rác Active Directory, kích thước của Cây Thông tin Thư mục (DIT) sẽ tăng lên.
- Bạn không thể khôi phục các đối tượng Active Directory đã bị xóa nếu thời gian kể từ khi chúng bị xóa vượt quá thời hạn tồn tại của tombstone.
May mắn thay, bạn có thể vượt qua các giới hạn thời gian của Thùng rác Active Directory bằng cách sao lưu Active Directory.
Khôi phục các đối tượng AD từ bản sao lưu
Khôi phục các đối tượng Active Directory đã bị xóa từ bản sao lưu là phương pháp đáng tin cậy nhất và cho phép bạn khôi phục các đối tượng AD đã bị xóa bất kể Thùng rác Active Directory có được bật hay không. Phương pháp sao lưu này bao gồm việc sao lưu Active Directory hoặc toàn bộ máy chủ miền đang chạy trên máy chủ vật lý hoặc máy ảo.
Chúng tôi sẽ giải thích cách khôi phục các đối tượng Active Directory đã bị xóa từ bản sao lưu bằng giải pháp bảo vệ dữ liệu toàn diện NAKIVO Backup & Replication:
- Chúng tôi đã thực hiện sao lưu máy chủ miền Active Directory. Trong ví dụ này, máy chủ miền được cài đặt trên một máy ảo (VM) trong VMware vSphere, và chúng tôi đã sao lưu toàn bộ máy ảo đó.
- Hệ điều hành là Windows Server 2019, giống như trong các ví dụ trước đó trong bài viết này.
- Tên miền là domain1.local trong ví dụ này, nhưng các cài đặt còn lại cho miền này giống hệt như ví dụ trước.
Yêu cầu
Các yêu cầu đối với máy chủ mà bạn khôi phục các đối tượng AD đã bị xóa là:
- Phải cài đặt Visual C++ Redistributable cho Visual Studio 2015. Trình cài đặt vc_redist.x86.exe (phiên bản 2015) có sẵn trên trang web của Microsoft.
- Dịch vụ iSCSI Initiator phải được khởi động.
- Cổng TCP 5000 phải được mở.
- Mô-đun Active Directory cho PowerShell phải được cài đặt.
Xóa các đối tượng AD
Hãy xóa đơn vị tổ chức unit1 trong miền của chúng ta, đó là domain1.local . Đơn vị tổ chức này chứa ba người dùng: user1 , user2 và user3 .
Khôi phục các đối tượng AD đã xóa từ bản sao lưu
Mở giao diện web của giải pháp sao lưu NAKIVO.
Chọn tác vụ sao lưu máy ảo VMware vSphere chứa bản sao lưu máy chủ miền Active Directory.
Nhấp vào Recover > Microsoft Active Directory objects.
Trình hướng dẫn khôi phục đối tượng cho máy chủ Microsoft AD sẽ mở ra.
Backup. Chọn máy ảo cần thiết từ bản sao lưu đã chọn. Sau đó chọn điểm khôi phục. Trong trường hợp của chúng tôi, bản sao lưu chứa một máy ảo có máy chủ AD (tên máy ảo là Blog-Win19-DC ) và chúng tôi chọn điểm khôi phục mới nhất.
Nhấp vào Next tại mỗi bước để tiếp tục.
Recovery Server. Chọn cài đặt máy chủ khôi phục:
Recovery Server: Chọn máy chủ khôi phục làm đích để khôi phục các đối tượng AD đã xóa. Chúng tôi khôi phục các đối tượng này vào cùng một máy ảo. Bạn có thể mở rộng danh sách và chọn máy chủ hoặc máy ảo từ danh sách tài nguyên của mình.Server hostname or IP: Nhập tên máy chủ hoặc địa chỉ IP của máy ảo (VM) hoặc máy chủ đã chọn.Username: Nhập tên người dùng của quản trị viên miền hoặc các người dùng khác có quyền thích hợp trong miền. Trong ví dụ của chúng tôi, tên người dùng là domain1administratorPassword: Nhập mật khẩu của người dùng đã định nghĩa.
Nhấp vào Test Connection. Nếu bạn đã vượt qua bài kiểm tra, hãy nhấp vào Next.
Lưu ý: Đảm bảo dịch vụ iSCSI Initiator đang chạy trên máy chủ Windows Server đích (nơi bạn khôi phục các đối tượng AD). Nếu không, bạn sẽ nhận được lỗi: Dịch vụ “iSCSI Initiator” tại không đang chạy trên máy chủ khôi phục . Trong trường hợp này, bài kiểm tra kết nối sẽ thất bại.
Bạn có thể khởi động dịch vụ Microsoft iSCSI Initiator trong cửa sổ Quản lý Máy tính (Computer Management > Services and Applications > Services).
Ngoài ra, bạn có thể khởi động dịch vụ này trong PowerShell:
- Kiểm tra trạng thái dịch vụ iSCSI Initiator:
Get-Service -Name MSiSCSI
- Khởi động dịch vụ iSCSI:
Start-Service msiscsi
- Đặt loại khởi động dịch vụ thành “tự động”:
Set-Service -Name MSiSCSI -StartupType Automatic
- Kiểm tra xem dịch vụ iSCSI Initiator đã được khởi động chưa:
Get-Service -Name MSiSCSI
Objects. Chọn các đối tượng AD mà bạn muốn khôi phục. Có thể khôi phục nhiều đối tượng cùng lúc với mức độ tự động hóa cao. Chúng tôi muốn khôi phục các tài khoản AD đã bị xóa.
Lưu ý: Bạn có thể thấy thông báo “Không thể tải điểm khôi phục” nếu dịch vụ iSCSI chưa được khởi động. Để khởi động dịch vụ iSCSI trên máy Linux, ví dụ như trên máy có kho lưu trữ sao lưu hoặc Transporter, hãy chạy lệnh:
/etc/init.d/iscsid start
Options. Chọn các tùy chọn khôi phục AD tại bước này. Tất cả các tùy chọn khả dụng được liệt kê bên dưới.
Recovery type:- Khôi phục về vị trí ban đầu
- Xuất
Recovery of user object:- Tài khoản người dùng sẽ bị vô hiệu hóa
- Người dùng phải thay đổi mật khẩu khi đăng nhập lần tiếp theo
Overwrite behavior:- Đổi tên mục đã khôi phục nếu mục đó tồn tại
- Bỏ qua mục đã khôi phục nếu mục đó tồn tại
- Ghi đè lên mục gốc nếu mục đó tồn tại
Trong ví dụ khôi phục AD này, chúng tôi đang khôi phục các mục về vị trí ban đầu và chọn các tùy chọn, như bạn có thể thấy trong ảnh chụp màn hình bên dưới.
Nhấp vào Recover, đọc thông báo và nhấn Proceed.
Finish. Quá trình khôi phục đối tượng Active Directory đã bắt đầu. Hãy đợi cho đến khi quá trình khôi phục hoàn tất.
Sau khi quá trình khôi phục các đối tượng AD bằng phương pháp này hoàn tất, chúng ta có thể mở Active Directory Users and Computers trên máy chủ Windows Server 2019 của mình và kiểm tra xem đơn vị tổ chức AD đã bị xóa ( unit1 ) có được khôi phục cùng với các đối tượng con hay không.
Như bạn có thể thấy trong ảnh chụp màn hình bên dưới, tất cả người dùng được lưu trữ trong unit1 đã được khôi phục. Hầu hết các thuộc tính của họ, bao gồm cả tư cách thành viên nhóm, đều được giữ nguyên. Chúng ta chỉ cần đặt lại mật khẩu và kích hoạt các tài khoản người dùng này.
Phục hồi Active Directory nâng cao từ bản sao lưu
Bạn có thể cần thực hiện phục hồi Active Directory nâng cao và khôi phục các đối tượng Active Directory đã bị xóa từ bản sao lưu với các thiết lập tùy chỉnh cao. Ví dụ, bạn có thể xuất các đối tượng AD từ bản sao lưu sang một máy chủ tùy chỉnh, chỉnh sửa các thông số của chúng và nhập chúng vào vị trí cần thiết.
Giải pháp bảo vệ dữ liệu toàn diện của NAKIVO cho phép bạn thực hiện các tác vụ như vậy. Hãy xem một ví dụ.
Xuất các đối tượng AD từ bản sao lưu
Các bước đầu tiên của quy trình làm việc trong giao diện web giống như đã giải thích trong phần trước của bài viết này. Hãy chuyển thẳng đến bước thứ ba của trình hướng dẫn khôi phục đối tượng. Sự khác biệt trong quy trình khôi phục AD nâng cao bắt đầu từ bước này.
Objects. Trong ví dụ này, hãy chọn các đối tượng Active Directory khác để khôi phục. Chúng ta muốn khôi phục các người dùng AD đã bị xóa. Hãy duyệt tìm Users và chọn user10 . Chúng ta có thể chọn nhiều đối tượng AD trong thư mục Users để khôi phục từ bản sao lưu.
Options. Chúng ta chọn Xuất các đối tượng Active Directory đã chọn mà chúng ta muốn khôi phục. Chúng ta muốn xuất các đối tượng vào thư mục cục bộ trên máy chủ khôi phục và tất cả các thiết lập của chúng ta ở bước này như sau.
Recovery type: XuấtExport location: Thư mục cục bộ trên máy chủ khôi phụcLocal path: C:TempAD-RecoveryOverwrite behavior: Đổi tên mục đã khôi phục nếu mục đó tồn tại
Nhấp vào Recover và Proceed để tiếp tục.
Chờ cho đến khi tác vụ khôi phục hoàn tất và các đối tượng Active Directory đã chọn được xuất sang vị trí đích.
Khi quá trình xuất hoàn tất, chúng ta có thể thấy các đối tượng Active Directory của mình trong thư mục C:TempAD-Recovery . Mỗi đối tượng AD được xuất dưới dạng một tệp LDIF riêng biệt. 
Tệp LDIF là một tệp văn bản có thể chỉnh sửa, chứa thông tin về đối tượng Active Directory đã được xuất. Hãy thử khôi phục người dùng AD đã bị xóa, trong trường hợp của chúng ta là user10 . Bạn có thể xem ví dụ về nội dung tệp LDIF trong ảnh chụp màn hình bên dưới.
Ldifde là tiện ích gốc của Windows Server, có thể xuất/nhập các đối tượng Active Directory sang/từ các tệp .LDIF . Tuy nhiên, bạn phải đáp ứng một số yêu cầu để sử dụng công cụ này, chẳng hạn như cài đặt vai trò máy chủ Cơ quan Chứng nhận (CA).
Chuẩn bị Windows Server để khôi phục các đối tượng AD
Trước khi bắt đầu, hãy đảm bảo rằng máy chủ Active Directory có vai trò CA. Điều này là cần thiết để thiết lập kết nối LDAP an toàn. Bạn có thể kích hoạt vai trò này tại Server Manager bằng cách sử dụng trình hướng dẫn Add roles and features . Quy trình thêm vai trò này là tiêu chuẩn và chúng tôi sẽ chỉ tập trung vào các bước chính.
Chọn hộp kiểm Active Directory Certificate Services tại bước Server Roles của trình hướng dẫn Add roles and features .
Chọn Certification Authority trong Role Services step.
Sau khi hoàn tất tất cả các bước của trình hướng dẫn, bạn cần thực hiện cấu hình sau triển khai cho vai trò đã cài đặt.
Thực hiện theo các bước tiêu chuẩn của trình hướng dẫn cấu hình AD CS:
- Thông tin đăng nhập. Nhập thông tin đăng nhập của quản trị viên miền (trong trường hợp này là domain1administrator)
- Dịch vụ vai trò. Đảm bảo rằng Certification Authority (Cơ quan cấp chứng chỉ) đã được chọn.
- Loại thiết lập. Chọn Enterprise CA.
- Loại CA. Chọn Root CA.
- Khóa riêng. Chọn Tạo khóa riêng mới.
- Mật mã. Bạn có thể sử dụng cài đặt mặc định.
- Tên CA. Đảm bảo rằng tên CA phù hợp với miền của bạn.
- Thời hạn hiệu lực. Đặt thời hạn, ví dụ: 5 năm.
- Cơ sở dữ liệu chứng chỉ. Sử dụng cài đặt mặc định.
Khởi động lại máy chủ Windows để các thay đổi có hiệu lực sau khi hoàn tất trình hướng dẫn cấu hình AD CS.
Hoàn tất khôi phục AD
Bây giờ chúng ta có thể sử dụng công cụ dòng lệnh Ldifde trong Windows PowerShell để khôi phục các đối tượng đã xóa trong Active Directory bằng cách nhập chúng. Như bạn còn nhớ, chúng ta đã xuất chúng từ bản sao lưu trước đó.
- Mở PowerShell với quyền quản trị viên.
- Đi đến thư mục nơi các tệp LDIF của các mục đã phục hồi được lưu trữ:
cd C:TempAD-Recovery
- Lệnh để nhập các đối tượng AD từ tệp LDIF để khôi phục chúng như sau:
ldifde -i -t 636 -f filename.ldif -k -j logfolder
Trong đó filename.ldif là đường dẫn đến tệp LDIF, và logfolder là đường dẫn đến thư mục nơi nhật ký quá trình sẽ được lưu. Tùy chọn -t 636 có nghĩa là cổng TCP 636 được sử dụng để kết nối an toàn với máy chủ AD. Trong trường hợp của chúng tôi, lệnh để khôi phục các đối tượng AD đã xóa bằng cách nhập chúng là:
ldifde -i -t 636 -f NakivoExport-domain1.local.Users.user10.ldif -k -j C:TempAD-RecoveryLog
Chúng tôi đang khôi phục user10 . Ví dụ về kết quả đầu ra của bảng điều khiển PowerShell nếu việc nhập thành công được hiển thị trong ảnh chụp màn hình dưới đây.
Lưu ý: Nếu bạn sử dụng công cụ ldifde để xuất các đối tượng Active Directory theo cách thủ công, hãy sử dụng bộ lọc. Không phải tất cả các thuộc tính cho các đối tượng AD có thể được nhập bởi quản trị viên. Một số thuộc tính được bảo vệ và quyền nhập những thuộc tính này chỉ thuộc về hệ thống. Trong trường hợp này, bạn có thể thấy các thông báo lỗi như Thuộc tính thuộc sở hữu của Security Account Manager (SAM ), vấn đề 5003 (WILL_NOT_PERFORM) và những lỗi khác khi cố gắng nhập các đối tượng từ các tệp LDIF.
Nếu bạn xuất một đối tượng như người dùng hoặc nhóm với tất cả các thuộc tính, bạn có thể cần phải xóa thủ công một số thuộc tính như objectGUID , objectSid , sAMAccountType , và những cái khác trong tệp .LDIF bằng cách xóa các dòng thích hợp trước khi nhập. Nếu không, bạn không thể nhập đối tượng bằng công cụ ldifde .
Hãy nhớ những khía cạnh này khi sử dụng chức năng xuất/nhập của công cụ ldifde để sao lưu và phục hồi mà không cần giải pháp sao lưu chuyên dụng. Tốt hơn hết là sử dụng một giải pháp sao lưu chuyên biệt để bảo vệ toàn bộ máy chủ Active Directory hoặc máy ảo với khả năng thực hiện phục hồi toàn diện và phục hồi từng phần các đối tượng AD một cách nhanh chóng và dễ dàng.
Kết luận
Cách đáng tin cậy để bảo vệ dữ liệu và ứng dụng, bao gồm Active Directory với tất cả các mục bên trong, là thực hiện sao lưu dữ liệu đúng cách thường xuyên và lưu trữ sao lưu sử dụng chính sách giữ hợp lý. Một giải pháp sao lưu chuyên nghiệp giúp trong trường hợp này. NAKIVO Backup & Replication là giải pháp bảo vệ dữ liệu toàn diện, có khả năng nhận diện ứng dụng và hỗ trợ khôi phục toàn bộ cũng như khôi phục chi tiết các tệp và đối tượng, bao gồm cả trong Active Directory.



























































