Eedomus: allumer et éteindre son serveur à distance
Pour
Contre
La dernière mise à jour eedomus a apporté une nouveauté très intéressante: la « toolbox », qui permet de faire un ping vers un périphérique, pratique pour savoir s’il est connecté, mais également de faire du Wake On Lan, c’est à dire de réveiller une machine sur le réseau. L’utilisation est très simple, mais je vous propose [...]
La dernière mise à jour eedomus a apporté une nouveauté très intéressante: la « toolbox », qui permet de faire un ping vers un périphérique, pratique pour savoir s’il est connecté, mais également de faire du Wake On Lan, c’est à dire de réveiller une machine sur le réseau.
L’utilisation est très simple, mais je vous propose d’aller un peu plus loin: réveiller son pc, c’est bien, mais je voulais également pouvoir l’éteindre. Je vous explique cela dans la suite ;-)
I. Pré requis
La box eedomus dispose de ce qu’il faut pour faire du Wake On Lan et donc réveiller un ordinateur branché sur le réseau. En revanche, pour éteindre un ordinateur, c’est plus complexe.
Je prend le cas ici d’un ordinateur fonctionnant sous Windows (en l’occurrence mon serveur HP avec Windows Home Server 2011, présenté ici). Plusieurs solutions sont envisageables de prime abord:
- la commande shutdown, suivie de l’adresse IP de la machine à éteindre. Mais pour cela il faut un ordinateur sous Windows pour éteindre l’ordinateur qu’on souhaite. Ca limite l’intérêt
- installer un logiciel de prise de controle distant, comme VNC, ou, mieux, LogMeIn. De n’importe où, on peut se connecter à notre ordinateur et l’éteindre manuellement. Très pratique, mais ca nécessite une intervention manuelle.
J’ai fini par trouver une solution simple à mettre en place, et qui permet à l’eedomus d’éteindre proprement mon serveur à l’aide d’une simple requête HTTP.
Pour commencer, histoire que ca fonctionne tout le temps, il faut affecter une adresse IP fixe à votre ordinateur. Pour cela, je vous conseille de relever l’adresse MAC de votre carte réseau, et de faire une réservation d’adresse sur votre box ADSL. Exemple sur ma Freebox:
Sans cela, votre ordinateur risque de changer d’adresse IP sans vous prévenir, et plus rien ne fonctionnera :/
Une fois cela fait, il faudra installer un serveur web sur l’ordinateur en question. Ca peut paraitre compliqué, mais en installant un package tout fait comme WAMP, par exemple, c’est très simple: on lance l’installation, et on met le raccourci créé dans le menu démarrage de Windows afin qu’il se lance automatiquement au démarrage de l’ordinateur. Quand tout est ok, vous devez avoir une petite icone « W » en vert dans la barre des taches:
Si votre parefeu Windows vous demande une autorisation, donnez lui !
Si vous tapez l’adresse IP de votre ordinateur depuis un autre poste http://IP_DU_SERVEUR, vous devriez tomber sur cette page:
Si c’est le cas, votre serveur web fonctionne et est joignable depuis un autre poste. Bravo, vous avez fait le plus dur !
Maintenant, cliquez sur l’icone de Wamp dans la barre des taches, puis sur « www directory », pour se rendre dans le répertoire qui doit héberger les scripts php:
créez à cet endroit un nouveau fichier texte avec le Bloc Note Windows, et copiez y le contenu:
<?php
$commande = « Shutdown -s -t 5 -c \ »Shutdown computer\ »";
exec($commande, $output);
?>
puis enregistrez votre fichier sous le nom shutdown.php par exemple. Maintenant, si vous appelez l’adresse http://IP_DU_SERVEUR/shutdown.php, votre ordinateur devrait s’éteindre.
Il n’y a plus qu’à configurer l’eedomus.
II. Configuration sur la box eedomus
Commencez par créer un actionneur HTTP:
Puis rendez vous sur l’onglet Valeurs:
Ici, créez deux lignes:
- la première, pour allumer le serveur, aura l’URL http://localhost/tools/ . On utilise ici la toolbox de l’eedomus. Il suffit ensuite de renseigner l’adresse MAC du serveur à réveiller, sous la forme ?action=wol&mac=01:23:45:67:89:10
- la seconde, toute simple sera l’URL http://IP_DU_SERVEUR/shutdown.php . Aucun paramètre n’est à compléter.
Votre box eedomus est maintenant capable d’allumer ou éteindre votre ordinateur. Cet actionneur peut bien évidement être utilisé dans des scénarios. J’ai par exemple un scénario « On part de la maison » qu’on déclenche… quand on part de la maison, et qui a pour but d’éteindre toutes les lampes, les appareils, puis d’activer l’alarme. Maintenant il se charge également d’éteindre proprement mon serveur:
A l’inverse, quand on rentre et qu’on désactive l’alarme, la box me rallume automatiquement mon serveur.
Mon serveur me sert essentiellement à la diffusion de vidéos et de musique dans toute la maison. Donc quand je suis absent, il n’est pas très utile qu’il reste allumé et qu’il consomme de l’électricité. Avec ce petit système très simple, je n’ai pas à y penser. Il est automatiquement éteint quand je pars, et il est dispo quand je suis à la maison et que je veux écouter de la musique ou regarder un film. Même s’il n’est pas très gourmand, environ 75w, à disons 10h d’extinction par jour, cela nous fait toujours 200Kw d’économisés sur l’année :p Je pense même pousser le principe avec une extinction la nuit et un rallumage automatiquement le matin, ou un rallumage à la demande via un Nanoztag sur le Mirror ou le Karotz… Les idées ne manquent pas !



































bonjour,
Il me semble qu’une fonction similaire existe dans les plugins de la VERA…
Bonjour,
Le fait que cela fonctionne (ou ne fonctionne pas) est surtout lié à la possibilité ou non de lancer des commandes via la fonction exec() de PHP. Et par défaut, cette fonction est désactivée pour des raisons de sécurité (mais il semblerait que cela ne soit pas le cas pour Windows)… Il faut désactiver le safe-mode pour pouvoir l’exploiter.
Après, rien n’est impossible si on n’a pas accès au safe-mode. On peut faire cela à travers l’écriture de fichiers texte : le serveur web écrit une ligne dans un fichier texte, une cron vient lire le contenu du fichier toutes les minutes et exécute chaque commande…
Hello,
Question Quizz : Tu dis que tu fais du wake on lan pour ton hp sous windows home server, comment fais-tu pour passer le login d’ouverture de session pour qu’il démarre « jusqu’au bout » tout seul ?
Merci
Dans le menu démarrer, tu tapes « netplwiz », puis tu décoches « les utilisateurs doivent saisir un mot de passe… » et quand on te le demande, tu entres le nom et le mot de passe de l’utilisateur qui doit se connecter automatiquement. C’est l’équivalent de la commande « control userpassword2″ qu’on utilisait avant.
Bien vu, merci
Ton article m’a donné envie de tester le wake on lan aussi avec mon Proliant N40L et ma Zibase ! Ca fonctionne bien !
NB : j’ai du cocher la case « Autoriser ce périphérique à sortir l’ordinateur du mode veille » dans les propriétés de la carte réseau du serveur.
Bonjour, Pratique l’idée de base de faire du Wake-up on
lan, par contre votre article propose beaucoup de solution pour
mettre en péril la sécurité de votre Windows (et donc de vos
données personnel) – Pourquoi mettre un WAMP? (avec un mysql non
configuré j’imagine, donc compte Root sans mot de passe) vous allez
héberger un serveur web que vous ne sécuriser pas, ni mettre à
jour? Utiliser IIS, qui serait maintenu par Microsoft (Windows
Update) et complément géré par le firewall de Windows. (il existe
un installeur gratuit pour vous aider à installer votre serveur Web
: http://www.microsoft.com/web/downloads/platform.aspx ) – Auto
logon : très pratique pour un intrus de se connecter à votre
serveur et ainsi arrêter vos alarmes, surveiller vos habitudes,
voler vos données, vos identités… C’est un peu comme si vous
laissiez vos clef sur votre porte d’entrée en vous disant : il n’y
a pas de risque que quelqu’un rentre chez moi, personne ne passe
par là… un peu risque comme méthode. Si une application doit être
exécute avec une session d’ouverte, arrangez vous pour la faire
fonctionner en tant que service plutôt et non en tant que session
interactive. C’est bien de tout automatiser et de mettre des accès
Web partout, cela nous rend la vie bien plus agréable, mais
n’oublié pas que sur le réseau internet, des millions de BOT traque
tout site possédant des failles pour s’y introduire (vole/revende
d’information, utilisation de vos équipes à votre insu). Sinon,
merci pour tous vos tests et bonne continuation (soyez juste plus
vigilant sur la sécurité informatique) Arnaud
Bonjour,
J’étais parti pour installer WAMP mais c’est vrai que je rejoints l’avis d’Arnaud.
Du coup j’ai trouvé (un ami m’a indiqué) le petit utilitaire : SwitchOff.
Ce dernier permet de redémarrer, éteindre, déconnecter etc.
Il possède également un mode « télécommande » sur un port choisi par l’utilisateur.
Ensuite il suffit de faire une requête du type :
http://IP:PORT/action.htm?action=shutdown
Voila, si ceci peut aider, je pense que cet utilitaire suffit sans ouvrir une faille de sécurité.
Merci pour l’info ! C’est en effet encore plus simple et plus « secure » :D
Pour éviter de chercher, il se trouve là: http://www.airytec.com/en/switch-off/
Effectivement, merci pour le lien. On y trouve la dernière version (3.4.1) alors que moi j’utilise la 2.3
Dans la dernière version l’URL à appeler est un peu différente :
http://IP:PORT/?action=System.Shutdown.
Personnelement avec la dernière version je n’arrive pas à ce que le soft se lance au démarrage de windows (à part le mettre dans le dossier « Démarrage ») et de plus il ne m’affiche pas le compte à rebourd lors de l’appelle d’URLs.
J’utilise donc encore la 2.3, trouvable sur Clubic (http://IP:PORT/action.htm?action=shutdown) par exemple