Hướng dẫn tạo máy chủ Wake On Lan miễn phí - Mình sẽ hướng dẫn tạo một máy chủ Wake On Lan miễn phí bằng Google Appscript ddeer dùng cho mục đích cá nhân khi không có các công cụ lập trình, hoặc là các trang web online nhiều quảng cáo.
1. Tạo và đăng kí appscript với đoạn mã js như sau:
Truy cập trang chủ Appscript
https://script.google.com/homecode-box
Tiếp theo ấn nút Tạo dự án mới. Sau đó copy đoạn mã bên dưới
Có 3 hàm quan trọng:
doGet() Hàm này để tạo trang index có tên là "form.html"
checkPass() Hàm này kiểm tra một mật khẩu được cài đặt trước ở backend để kiểm tra mỗi khi nhập mật khẩu ở html, nếu đúng thì nó gọi hàm sendMagicPacket() để gửi yêu cầu WOL.
sendMagicPacket() : Hàm này dùng một máy chủ depicus.com bên ngoài để tạo một Magic Packet và gửi đi. Trong thông tin gửi tới máy chủ thì bao gồm MAC, IP,, subnet, PORT.
Lưu ý: để WOL từ internet thì cần phải cấu hình NAT để router có thể chuyển dữ liệu tới máy tính đích nhé. Hướng dẫn xem tại: https://moinhat123.blogspot.com/2024/04/huong-dan-cai-wake-on-lan-cho-router-tp.html
Nhập mã sau vào file code.js
// Thiết lập mật khẩu cài đặt trước ở backend
const BACKEND_PASSWORD = "mat_khau_WOL"; // Thay đổi mật khẩu theo ý bạn
// Hàm để hiển thị form
function doGet() {
return HtmlService.createHtmlOutputFromFile('form');
}
// Hàm kiểm tra mật khẩu và gửi magic packet
function checkPass(password) {
if (password === BACKEND_PASSWORD) {
// Nếu mật khẩu đúng, gửi magic packet
Logger.log("Mật khẩu đúng");
console.log("Mật khẩu đúng rồi bạn ê");
sendMagicPacket();
return "success";
} else {
// Nếu mật khẩu sai, trả về lỗi
Logger.log("mật khẩu sai");
return "fail";
}
}
// Hàm gửi yêu cầu HTTP GET tới URL cung cấp
function sendMagicPacket() {
const url = "https://www.depicus.com/wake-on-lan/woli-ajax.php";
// Dữ liệu từ biểu mẫu
const data = {
macaddress: "XX-XX-XX-XX-XX-XX", //Đây là địa chỉ MAC của máy tính cần WOL
ip: "192.168.0.11", //Đây là địa chỉ IP của máy cần WOL, có thể dùng DDNS "mayban.ddns.net"
subnet: "255.255.255.255", //Subnet: giữ nguyên cái này nếu chỉ dùng 1 IP
port: "999" // Port: cổng để gửi magic packet tới máy cần WOL từ xa
};
// Tạo các tùy chọn cho yêu cầu POST
const options = {
method: "post",
payload: data,
muteHttpExceptions: true // Để không dừng nếu có lỗi xảy ra
};
// Gửi yêu cầu POST
const response = UrlFetchApp.fetch(url, options);
const responseText = response.getContentText();
console.log("Phản hồi từ máy chủ:", responseText);
}
2. Tạo file html cho appscript
3. Deploy ứng dụng Web app để sử dụng
Mở rộng ra và ấn vào dòng cuối cùng có chũ (unsafe) để hoàn tất sau đó nhấn vào Allow khi có cửa sổ mới bật lên.
Post a Comment