Kiểm tra sức khỏe Active Directory


24

Gần đây tôi đã gặp một số rắc rối về Active Directory đang tự hỏi tôi có thể làm những kiểm tra nào một cách thường xuyên để đảm bảo mọi thứ đều hoạt động tối ưu?

Câu trả lời:


14

Tại một công ty nhỏ hơn tôi đã làm việc trong quá khứ, chúng tôi đã sử dụng điều này . Đó là một kịch bản so sánh PASS / FAILS, chắc chắn không phải là một công cụ tồi để thử. Quan tâm để xem những gì người khác đã sử dụng.


18

Để cung cấp cho bạn một số ý tưởng về những gì có thể được kiểm tra, đây là một số kiểm tra tự động chúng tôi thực hiện hàng ngày.

  • Kiểm tra Ping
  • Liên kết xác thực LDAP / Cổng 389
  • Liên kết xác thực GC / Cổng 3268
  • Kiểm tra DNS / Cổng 53. Điều này bao gồm thực hiện tra cứu đối với DC cho tên máy chủ DC dns, để xác nhận rằng chỉ có một địa chỉ được trả về. Đối với các DC có nhiều địa chỉ IP, chúng tôi xác nhận rằng giá trị đăng ký "PublishAddresses" được xác định tại HKLM \ System \ CurrentControlSet \ Services \ DNS \ Paramameter và khớp với địa chỉ IP dự kiến.
  • Xét nghiệm Sysvol / FRS. Điều này bao gồm kiểm tra phiên bản trong tệp gpt.ini GPO gần đây nhất và so sánh với trình giả lập PDC.
  • Kiểm tra không gian đĩa miễn phí (WMI).
  • Đồng bộ hóa thời gian. WMI có thể được sử dụng để lấy giờ địa phương DC và so sánh với máy chủ đang chạy thử nghiệm và được gắn cờ nếu sự khác biệt đang tiến đến ngưỡng (4m 50s).
  • Quảng cáo máy chủ thời gian. đầu ra của lệnh: 'nltest / server: serverName /dsgetdc:domainName.company.com' và xác minh rằng cờ TIMESERV có mặt.
  • Kiểm tra máy chủ thời gian.
    1. Truy vấn máy chủ trên UDP / 123 để có phản hồi NTP hợp lệ.
    2. Sử dụng w32tm.exe /query /computer:dcname /status /verboseđể xác định Thời gian đồng bộ hóa thành công cuối cùng của DC và nếu thời gian DC được đồng bộ hóa.
    3. Sử dụng nltest.exe /server:dcname /dsgetdc:dcDomainDnsNameđể xác định xem DC có thực sự đang quảng cáo như một máy chủ thời gian không. Quảng cáo được thực hiện thông qua dịch vụ Netlogon.
  • Quảng cáo GC. Một cách để xác định xem một dc thực sự đang quảng cáo như một Danh mục Toàn cầu là sử dụng repadmin /showreps. Nếu bất kỳ phân vùng nào chưa (chưa) được sao chép hoàn toàn, nó sẽ hiển thị 'CẢNH BÁO: Không quảng cáo như một danh mục toàn cầu'. Lưu ý rằng các cờ NLTest có thể chỉ ra rằng dc được cấu hình là một GC; 'cấu hình' này khác với 'quảng cáo'. Điều này được đặc biệt quan tâm trong các môi trường phân tán lớn có nhiều tên miền, vì có thể mất vài ngày hoặc vài tuần để một dc sao chép dần dần tất cả các phân vùng đến điểm mà bài kiểm tra GC đi qua.
  • Kiểm tra nhân rộng. Mỗi miền có một đối tượng "thẻ" và một trong các thuộc tính được sử dụng để lưu trữ giá trị datetime. Tất cả các DC được truy vấn cho các đối tượng này và các DC có giá trị vượt quá ngưỡng được gắn cờ cho các vấn đề sao chép.
  • Kiểm tra thiết lập đăng ký nhất quán nghiêm ngặt . Strict Replication là mặc định cho Windows 2008 mới và các miền mới hơn, tuy nhiên các môi trường AD được thiết lập cũ hơn đây không phải là mặc định và cài đặt đó sẽ được thực hiện. Các đối tượng kéo dài trở nên khó khăn hơn nhiều để xác định và giải quyết trong các môi trường lớn hơn với nhiều miền và DC.
  • Trong thời gian chờ nhân rộng. Điều này có thể được lấy thông qua WMI hoặc .NET. Điều này giống như thực hiện a repadmin /queue. Vì một số lượng lớn các bản sao đang chờ xử lý có thể đã ngừng hoạt động vì một số lý do. Một ví dụ sẽ là nếu Tính nhất quán sao chép nghiêm ngặt được bật, điều này chắc chắn sẽ tắt sao chép nếu một đối tượng không hợp lệ hoặc bị xóa đã cố gắng sao chép vào trong. Cũng có thể có được thời gian gần đây nhất của lần sao chép thành công cuối cùng cho một người hàng xóm cụ thể, có thể được gắn cờ nếu vượt quá ngưỡng.

Triệt để, cảm ơn! Tuy nhiên; bất kỳ cơ hội nào bạn có thể giải thích về "kiểm tra máy chủ thời gian"? Làm thế nào để bạn làm điều này bằng tay (hoặc trong một kịch bản, nói?) Với nỗ lực tối thiểu? :)
Ashley

1
Tôi đã xây dựng NTPClient để thực hiện đồng bộ hóa thời gian với DC trên UDP / 123. Đối với Windows 2008, rất nhiều thông tin có thể thu được bằng cách sử dụng: w32tm.exe / query / computer: dcname / status / verbose. Nó cung cấp tất cả thông tin có thể nhận được bằng đồng bộ hóa NTPClient, cộng với Thời gian đồng bộ hóa thành công cuối cùng và nếu DC đồng bộ hóa. Đây là một sự khác biệt rất lớn so với Windows 2003. Để xác định xem DC có thực sự đang quảng cáo như một máy chủ thời gian hay không, bạn cần sử dụng: nltest.exe / server: dcname / dsgetdc: dcDomainDnsName.
Greg Askew

đây chỉ là wow! bạn có muốn chia sẻ các kịch bản chạy cho những điều này. Tôi sẽ cố gắng chạy chúng bằng powershell.
whizkid

1
@whizkid: Tôi không có tập lệnh powershell, nhưng gần đây tôi đã phát triển một ứng dụng C # thực hiện tất cả những điều này và sẽ xuất bản nó trên CodePlex.com sau một tuần nữa.
Greg Askew

8

Active Directory phụ thuộc rất nhiều vào DNS, vì vậy hãy bắt đầu với một số kiểm tra DNS.

Tên máy chủ NSLOOKUP Thử nghiệm này DNS có thể phân giải tên máy chủ thành địa chỉ IP

DCDIAG / TEST: DNS Điều này sẽ kiểm tra xem DNS và Active Directory có hoạt động tốt không.

NETDIAG / TEST: DNS Thêm kiểm tra DNS

Khi bạn hài lòng rằng DNS đang chạy chính xác, đây là bài kiểm tra nhiều hơn

REPADMIN / SHOWREPS Điều này sẽ cho bạn thấy lần cuối cùng xảy ra sao chép với các đối tác sao chép

REPADMIN / REPLSUM / ERRORSONLY Điều này hiển thị bất kỳ lỗi sao chép giữa các bộ điều khiển miền.

DCDIAG / Q Vua của các công cụ chẩn đoán AD. Kiểm tra và báo cáo tất cả các thành phần AD.

NETDIAG Kiểm tra tất cả


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.