Cách lưu Bacon của bạn bằng Thùng rác Active Directory
Nếu bạn vô tình xóa người dùng, máy tính hoặc OU Active Directory, bạn có biết mình có thể lấy lại được không? Nếu được bật, thùng rác Active Directory có thể giúp bạn khôi phục đối tượng AD đó.
Trong bài viết này, bạn sẽ tìm hiểu cách kích hoạt và khôi phục các đối tượng một cách nhanh chóng bằng thùng rác Active Directory!
Nếu bạn cần một dịch vụ có đầy đủ tính năng để dễ dàng sao lưu và khôi phục các đối tượng Active Directory cũng như nhiều dịch vụ khác, hãy xem Veeam Backup & Replication.
Thùng rác trong Active Directory hoạt động như thế nào?
Khi bạn bật thùng rác, nó sẽ yêu cầu AD không xóa các đối tượng ngay lập tức khỏi cơ sở dữ liệu AD. Có hai giai đoạn xảy ra khi bạn xóa một đối tượng AD.
Các đối tượng bị xóa hợp lý
Thời điểm bạn xóa một đối tượng AD, bạn có thể coi đối tượng đó đã bị xóa một cách “hợp lý”. Khi một đối tượng bị xóa “một cách hợp lý”, nó không thực sự bị xóa khỏi cơ sở dữ liệu AD. Thay vào đó, nó chỉ bị ẩn và chuyển đến vùng chứa CN=Deleted Objects và thuộc tính isDeleted được đặt thành TRUE trên đối tượng.
Khoảng thời gian mà một đối tượng bị xóa hợp lý có thể được khôi phục được thiết lập bởi thuộc tính
msDS-deletedObjectLifetime. Giá trị mặc định là cùng số ngày với Thời gian tồn tại của Tombstone, mặc định là 180 ngày.
Tái chế bia mộ
Khi đối tượng bị xóa theo logic vượt quá thời gian tồn tại của đối tượng bị xóa được xác định bởi thuộc tính msDS-deletedObjectLifetime thì đối tượng đó được coi là đã bị chôn vùi. Tại thời điểm này, đối tượng không thể phục hồi được.
Sau khi vượt quá thời gian msDS-deletedObjectLifetime, thuộc tính isRecycled được đặt thành TRUE và thuộc tính isDeleted vẫn giữ nguyên THẬT. Sau đó, thời gian tồn tại của bia mộ bắt đầu với mặc định là 180 ngày.
Sau khi đối tượng AD vượt quá thời gian tồn tại của Tombstone, đối tượng đó sẽ bị xóa vật lý khỏi cơ sở dữ liệu thông qua tính năng thu gom rác.
Kích hoạt Thùng rác bằng ADAC
Theo mặc định, thùng rác AD không được bật. Để sử dụng tính năng tiện dụng này, bạn phải kích hoạt nó theo cách thủ công. Đừng quên cho đến khi quá muộn!
Để kích hoạt thùng rác:
- Điều hướng đến Trung tâm quản trị Active Directory (ADAC) trên máy trạm đã tham gia miền của bạn hoặc trên bộ điều khiển miền.
- Nhấp vào miền nằm ở phía bên trái và tìm menu Công việc ở phía bên phải.
- Nhấp vào tùy chọn Bật Thùng rác để bật thùng rác như hiển thị bên dưới.
ADAC sau đó sẽ nhắc nhở xác nhận kích hoạt thùng rác.
Tùy thuộc vào độ lớn của miền của bạn, có thể mất một chút thời gian để phổ biến cài đặt.
Sau khi làm mới, bạn sẽ thấy tùy chọn Bật Thùng rác hiện có màu xám.
Kích hoạt Thùng rác Active Directory bằng PowerShell
Nếu vì lý do nào đó, bạn cần tự động kích hoạt thùng rác, bạn luôn có thể làm như vậy với PowerShell và lệnh ghép ngắn Enable-ADOptionalFeature.
Dưới đây là đoạn mã bạn có thể sử dụng để kích hoạt thùng rác trong PowerShell. Ví dụ bên dưới đang bật thùng tái chế ở cấp nhóm cho nhóm ad.lc-test.local.
$Params = @{
"Identity" = 'Recycle Bin Feature'
"Scope" = 'ForestOrConfigurationSet'
"Target" = 'ad.lc-test.local'
}
Enable-ADOptionalFeature @ParamsKhôi phục các đối tượng bằng Thùng rác Active Directory (ADAC)
Khi bạn đã kích hoạt thùng rác, bây giờ bạn có thể tận dụng nó! Trước tiên hãy bắt đầu bằng cách sử dụng ADAC.
Sau khi bạn đã xóa một đối tượng nhưng trước khi thời gian tồn tại của bia mộ hết hạn:
- Điều hướng đến vùng chứa Đối tượng đã xóa trong ADAC. Vùng chứa này chứa tất cả các đối tượng Active Directory đã bị xóa.
2. Tiếp theo, xác định vị trí đối tượng cần khôi phục. Trong trường hợp này, chúng tôi đang tìm kiếm đối tượng TestUser2. Trên menu Nhiệm vụ bên phải, có bốn tùy chọn.
- Khôi phục - Khôi phục đối tượng về đơn vị tổ chức (OU) ban đầu.
- Khôi phục vào… - Thay vì khôi phục đối tượng về vị trí ban đầu, hãy chọn một đơn vị tổ chức khác để khôi phục đối tượng.
- Định vị cấp độ gốc - Tùy chọn này sẽ đưa bạn trực tiếp đến đơn vị tổ chức chứa đối tượng đó.
- Thuộc tính - Xem các thuộc tính rất hạn chế như Đã sửa đổi, Đã tạo, Lớp đối tượng, Tên chuẩn hoặc Cập nhật số thứ tự (USN).
Trong ví dụ này, chúng tôi sẽ khôi phục đối tượng về đơn vị tổ chức ban đầu nằm trong vùng chứa Người dùng.
3. Nhấp vào nút Khôi phục và như bạn có thể thấy bên dưới, đối tượng hiện đã trở lại trong OU của Người dùng.
Khôi phục các đối tượng bằng Thùng rác Active Directory (PowerShell)
Cũng hữu ích như kỹ thuật đó, việc sử dụng PowerShell để thực hiện các tác vụ tương tự như được thực hiện trong GUI thường thậm chí còn dễ dàng hơn và dễ sử dụng hơn. Để khôi phục đối tượng AD bằng PowerShell:
- Trên máy tính đã tham gia miền hoặc trên bộ điều khiển miền, hãy mở PowerShell và tìm đối tượng đã xóa. Đảm bảo bạn đã cài đặt mô-đun ActiveDirectory.
Liên quan: Cách cài đặt mô-đun Active Directory
2. Xác định vị trí các đối tượng cần xóa bằng lệnh Get-ADObject.
Liên quan: Get-ADObject: Báo cáo về Active Directory bằng PowerShell
Bạn có thể tìm thấy đối tượng theo một số cách khác nhau nhưng luôn sử dụng tham số IncludeDeletedObjects. Tham số này là cần thiết để tìm tất cả các đối tượng trong vùng chứa Đối tượng đã Xóa.
Nếu bạn tự chạy Get-ADObject bằng bộ lọc rộng như -Filter *, bạn sẽ thấy rất nhiều kết quả không cần thiết. Để chỉ nhắm mục tiêu những kết quả đáng lẽ phải nằm trong thùng rác, bạn có thể lọc các đối tượng như vậy.
Liên quan: Tìm hiểu bộ lọc Active Directory và LDAP trong PowerShell
Thay vào đó, hãy tạo một bộ lọc để tìm tất cả các đối tượng có thuộc tính isDeleted được đặt thành true với tên tài khoản chứa chuỗi *DEL:*. Bộ lọc này chỉ trả về các đối tượng đã xóa.
Get-ADObject -Filter 'isDeleted -eq $true -and Name -like "*DEL:*"' -IncludeDeletedObjects
Khi bạn đã tìm thấy các đối tượng bằng Get-ADObject, bây giờ bạn có thể chuyển các đối tượng đó sang lệnh Restore-ADObject.
Get-ADObject -Filter 'isDeleted -eq $true -and Name -like "*DEL:*"' -IncludeDeletedObjects | Restore-ADObjectKhi quá trình khôi phục đã xảy ra (hy vọng vậy), bạn nên xác minh đối tượng đã hoạt động trở lại. Để làm như vậy, hãy chạy lại lệnh Get-ADObject và xác nhận rằng bạn không còn thấy đối tượng được trả về nữa. Nếu không, bạn có thể đi!
Bạn cũng có thể tùy ý chạy Get-ADUser hoặc có thể Get-ADComputer để đảm bảo đối tượng hiển thị.
Get-ADObject -Filter 'isDeleted -eq $true -and Name -like "*DEL:*"' -IncludeDeletedObjects
Get-ADUser -Identity 'TestUser5'Làm sạch thùng rác Active Directory
Nếu muốn xóa tất cả các đối tượng AD được tái chế, bạn có thể làm như vậy với PowerShell. Tìm tất cả các đối tượng đã xóa như đã thực hiện trước đó và chuyển chúng sang lệnh Remove-ADObject như hiển thị bên dưới.
Trong ví dụ bên dưới, tham số Xác nhận được đặt thành sai. Sử dụng tham số này sẽ xóa ngay từng đối tượng mà không cần bất kỳ xác nhận nào!
Get-ADObject -Filter 'isDeleted -eq $true -and Name -like "*DEL:*"' -IncludeDeletedObjects | Remove-ADObject -Confirm:$falseThay đổi tuổi thọ của bia mộ
Theo mặc định, thời gian tồn tại của Tombstone của thùng rác Active Directory là 180 ngày. Nhưng có lẽ bạn muốn thay đổi điều đó. Một lần nữa, bằng cách sử dụng PowerShell, bạn có thể biến điều đó thành hiện thực.
- Trước tiên, hãy tìm thời gian tồn tại hiện tại để đảm bảo thời gian tồn tại chưa được đặt theo yêu cầu bằng đoạn mã bên dưới. Giá trị được lưu trữ trong thuộc tính AD tombstoneLifetime.
$ADNamingContext = (Get-ADRootDSE).configurationNamingContext
$Params = @{
"Identity" = "CN=Directory Service,CN=Windows NT,CN=Services,$ADNamingContext"
"Partition" = $ADNamingContext
"Properties" = '*'
}
Get-ADObject @Params | Select-Object -Property tombstoneLifetime2. Tiếp theo, thay đổi thời gian tồn tại của bia mộ thành một thứ khác. Giả sử bạn muốn kéo dài thời gian tồn tại lên một năm hoặc 365 ngày. Bạn có thể làm điều đó bằng cách sử dụng lệnh ghép ngắn Set-ADObject và chuyển cho nó tất cả các tham số bắt buộc bên dưới.
$ADNamingContext = (Get-ADRootDSE).configurationNamingContext
$Params = @{
"Identity" = "CN=Directory Service,CN=Windows NT,CN=Services,$ADNamingContext"
"Partition" = $ADNamingContext
"Replace" = @{tombstoneLifetime='365'}
}
Set-ADObject @ParamsThay đổi này sẽ có hiệu lực ngay lập tức, không cần khởi động lại bất kỳ dịch vụ nào.








