Computer >> Hướng Dẫn Máy Tính >  >> Hệ Thống >> Máy Chủ Windows

Kích Hoạt Nhiệm Vụ Theo Sự Kiện Windows (Event Triggers)

Trong Windows Server 2008 (Vista), một tính năng mới xuất hiện cho phép gán tác vụ của Windows Scheduler cho bất kỳ sự kiện nào trong nhật ký hệ thống. Sử dụng tính năng này, quản trị viên có thể gán một tập lệnh cụ thể hoặc gửi cảnh báo email cho bất kỳ sự kiện Windows nào. Hãy xem xét tính năng này chi tiết.

Việc chạy tác vụ khi xảy ra các sự kiện Windows nhất định dựa trên sự tích hợp chặt chẽ giữa Task Scheduler và Event Viewer. Bạn có thể gán bất kỳ tác vụ Scheduler nào cho bất kỳ sự kiện Windows nào trực tiếp trong bảng điều khiển Event Viewer. Là phản hồi cho một sự kiện, Task Scheduler có thể chạy tập lệnh hoặc gửi thông báo email đến quản trị viên (hoặc bất kỳ người dùng nào khác).

Giả sử, nhiệm vụ của chúng ta là thông báo cho quản trị viên bảo mật về việc khóa tài khoản người dùng Active Directory.

Mẹo. Chúng tôi đã chọn sự kiện này cho mục đích minh họa. Thực tế, phạm vi áp dụng tính năng này khá rộng. Có thể là thông báo dừng dịch vụ Windows, chạy ứng dụng sau khi sao lưu Exchange xong, thông báo thay đổi trong nhóm bảo mật Active Directory, hoặc thay đổi trong các thư mục hoặc tệp cụ thể, v.v.

Sự kiện khóa tài khoản người dùng AD được ghi lại trong nhật ký Security trên bộ điều khiển miền. Event ID của sự kiện khóa là 4740. Mở Windows Event Viewer (Event Viewer — eventvwr.msc) và tìm sự kiện này. Nhấp chuột phải vào nó và chọn Attach Task To This Event.

Kích Hoạt Nhiệm Vụ Theo Sự Kiện Windows (Event Triggers)

Create Basic Task Wizard được khởi chạy. Wizard nhắc chỉ định tên tác vụ. Tên được tạo tự động — Security_Microsoft-Windows-Security-Auditing_4740 và nó phù hợp với chúng ta.

Kích Hoạt Nhiệm Vụ Theo Sự Kiện Windows (Event Triggers)

Ở bước tiếp theo, loại nhật ký sự kiện, nguồn và Event ID được chỉ định. (Tất cả các trường được điền tự động và không thể chỉnh sửa ở bước này.)

Kích Hoạt Nhiệm Vụ Theo Sự Kiện Windows (Event Triggers)

Sau đó bạn được nhắc chọn loại phản hồi cho sự kiện. Các phản hồi sau đây có sẵn:

  • Khởi động một chương trình
  • Gửi email
  • Hiển thị thông báo

Kích Hoạt Nhiệm Vụ Theo Sự Kiện Windows (Event Triggers)

Chúng tôi chọn thông báo email. Chỉ định người gửi, người nhận, địa chỉ máy chủ SMTP, chủ đề và nội dung email.

Kích Hoạt Nhiệm Vụ Theo Sự Kiện Windows (Event Triggers)

Ở bước cuối cùng của wizard, bạn có thể xem cài đặt kích hoạt. Kết quả là một tác vụ mới được kết nối với sự kiện 4740 xuất hiện trong Task Scheduler. Mở bảng điều khiển Task Scheduler trong Administrative Tools. Tác vụ mới có thể được tìm thấy trong Task Scheduler Library -> Event Viewer Tasks.

Kích Hoạt Nhiệm Vụ Theo Sự Kiện Windows (Event Triggers)

Ở đây bạn cũng có thể thay đổi cài đặt kích hoạt sự kiện và buộc nó để kiểm tra phản hồi cho sự kiện. Kích Hoạt Nhiệm Vụ Theo Sự Kiện Windows (Event Triggers)

Mẹo. Nếu bạn phải gán một kích hoạt cho nhiều EventIDs, bạn cần chỉ định chúng được phân tách bằng dấu phẩy.

Kích hoạt trở nên hoạt động. Khi bất kỳ tài khoản AD nào bị khóa, một thư thông báo sẽ được gửi đến địa chỉ email được chỉ định.

Kích Hoạt Nhiệm Vụ Theo Sự Kiện Windows (Event Triggers)

Lưu ý. Cùng tính năng trong Windows Server 2003 và các phiên bản Windows trước đó được thực hiện bởi tiện ích bảng điều khiển eventtriggers.exe. Tiện ích này cũng cho phép theo dõi sự kiện trong nhật ký hệ thống và gán kích hoạt cho các sự kiện nhất định. Trong ví dụ của chúng tôi, khi bạn phải gán tập lệnh vbs hoặc powershell cho sự kiện 4740 để gửi email đến hộp thư của quản trị viên, lệnh có thể trông như sau:

eventtriggers /create /TR “Lock Account” /TK “C:\WINDOWS\system32\windowspowershell\v1.0\powershell.exe c:\script\SendEmailAlert.ps1″ /L Security /EID 4740

Thông báo này không cung cấp nhiều thông tin, và để xem chi tiết sự kiện, bạn phải mở Event Viewer. Hãy thử đính kèm dữ liệu từ nhật ký sự kiện vào email. Tiện ích wevtutil có thể được sử dụng để lấy thông tin về bất kỳ sự kiện nào từ nhật ký Windows. Vì vậy, để lấy thông tin về sự kiện 4740 cuối cùng từ nhật ký Security, bạn phải chạy:

wevtutil qe Security /q:"*[System[(EventID=4740)]]" /f:text /rd:true /c:1

Tạo một tập lệnh (query.cmd) bao gồm hai dòng: dòng đầu tiên xóa tệp nhật ký cuối cùng, và dòng thứ hai lấy sự kiện cuối cùng từ nhật ký và lưu nó vào tệp nhật ký:

del c:\script\query.txt
wevtutil qe Security /q:"*[System[(EventID=4740)]]" /f:text /rd:true /c:1 > c:\script\query.txt

Bây giờ bạn chỉ cần mở cài đặt của kích hoạt được tạo trước đó trong Task Scheduler. Trong tab Actions, thêm một hành động mới — khởi động tập lệnh query.cmd. Sau đó bạn cần thay đổi thứ tự các hành động, di chuyển nó lên đầu danh sách bằng các nút mũi tên bên phải. (tập lệnh nên được thực thi đầu tiên).

Kích Hoạt Nhiệm Vụ Theo Sự Kiện Windows (Event Triggers)

Sau đó chỉnh sửa hành động thứ hai — gửi email — bằng cách chọn c:\script\query.txt làm tệp đính kèm cho thư.

Lưu ý. Trong ví dụ của chúng tôi, để tác vụ hoạt động đúng, bạn phải chạy nó với quyền cao nhất. Để làm điều đó, hãy tích vào cài đặt Run with highest privileges.

Kích Hoạt Nhiệm Vụ Theo Sự Kiện Windows (Event Triggers)

Hãy kiểm tra tác vụ lại. Bây giờ quản trị viên sẽ nhận được thông báo có tệp đính kèm qua email, chứa dữ liệu về tên tài khoản, thời gian khóa và thông tin hữu ích khác.

Kích Hoạt Nhiệm Vụ Theo Sự Kiện Windows (Event Triggers)

Mẹo. Việc sử dụng kích hoạt sự kiện Windows để cảnh báo quản trị viên về các vấn đề quan trọng trên máy chủ không phải là thay thế đầy đủ cho hệ thống giám sát, như System Center Operations Manager hoặc Zenoss. Tuy nhiên, nó là một công cụ giám sát và thông báo tích hợp sẵn đơn giản cho các doanh nghiệp nhỏ không cần đầu tư vào triển khai hoặc đào tạo nhân viên.

Việc gán tác vụ Scheduler cho các sự kiện trong nhật ký hệ thống hoạt động trong tất cả các phiên bản Windows từ Windows Server 2008 / Vista. Tính năng này cho phép nhanh chóng cảnh báo quản trị viên về các vấn đề máy chủ nhất định và giải quyết chúng.

Lưu ý. Trong Windows Server 2012 R2, Task Scheduler không hỗ trợ gửi email (đã không dùng nữa) .
Cho mục đích này, tốt hơn nên sử dụng PowerShell 3.0 – Send-MailMessage.