Vous avez besoin d’allumer votre PC fixe à distance via Wake-on-LAN (WoL), mais vous ne voulez pas exposer de port SSH sur Internet ni utiliser une application tierce compliquée ou gourmande en ressources ?
Aujourd’hui, on va voir comment mettre en place une méthode ultra simple et sécurisée : allumer votre PC en créant un simple fichier texte REVEIL.txt dans un dossier partagé de votre NAS.
Que ce soit depuis votre smartphone (via SMB ou WireGuard) ou depuis n’importe quel appareil connecté à votre réseau local, il vous suffira de déposer ce fichier pour que votre tour s’allume dans la minute !
🛠️ Le principe
- Un script tourne en tâche de fond sur le NAS (via
cron) toutes les minutes. - Il vérifie si le fichier déclencheur
REVEIL.txtexiste dans un dossier partagé. - S’il est présent :
- Le NAS génère et envoie le Magic Packet (paquet magique UDP/WoL) sur l’adresse de broadcast de votre réseau local.
- Il supprime immédiatement le fichier
REVEIL.txtpour éviter les démarrages en boucle.
Cette technique de ‘fichier déclencheur’ est un truc de vieux de routard, qui peut être adapté à de nombreuses situations pour automatiser certaines taches à la demande. Gardez la dans un coin, elle vous resservira.
1. La pré-requis indispensable : Côté PC (BIOS & Windows)
Pour que la carte réseau de votre PC écoute le réseau même quand la machine est éteinte, il faut valider deux ou trois réglages essentiels :
Côté BIOS (Exemple sur carte mère AMD / Gigabyte AORUS)
- Power On By PCI-E Device (ou Wake-on-LAN) : à régler sur Enabled.
- ErP / EuP : à régler impérativement sur Disabled. (Si ErP est activé, la carte mère coupe le 5V Standby et la carte réseau s’éteint complètement).
Côté Windows
- Désactiver le Démarrage Rapide (Fast Startup) : Dans les Options d’alimentation, décochez la case « Activer le démarrage rapide ». Quand le démarrage rapide est actif, Windows plonge la carte réseau dans un sommeil profond incompatible avec le WoL.
- Propriétés de la carte réseau (dans le Gestionnaire de périphériques) :
- Activez l’option Activer au moyen d’un paquet magique (Wake on Magic Packet).
- Cochez « Autoriser ce périphérique à sortir l’ordinateur de veille » et « Autoriser uniquement un paquet magique… ».
2. Le script sur le NAS (ReadyNAS OS 6 / Debian)
Sur les anciens NAS (comme le ReadyNAS RN104), les utilitaires réseau classiques (python, nc/netcat, etherwake) ne sont pas toujours installés par défaut ou peuvent poser des problèmes de dépendances obsolètes. Et la machine ne dispose que 512Mo de RAM, il faut économiser les ressources.
Heureusement, Perl est installé nativement sur 100 % des systèmes ReadyNAS OS (car l’interface Web l’utilise). C’est lui qu’on utilise pour construire et envoyer la trame binaire du paquet magique sans aucune dépendance externe !
Création du script
Connectez-vous en SSH à votre NAS et créez un fichier de script (par exemple dans /data/scripts/wol_trigger.sh) :
nano /data/scripts/wol_trigger.shCollez-y le code suivant en adaptant :
- Le chemin du fichier déclencheur (
TRIGGER_FILEici REVEIL.txt) - L’adresse MAC de la carte réseau de votre PC (
au format bloc sans : ou - par exemple 17C07D7581E56) - L’adresse de broadcast de votre réseau local (
généralement 192.168.1.255 sur les box de particuliers)
#!/bin/sh
# Chemin du fichier déclencheur dans votre partage NAS
TRIGGER_FILE="/data/Documents/REVEIL.txt"
# Vérification de la présence du fichier
if [ -f "$TRIGGER_FILE" ]; then
# Envoi du paquet magique via Perl (nativement présent sur ReadyNAS OS)
perl -e '
use Socket;
socket(S, PF_INET, SOCK_DGRAM, getprotobyname("udp"));
setsockopt(S, SOL_SOCKET, SO_BROADCAST, 1);
my $mac = pack("H*", "17C07D7581E56");
my $packet = "\xff" x 6 . $mac x 16;
send(S, $packet, 0, sockaddr_in(9, inet_aton("192.x.x.255")));
' >/dev/null 2>&1
# Suppression du fichier déclencheur pour éviter les réveils en boucle
rm -f "$TRIGGER_FILE"
fiRendez le script exécutable :
chmod +x /data/scripts/wol_trigger.sh3. Automatisation avec Cron
Pour que le NAS vérifie automatiquement la présence du fichier toutes les minutes, ouvrez la table crontab du compte root :
crontab -eAjoutez cette ligne tout en bas :
* * * * * /data/scripts/wol_trigger.sh >/dev/null 2>&1Sauvegardez et quittez. (ctrl+O, entrer, crtl+X)
💡 Pourquoi cette méthode est top ?
- Sécurité maximale : Inutile de laisser un port SSH ou une interface d’administration ouverte vers l’extérieur. Si vous avez un accès à vos fichiers NAS (via VPN WireGuard, Nextcloud ou partage SMB local), vous avez votre déclencheur.
- Aucune dépendance : Le script n’utilise ni Python, ni Netcat, ni
etherwake. Il tourne à 100 % sur les outils natifs de ReadyNAS OS. - Usage ultra-simple : Un petit raccourci pour créer un fichier texte depuis votre téléphone, et votre tour démarre à distance !
Bonne bidouille à tous !


Laisser un commentaire