Thiết lập cảnh báo đăng nhập trên Windows 11 dễ dàng với script PowerShell và Task Scheduler để bảo vệ máy tính của bạn an toàn hơn.
Việc theo dõi hoạt động đăng nhập trên máy tính cá nhân là một biện pháp bảo mật quan trọng, đặc biệt khi nhiều người có thể truy cập vào thiết bị hoặc khi cần giám sát các hoạt động đăng nhập bất thường. Windows 11 cung cấp khả năng tự động gửi email thông báo mỗi khi có tài khoản nào đó đăng nhập vào hệ thống. Tính năng này đặc biệt hữu ích cho những ai muốn kiểm soát quyền truy cập máy tính, phát hiện các lần đăng nhập trái phép, hoặc đơn giản là theo dõi thời gian sử dụng máy tính của các thành viên trong gia đình.
![Cách nhận thông báo email mỗi khi ai đó đăng nhập PC]()
Hệ thống thông báo này hoạt động dựa trên việc kết hợp PowerShell script với Task Scheduler của Windows, tạo ra một giải pháp tự động hóa hoàn toàn. Khi được thiết lập đúng cách, người dùng sẽ nhận được email cảnh báo ngay lập tức mỗi khi có bất kỳ ai đăng nhập vào máy tính, bao gồm cả thông tin về tên người dùng, thời gian đăng nhập và tên máy tính.
Chọn mua Laptop chính hãng, giá tốt tại Minh Tuấn Mobile
Bước 1: Tạo script gửi email tự động
Bước đầu tiên trong quá trình thiết lập là tạo một script PowerShell có khả năng gửi email tự động. Script này sẽ chứa đầy đủ thông tin cần thiết để kết nối với máy chủ email và gửi thông báo với nội dung tùy chỉnh.
LƯU Ý QUAN TRỌNG VỀ BẢO MẬT: Script này sẽ lưu trữ mật khẩu email dưới dạng văn bản thuần túy, điều này có thể tạo ra rủi ro bảo mật nếu có người khác truy cập vào file. Để giảm thiểu rủi ro, nên cân nhắc tạo một tài khoản email phụ chuyên dụng cho mục đích này thay vì sử dụng email chính.
Để bắt đầu tạo script, hãy mở ứng dụng Tìm kiếm Windows bằng cách nhấn tổ hợp phím Windows+S, gõ từ khóa "Notepad" và khởi chạy ứng dụng. Trong cửa sổ soạn thảo mới, nhập đoạn code sau:
# Email Settings
$smtpServer = "smtp.youremailprovider.com"
$smtpPort = "587"
$smtpUser = "yourname@youremailprovider.com"
$smtpPass = "youremailpassword"
$toEmail = "recipient@email.com"
$subject = "Login Alert on $env:COMPUTERNAME"
$body = "User $env:USERNAME has just logged in at $(Get-Date)."
# Send Email
$msg = New-Object System.Net.Mail.MailMessage $smtpUser, $toEmail, $subject, $body
$smtp = New-Object Net.Mail.SmtpClient($smtpServer, $smtpPort)
$smtp.EnableSsl = $true
$smtp.Credentials = New-Object System.Net.NetworkCredential($smtpUser, $smtpPass)
$smtp.Send($msg)
Trong phần cấu hình Email Settings, cần thay thế các thông tin SMTP bằng thông tin thực tế từ tài khoản email. Thông tin này có thể lấy từ Gmail, Outlook hoặc bất kỳ nhà cung cấp email nào đang sử dụng. Đối với những tài khoản đã kích hoạt xác thực hai yếu tố, sẽ cần tạo một mật khẩu ứng dụng riêng biệt và sử dụng nó thay cho mật khẩu thông thường.
![Cách nhận thông báo email mỗi khi ai đó đăng nhập PC]()
Sau khi hoàn tất việc cấu hình các thông số, tiến hành lưu file. Trên thanh menu của Notepad, chọn File > Save As. Trong cửa sổ Save As, chọn thư mục mong muốn để lưu trữ file. Tại menu thả xuống "Save as type", chọn "All Files". Trong ô "File name", nhập tên file như "SendLoginEmail.ps1", sau đó nhấn nút Save.
Bước 2: Thiết lập tác vụ trong Task Scheduler
Với script đã sẵn sàng, bước tiếp theo là sử dụng Task Scheduler để tự động chạy script mỗi khi có hoạt động đăng nhập vào hệ thống.
Mở ứng dụng Tìm kiếm Windows (Windows+S), gõ "Task Scheduler" và khởi chạy tiện ích này. Trong giao diện chính, tại khung bên phải, nhấp vào "Create Task".
Trong tab "General", tại trường "Name", nhập tên mô tả cho tác vụ, ví dụ "Login Email Alert". Kích hoạt các tùy chọn "Run whether user is logged on or not" và "Run with highest privileges" để đảm bảo tác vụ hoạt động ổn định.
![Cách nhận thông báo email mỗi khi ai đó đăng nhập PC]()
Chuyển sang tab "Triggers" trên thanh menu phía trên, nhấn "New" để thêm trigger mới. Tại menu "Begin the task", chọn "At log on".
Tùy thuộc vào nhu cầu giám sát, có thể chọn "Any user" nếu muốn nhận thông báo khi bất kỳ người dùng nào đăng nhập, hoặc chọn "Specific user" nếu chỉ muốn theo dõi tài khoản cụ thể. Trong trường hợp chọn "Specific user", nhấn "Change User" và chọn tài khoản mong muốn.
![Cách nhận thông báo email mỗi khi ai đó đăng nhập PC]()
Tiếp tục mở tab "Actions" và nhấn "New" để thêm hành động mới. Trong menu "Action", chọn "Start a program". Tại trường "Program/script", nhập "powershell.exe". Trong trường "Add arguments (optional)", nhập nội dung sau (nhớ thay thế đường dẫn bằng đường dẫn thực tế đến script):
-ExecutionPolicy Bypass -File "C:\Scripts\SendLoginEmail.ps1"
![Cách nhận thông báo email mỗi khi ai đó đăng nhập PC]()
Chọn "OK", nhập mật khẩu quản trị viên khi được yêu cầu và lưu tác vụ.
Từ thời điểm này, Windows 11 sẽ tự động gửi email thông báo mỗi khi có người đăng nhập vào hệ thống. Nếu trong tương lai muốn ngừng nhận thông báo, chỉ cần nhấp chuột phải vào tác vụ trong Task Scheduler và chọn "Delete".
Để quản lý email hiệu quả hơn, có thể thiết lập bộ lọc email dựa trên tiêu đề "Login Alert on" mà script sử dụng.
Ẩn cửa sổ PowerShell khi khởi động
Khi gửi email cảnh báo, Windows 11 sẽ khởi chạy PowerShell trong một khoảng thời gian ngắn, khiến bất kỳ ai đăng nhập đều có thể nhìn thấy cửa sổ này. Để ẩn cửa sổ PowerShell và tạo sự kín đáo, có thể thực hiện như sau:
Mở Notepad và nhập đoạn mã VBScript sau (nhớ thay thế đường dẫn bằng đường dẫn thực tế):
Set objShell = CreateObject("Wscript.Shell")
objShell.Run "powershell.exe -ExecutionPolicy Bypass -File ""C:\Scripts\SendLoginEmail.ps1""", 0, False
Trên thanh menu của Notepad, chọn File > Save As. Chọn thư mục lưu trữ script, trong menu "Save as type" chọn "All Files". Tại trường "File name", nhập "SendLoginEmail.vbs", sau đó nhấn Save.
Quay trở lại Task Scheduler và chỉnh sửa tác vụ đã tạo. Trong phần Actions, thay đổi "Program/script" thành "wscript.exe". Trong trường "Add arguments (optional)", nhập nội dung sau:
"C:\Scripts\SendLoginEmail.vbs"
![Cách nhận thông báo email mỗi khi ai đó đăng nhập PC]()
Kết luận
Đây là cách hoàn chỉnh để thiết lập hệ thống cảnh báo email khi có người truy cập vào máy tính Windows 11. Giải pháp này cung cấp một lớp bảo mật bổ sung và khả năng giám sát hiệu quả. Đối với những trường hợp muốn cho phép người khác sử dụng máy tính mà không cần cảnh báo, có thể cân nhắc thiết lập tài khoản khách riêng biệt trên Windows 11.