Trong bài này tôi sẽ giới thiệu với các bạn cách sử dụng LDP để xác định chính sách Mailbox Manager nào đang được áp dụng cho một hòm thư của người dùng. Tôi đã phải thực hiện điều này khi phát hiện thấy rằng một chính sách Mailbox Manager sai đang được sử dụng. Đầu tiên sẽ là một số thông tin nền tảng về Mailbox Manager (trình quản lý hộp thư). Có thể bạn đã biết về thành phần này, nhưng tôi nghĩ nhắc lại một chút sẽ hữu ích hơn và bài sẽ hoàn chỉnh hơn.
Chúng ta hãy xem một ví dụ với hai chính sách của trình quản lý hòm thư tạo bên trong một tổ chức Exchange. Ở đây chúng ta sẽ dùng ví dụ thực sự đơn giản để giải thích cho quá trình gỡ lỗi. Tưởng tượng rằng có một chính sách mặc định, xoá các thư nhận có kích thước hơn 50KB trong thư mục Inbox, sẽ được áp dụng cho tất cả đối tượng người dùng. Bây giờ tưởng tượng có một chính sách khác cũng xoá thư nhận trong thư mục Inbox nhưng chỉ với những thư có kích thước lớn hơn 100KB. Ý định ở đây sẽ là áp dụng chính sách thứ hai cho thành viên của nhóm Managers, đối tượng có hòm thư lớn hơn nhưng giới hạn kích thước thư nhận. Chúng ta sẽ tìm hiểu sâu hơn cách thức chính sách này được áp dụng cho nhóm Managers ở bên dưới. Đây chính là lý do thực sự vì sao các chính sách không được áp dụng một cách đúng đắn. Hình 1 minh hoạ cho các bạn một chính sách Mailbox Manager - Inbox > 100KB sẽ có dạng như thế nào. Chính sách mặc định có cùng cấu hình, ngoại trừ giá trị kích thước (Size) là 50 thay vì 100.
Hình 1: Chính sách xoá thư trong Inbox có kích thước lớn hơn 100 KB.
Có thể bạn vẫn còn nhớ rằng, các chính sách về nhận thư được áp dụng theo trật tự ưu tiên với mức ưu tiên 1 là cao nhất. Quy định nhận thư mặc định có giá trị ưu tiên thấp nhất, nghĩa là được xác định ở cuối cùng. Sau mỗi lần khớp, không có chương trình nào được thực hiện thêm, chỉ có một chính sách đơn nhất có thể được áp dụng. Ví dụ, nếu quy định Mailbox Manager – Inbox >100KB có mức ưu tiên 1 và quy định Mailbox Manager – Inbox >50KB có mức ưu tiên 2 thì bất kỳ người dùng nào áp dụng quy tắc lọc cho quy định Mailbox Manager – Inbox >100KB, các thư lớn hơn 50KB nhưng nhỏ hơn 100KB sẽ được bỏ đánh dấu trong thư mục Inbox của họ. Mặt khác, quy định Mailbox Manager – Inbox >50KB cũng sẽ không được áp dụng cho người dùng này. Hình 2 thể hiện hai chính sách của chúng ta trong Exchange System Manager.
Hình 2: Danh sách quy định nhận thư.
Để ý trên hình 1 bạn sẽ thấy rằng các chính sách được cấu hình để chuyển thư đã đánh dấu tới thư mục Deleted Items, cũng như gửi một thông báo tới người dùng bị tác động. Phần cuối cùng của là cấu hình giản đồ tiến trình cho trình quản lý mailbox và gửi một báo cáo tới người quản trị mỗi lần tiến trình diễn ra. Phần cấu hình được thực hiện trên tab Mailbox Management của các thuộc tính đối tượng server trong Exchange System Manager như trong hình 3.
Hình 3: Giản đồ trình quản lý hộp thư (Mailbox Manager Schedule).
Có hai người dùng trong tổ chức này, tên là User1 và User2. User1 là người dùng thông thường và thư mục Inbox sẽ được quy định xoá thư lớn hơn 50KB. User2 là thành viên của nhóm Managers, được quy định xoá thư lớn hơn 100KB. User2 hiện thời có 3 thư chưa đọc trong Inbox, một thư có file log đính kèm 2MB, một thư có file nén đính kèm 95KB và cuối cùng là một thư nhỏ 1KB không có file đính kèm. Chuyện gì sẽ xảy ra khi chương trình quản lý hòm thư tiếp theo chạy suốt đêm? User2, với vai trò quản lý. đăng nhập tiếp vào hôm sau qua Outlook Web Access để xem màn hình có dạng như bên dưới.
Hình 4: Tiến trình quản lý mailbox không chính xác.
Như bạn có thể thấy, một thông báo đến từ System Attendant cho User2 biết các thư lớn hơn 50KB đã được chuyển tới thư mục Deleted Items. Tại sao lại như vậy? User2 là một thành viên của nhóm Managers nên theo quy định chỉ có các thư lớn hơn 100KB mới được chuyển. Rõ ràng một chính sách sai đang được áp dụng và bên dưới tôi có trình bày tỉ mỉ phương thức kiểm chứng chính sách nào thực sự hiệu quả. Như đã được nói trong ví dụ trên, dù mọi thứ có vẻ khá đơn giản, nhưng nguyên tắc cơ bản thì vẫn giống nhau. Phương thức bên dưới sử dụng chương trình LDP.EXE. Bạn có thể tìm LDP.EXE trong Windows 2003 Support Tools, hoặc trên đĩa CD Windows 2003 trong thư mục Support\Tools.
Dưới đây là cách sử dụng LDP để kiểm chứng chinh sách mailbox manager nào được áp dụng cho một hộp thư.
- Chạy LDP.EXE.
- Chọn menu Connection, sau đó chọn Connect từ danh sách tuỳ chọn được hiển thị.
- Trong cửa sổ Connect, nhập tên một Domain Controller để kết nối tới. Tất cả các thiết lập khác để ở giá trị mặc định. Bấm OK sau khi xong.
- Trở lại cửa sổ LDP chính, bây giờ bạn sẽ thấy một kết nối được thực hiện tới Domain Controller khi khung bên phải được phủ đầy thông tin. Vào menu Connection lại lần nữa, nhưng lần này sử dụng tuỳ chọn Bind.
- Trong cửa sổ Bind, nhập thông tin thẩm định phù hợp để nối kết với Domain Controller, sau đó ấn OK.
- Trở lại màn hình chính LDP một lần nữa. Khung bên phải sẽ hiển thị bạn đã thẩm định thành công, màn hình có dạng như sau.
Hình 5: LDP sau khi kết nối và nối kết thành công.
- Bây giờ, trên menu View, chọn Tree. Trong cửa sổ Tree View, để trường BaseDN trống rồi kích OK.
- Bạn cũng nên chú ý rằng ở khung bên trái cửa sổ LDP chính, hệ thống phân cấp Active Directory đã được hiển thị. Đầu tiên mở rộng tên miền bằng cách kích vào dấu + bên cạnh nó. Sau đó, tiếp tục mở rộng các đối tượng theo thứ tự sau đến Recipient Policies: Configuration, Services, Microsoft Exchange, your Exchange organization name, Recipient Policies. Bạn có thể thấy như minh hoạ trên hình 6.
Hình 6: LDP hiển thị các quy định nhận thư.
- Bạn có thể thấy như trên hình 6, ngay bên dưới danh sách các quy định nhận thư (Recipient Policies) là hai chính sách ví dụ của chúng ta với tên Default Policy và Mailbox Manager – Inbox > 100KB. Có một mẹo nhỏ là hãy xoá sạch khung bên phải LDP, bạn sẽ thấy được thông tin hữu ích một cách ngắn gọn. Để xoá, vào menu Connection, sau đó chọn New.
- Bây giờ, trở lại với từng chính sách nhận thư. Bắt đầu là Default Policy (quy định mặc định), chỉ cần kích đúp vào nó bên trong cửa sổ LDP. Kết quả là khung bên phải cửa sổ sẽ được phủ đầy với nhiều thông tin. Dòng khoá mà chúng ta thích thú là dòng tham chiếu tới đối tượng objectGUID của quy định này, như trong hình 7.
Hình 7: objectGUID trong Default Policy
- Bạn có thể thấy, objectGUID của Default Policy là 9c948cb6-784f-4521-b019-737064461c2a. Một mẹo nhỏ khác ở LDP là khả năng ghi nội dung cửa sổ sang file text thông qua tuỳ chọn Save As trên menu Connection. Bạn có thể xây dựng một file text của tất cả các giá trị objectGUID cho các chính sách của mình.
- Bây giờ, lặp lại từ bước 10 cho các chính sách còn lại. Ở trường hợp của tôi, một đối tượng objectGUID khác là 307656c9-4a80-41c7-ab33-0ca5da6244e3.
- Khi đã có hai giá trị objectGUID cho các quy định nhận thư, chúng ta cần kiểm chứng xem quy định nào được áp dụng cho hộp thư của User2. Để thực hiện điều này, chúng ta cần kiểm tra thuộc tính trên tài khoản của User2. Do đó, quay trở lại khung bên trái LDP, tìm đơn vị tổ chức (tức Organization Unit - OU) chứa tài khoản người dùng. Trong trường hợp của tôi là OU ‘Exchange Users’.
- Sau khi chọn và mở rộng OU Exchange Users, danh sách tài khoản người dùng bên trong OU này được hiển thị ở khung bên trái. Cũng như trước, bây giờ là thời gian thích hợp để xoá khung bên phải thông qua tuỳ chọn New trên menu Connection.
- Kích đúp vào tài khoản người dùng thích hợp, trong trường hợp của tôi là User2. Cũng như trước, khung bên phải LDP sẽ thể hiện vô số thông tin trong tài khoản này. Dòng mà tôi thấy thích thú là một trong các dòng chứa thuộc tính msExchPoliciesIncluded như hình 8.
Hình 8: Thuộc tính msExchPoliciesIncluded.
- Chú ý từ hình 8 cho thấy objectGUID của chính sách Mailbox Manager – Inbox > 100KB (307656c9-4a80-41c7-ab33-0ca5da6244e3) không được thể hiện. Chỉ có một GUID chính sách là của Default Policy, xác nhận rằng chính sách này đang được áp dụng cho User2.
Tất nhiên, câu hỏi được đặt ra trong trường hợp cụ thể này là vì sao chính sách mặc định (default policy) lại được áp dụng cho trường hợp đầu tiên. Câu trả lời hoá ra lại đơn giản: quy tắc lọc cho quy định Mailbox Manager – Inbox > 100KB không được xây dựng để dùng tên phân biệt của nhóm Managers, một điểm rất dễ bị bỏ sót. Nói cách khác, để áp dụng chính xác một chính sách nào dó cho một nhóm, bạn phải đảm bảo tham chiếu đầy đủ tên phân biệt của nhóm, chẳng hạn “Manager” như trong ví dụ này. Do đó, trong ví dụ của tôi, quy tắc lọc sẽ thông báo rằng thuộc tính Member Of của người dùng phải được khớp chính xác với tên phân biệt sau:
CN=Managers,OU=Exchange Users,DC=ngh,DC=net
Hình 9 minh hoạ cửa sổ khi sử dụng tên phân biệt trong các quy tắc lọc.
Hình 9: Bộ lọc Mailbox Manager đúng.
Sau khi thay đổi, quy định có thể được áp dụng và LDP dùng để kiểm tra lại thuộc tính msExchPoliciesIncluded cho User2. Kết quả được hiển thị trong hình 10. Bạn có thể thấy dòng đánh dấu có chứa objectGUID của quy định Mailbox Manager đúng.
Hình 10: Khớp chính xác thuộc tính msExchPoliciesIncluded.
Tóm tắt
Ứng dụng gỡ lỗi quy định có thể và sẽ hoàn chỉnh bằng cách kiểm tra quy tắc lọc được áp dụng. Nó cũng rất có ích khi kiểm định được chính sách nào Exchange đang sử dụng bằng cách kiểm tra các thuộc tính khác nhau thông qua LDP như đã giới thiệu trong bài này.