WakeDeck

Hướng dẫn thiết lập

Hướng dẫn thiết lập máy tính. Để bật máy cần các cài đặt ở phần 1. Tắt máy từ xa qua SSH (phần 2) là tùy chọn.

1. Wake-on-LAN (cài đặt máy tính)

Gói ma thuật đánh thức máy tính đang tắt hoặc ngủ, nhưng chỉ khi card mạng vẫn có điện và đang lắng nghe. Hãy dùng cáp mạng: Wi-Fi hiếm khi đánh thức được máy.

Linux

Trong BIOS/UEFI, bật Wake on LAN (tên có thể khác: Wake on LAN, Power On By PCI-E, Resume by PCI-E). Nếu có tùy chọn ErP, EuP hoặc ngủ sâu, hãy tắt nó vì nó cắt điện của card mạng.

Tìm tên giao diện mạng (ví dụ enp8s0):

ip -br link

Kiểm tra cài đặt Wake-on. Nó phải hiển thị g:

sudo ethtool <iface> | grep Wake-on

Bật nó (sẽ đặt lại khi khởi động lại):

sudo ethtool -s <iface> wol g

Để giữ lại sau khi khởi động lại bằng NetworkManager (thay tên kết nối, xem nmcli connection show):

sudo nmcli connection modify "<connection>" 802-3-ethernet.wake-on-lan magic

Windows

Trong BIOS/UEFI, bật Wake on LAN (tên có thể khác: Wake on LAN, Power On By PCI-E, Resume by PCI-E). Nếu có tùy chọn ErP, EuP hoặc ngủ sâu, hãy tắt nó vì nó cắt điện của card mạng.

Mở Device Manager, nhấp đúp vào bộ điều hợp mạng, thẻ Power Management: chọn “Allow this device to wake the computer” và “Only allow a magic packet to wake the computer”.

Trong cùng cửa sổ, thẻ Advanced: đặt “Wake on Magic Packet” thành Enabled (nếu có trong danh sách).

Tắt Fast Startup: Control Panel → Power Options → Choose what the power buttons do → Change settings that are currently unavailable → bỏ chọn “Turn on fast startup”. Khi Fast Startup bật, máy đã tắt thường bỏ qua gói ma thuật.

macOS

Mở System Settings → Battery (MacBook) hoặc Energy (Mac để bàn) → Options, rồi bật “Wake for network access”. Đánh thức hoạt động tốt nhất qua Ethernet: trên MacBook hãy dùng bộ chuyển Ethernet USB-C hoặc Thunderbolt và luôn cắm điện. Mac đang ngủ trên Wi-Fi thường bỏ qua gói ma thuật.

Khi dùng Wi-Fi, cũng hãy tắt “Private Wi-Fi address” cho mạng của bạn (System Settings → Wi-Fi → Details), nếu không Mac sẽ có địa chỉ MAC khác. Trong danh sách bên dưới, “Ethernet Address” là địa chỉ MAC của từng cổng.

Trong WakeDeck, thêm thiết bị với địa chỉ MAC của máy tính. Bạn có thể tìm thấy nó ở đây:

Linux

ip -br link

Windows

ipconfig /all

macOS

networksetup -listallhardwareports

Địa chỉ broadcast: địa chỉ cuối cùng của mạng, ví dụ 192.168.1.255 cho 192.168.1.x (giá trị mặc định 255.255.255.255 cũng hoạt động trên cùng mạng). Cổng: 9.

2. Tắt máy từ xa qua SSH (tùy chọn)

Thay PASTE_KEY_LINE_FROM_APP bằng dòng khóa hiển thị trong màn hình Khóa SSH của WakeDeck.

Ứng dụng đăng nhập bằng khóa riêng của nó, không bao giờ dùng mật khẩu. Máy tính cần một máy chủ SSH và phải thêm khóa công khai của ứng dụng vào đó. Các lệnh bên dưới đã chứa sẵn khóa của bạn.

Linux

Cài đặt và khởi động máy chủ SSH (ví dụ cho Debian/Ubuntu):

sudo apt install openssh-server && sudo systemctl enable --now ssh

Trên Fedora, Arch hoặc SteamOS, dịch vụ có tên là sshd:

sudo systemctl enable --now sshd

Thêm khóa của ứng dụng vào người dùng của bạn. Dòng này giới hạn khóa chỉ được dùng cho lệnh tắt máy:

mkdir -p ~/.ssh && chmod 700 ~/.ssh && echo 'PASTE_KEY_LINE_FROM_APP' >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys

Cho phép tắt máy không cần mật khẩu. Chạy lệnh này rồi thêm dòng bên dưới (thay youruser và kiểm tra đường dẫn bằng: which shutdown):

sudo visudo -f /etc/sudoers.d/wakedeck
youruser ALL=(ALL) NOPASSWD: /usr/bin/shutdown

Windows

Trong PowerShell chạy bằng quyền Administrator, cài đặt và khởi động OpenSSH Server:

Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0; Start-Service sshd; Set-Service -Name sshd -StartupType Automatic

Tài khoản quản trị viên: thêm khóa và siết quyền của tệp (nếu không SSH sẽ bỏ qua tệp):

Add-Content -Force -Path "$env:ProgramData\ssh\administrators_authorized_keys" -Value 'PASTE_KEY_LINE_FROM_APP'
icacls.exe "$env:ProgramData\ssh\administrators_authorized_keys" /inheritance:r /grant "Administrators:F" /grant "SYSTEM:F"

Với tài khoản thường, hãy đặt dòng khóa vào C:\Users\TÊN\.ssh\authorized_keys.

Nếu vẫn bị từ chối: kiểm tra tường lửa có cho phép cổng TCP 22 không (tính năng OpenSSH thường tự thêm quy tắc), và tài khoản không phải là tài khoản Microsoft Entra ID, loại tài khoản không dùng được khóa.

macOS

Bật máy chủ SSH: System Settings → General → Sharing → Remote Login, và cho phép người dùng của bạn.

Thêm khóa của ứng dụng vào người dùng của bạn. Dòng này giới hạn khóa chỉ được dùng cho lệnh tắt máy:

mkdir -p ~/.ssh && chmod 700 ~/.ssh && echo 'PASTE_KEY_LINE_FROM_APP' >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys

Cho phép tắt máy không cần mật khẩu. Chạy lệnh này rồi thêm dòng bên dưới (thay youruser):

sudo visudo -f /etc/sudoers.d/wakedeck
youruser ALL=(ALL) NOPASSWD: /sbin/shutdown

Trong màn hình sửa thiết bị, nhập máy chủ (IP hoặc tên), người dùng SSH (tên tài khoản trên máy tính của bạn) và cổng (22). Nhấn Tắt ngay. Lần đầu, hãy kiểm tra vân tay hiển thị có khớp với vân tay của máy tính không, rồi nhấn Tin cậy. Vân tay của máy tính:

Linux

ssh-keygen -lf /etc/ssh/ssh_host_ecdsa_key.pub

Windows

ssh-keygen -lf $env:ProgramData\ssh\ssh_host_ecdsa_key.pub

macOS

ssh-keygen -lf /etc/ssh/ssh_host_ecdsa_key.pub

“Máy tính từ chối khóa SSH”: sai khóa hoặc tên người dùng. “Không kết nối được”: máy tính đang tắt, hoặc máy chủ, cổng hay tường lửa không đúng. “Máy tính phản hồi bằng một lỗi”: trên Linux hoặc macOS thường là do quy tắc sudoers. “Khóa SSH của máy tính đã thay đổi”: máy tính đã được cài lại hoặc khóa SSH được tạo lại; chỉ tin cậy khóa mới nếu bạn đã lường trước điều đó.

3. Khi ở xa nhà (VPN)

Từ bên ngoài mạng gia đình, trước hết bạn cần một cách để vào mạng, ví dụ VPN WireGuard hoặc Tailscale. Gói ma thuật là gói broadcast, và nhiều VPN không chuyển tiếp broadcast. Hãy nhập địa chỉ broadcast của mạng bạn (ví dụ 192.168.1.255) vào thiết bị. Nếu bật từ xa vẫn không được, giải pháp thông thường là một thiết bị nhỏ luôn bật ở nhà gửi gói thay bạn (bộ định tuyến hỗ trợ Wake-on-LAN, hoặc Raspberry Pi). Tắt máy từ xa qua SSH hoạt động qua VPN miễn là truy cập được địa chỉ của máy tính.

Sự cố khi ở xa: “không có kết nối mạng hoặc VPN” nghĩa là điện thoại không có đường tới địa chỉ đó, hãy kết nối VPN trước. “Không tìm thấy địa chỉ broadcast” nghĩa là không phân giải được tên hoặc địa chỉ trong thiết bị. VPN cũng có thể nhận gói nhưng không bao giờ chuyển đi: ứng dụng không thể biết điều này vì gói ma thuật không có phản hồi. Hãy kiểm tra máy tính có bật lên không, và xem trạng thái của nó trong danh sách.