Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: webserver aan/uitschakelen op afstand  (gelezen 5164 keer)

webserver aan/uitschakelen op afstand
« Gepost op: 2009/08/18, 13:58:52 »
Binnenkort ga ik een webservertje met ruby on rails inrichten met ubuntu 9.04 server edition.
Daarvoor ga ik volgende howto volgen:

https://help.ubuntu.com/9.04/serverguide/C/ruby-on-rails.html

Dit ga ik doen op een oude pc.
Het is de bedoeling éénmaal alles geïnstalleerd, het scherm af te koppelen en het toetsenbord.

Het is (voorlopig) niet de bedoeling deze server 24u/24u 7d/7d te laten draaien.

Mijn vraag is, is zoiets mogelijk? Moet ik niet altijd opnieuw inloggen op de server zelf? Of kan ik automatisch na het opnieuw opstarten zoiets perfect op afstand? En hoe kan ik de server uitschakelen op afstand?

Alles gebeurt binnen mijn LAN-netwerkje.

Alvast bedankt!

 

Offline Marco`

  • Lid
Re: webserver aan/uitschakelen op afstand
« Reactie #1 Gepost op: 2009/08/18, 14:11:36 »
Op afstand beheren kan door middel van ssh. Dan moet je eerst de ssh-daemon installeren en configureren op de server, en zorgen dat deze bij het opstarten automatisch opgestart wordt. Vervolgens kan je dan vanaf een andere computer inloggen op je server door middel van 'ssh ipadres' in een terminal in te voeren.

Re: webserver aan/uitschakelen op afstand
« Reactie #2 Gepost op: 2009/08/18, 14:23:18 »
Op afstand uit zetten gewoon met een terminal opdracht al-dan-niet ingelogd via SSH, -> met Putty of met Webmin die je installeerd op de server.

Aan zetten word iets lastiger, dan zal je de aan knop op die server moeten indrukken, of een volledige WOL ondersteuning hebben op die server.
« Laatst bewerkt op: 2009/08/18, 14:26:10 door Gandyman »
I don't suffer from insanity, I enjoy every minute of it.
Microsoft geeft je een raam, Linux geeft je een heel huis :D

Re: webserver aan/uitschakelen op afstand
« Reactie #3 Gepost op: 2009/08/18, 14:56:44 »
Bedankt voor de snelle reactie.

Als ik de aanknop moet indrukken is niet het probleem, maar ik dacht, dat ik tijdens het booten opnieuw het scherm en toetsenbord moest aansluiten om te kunnen inloggen.

Waarschijnlijk zal ik ergens moeten instellen, wanneer de serverpc opnieuw opgestart wordt, deze automatisch dient in te loggen?

Offline Marco`

  • Lid
Re: webserver aan/uitschakelen op afstand
« Reactie #4 Gepost op: 2009/08/18, 15:06:59 »
Nee, dat is niet nodig. Zolang sshd draait kan je vanaf een andere computer inloggen. Services zoals de webserver worden ook gestart voor het inloggen.

Offline track

  • Lid
Re: webserver aan/uitschakelen op afstand
« Reactie #5 Gepost op: 2009/08/18, 15:08:32 »
Hoi Christophe,

de server op afstand af te zetten is makkelijk.  Je logt in via ssh in en voert een sudo poweroff uit
en klaar is kees.  (zie boven)

Als je de server ook op afstand wilt kunnen aanzetten zijn er in principe twee mogelijkheden.

Òf je hebt een netwerkkaart die geschikt is voor  WOL (Wake On LAN).  Zodra je een WOL-pakketje naar die kaart stuurt
start die de server op.  Maar dat moet je in het BIOS kunnen instellen, en uiteraard dan ook goed configureren.

Of je pakt een internet-schakelaar (zoiets:  http://www.netzwerk-lan.com/produkt/594/Netzwerksteckdose_ALL3075.html ).
Die wordt rechtstreeks vanuit het netwerk aangesproken en kan van alles aan en uitzetten.
(Een mooi artikel over dergelijke toestellen stond onlangs in de (Duitse) c't: http://www.heise.de/kiosk/archiv/ct/2009/16/124_kiosk )
Nadeel: kost ±100 €, voordeel: compatibel met alles, makkelijk te configureren.

Vriendelijke groet,

track

Re: webserver aan/uitschakelen op afstand
« Reactie #6 Gepost op: 2009/08/18, 16:07:59 »
Ok, bedankt voor de informatieve reacties.

Het aanzetten met de schakelaar vd server-pc, is geen enkel probleem.

Die WOL-functie hoeft voor mij zeker niet, het belangrijkste is of ik alles op afstand kon besturen, zodanig dat ik 'nooit' meer een toesenbord en scherm hoefde aan te sluiten.

Re: webserver aan/uitschakelen op afstand
« Reactie #7 Gepost op: 2009/08/19, 02:35:50 »
Bij het installeren van Ubuntu Server kun je aangeven welke onderdelen je wilt installeren. Selecteer bij deze stap de optie OpenSSH-Server. Op deze manier kun je vanaf een andere PC op de server inloggen.

Inloggen vanaf een andere PC doe je met het commando "ssh ip-adres-server". In mijn geval is dat:
ssh 192.168.0.3
Heb je op je server een ander account aangemaakt dan op je PC, die je ook aan te geven met welk account je wilt inloggen. Bijvoorbeeld:
ssh christophe@192.168.0.3
Er wordt gevraagd om één of andere key toe te voegen aan het bestand ~/.ssh/known_hosts. Dit doe je door "yes" in te typen. Nadat je het wachtwoord hebt ingetypt van het account op de server, kun je in een Terminalvenster aan de server werken alsof je er met een toetsenbord achter zou zitten.

Er zijn meerder commando's om de server nu uit te zetten. Bijvoorbeeld:
sudo halt
Het aanzetten is iets complexer. Ten eerste dient je netwerkkaart wakeonlan te ondersteunen. Als wakeonlan uitstaat dien je dit eerst in het BIOS aan te zetten. Nu dien je het ook in het besturingssysteem in te schakelen. Dit doe je met het programma ethtool, welke standaard niet geïnstalleerd is. Eerst zul je dit dus moeten installeren met:
sudo apt-get install ethtool
Als je maar één netwerkkaart in je server hebt zitten, zal je netwerkkaart "eth0" wakeonlan-functionaliteit gaan geven. Als je het niet zeker weet, voer je het commando "ifconfig" uit om te kijken via welke netwerkkaart een IP-adres verkregen is. Sowieso heb je later het MAC-adres nodig van de desbetreffende netwerkkaart, dus als je dat niet weet, zoek je dat ook meteen op in de uitvoer van "ifconfig".

Ik ga er even van uit dat je netwerkkaart "eth0" de wakeonlan-functionaliteit wilt geven. Voer dan het volgende commando uit:
sudo ethtool -s eth0 wol g
Zet nu de server uit. Ga naar de PC of laptop vanwaar je de server aan wilt zetten en installeer hierop het programma wakeonlan. Dit programma heb je nodig om een signaal naar de server te kunnen sturen om deze uit zijn slaap te halen. Installeer het via de package manager of met:
sudo apt-get install wakeonlan
Nu kun je een wakeonlan-signaal naar het MAC-adres van de server sturen. Dit gaat op de volgende manier:
wakeonlan 00:0f:38:5a:15:8e
Als alles goed is gegaan, zou de server nu moeten opstarten. Is deze test geslaagd, dan dien je ervoor te zorgen dat het commando "ethtool -s eth0 wol g" steeds bij het opstarten wordt uitgevoerd. De wakeonlan-functionaliteit moet namelijk iedere keer weer worden ingeschakeld. Als je de server nu namelijk uitzet, zonder het commando opnieuw uit te voeren, zal hij niet reageren op wakeonlan-signalen.

We gaan een startup-script maken. Dit kun je bijvoorbeeld doen met de texteditor nano. Voer op je server het volgende commando uit:
sudo nano /etc/init.d/wakeonlanconfig
Plaats in dit tekstbestand de volgende code:
#!/bin/bash
ethtool -s eth0 wol g
exit

Maak dit bestand uitvoerbaar met:
sudo chmod a+x /etc/init.d/wakeonlanconfig
Zorg ervoor dat het script tijdens het opstarten wordt uitgevoerd. Dit doe je met het commando:
sudo update-rc.d -f wakeonlanconfig defaults
Test of het script werkt door het een keer uit te voeren:
sudo /etc/init.d/wakeonlanconfig
Zie je geen foutmeldingen, dan is alles goed gegaan en kun je de server nu dus altijd opstarten met het wakeonlan-commando. Wel dien je nog even te controleren of de PC waarop je Ubuntu Server hebt geïnstalleerd kan opstarten zonder toetsenbord en muis. Soms staat in een BIOS namelijk iets ingesteld zoals "Halt on all errors" welke je dient te veranderen in "Halt on all errors, but keyboard and mouse" of iets dergelijks. Dit verschilt per merk en type BIOS. Als je alles loskoppelt en de PC begint vervolgens te piepen na het opstarten, zul je dus even in het BIOS moeten zoeken of je ergens zo'n optie ziet staan.

Hierna kun je hem gewoon ergens neer zetten of leggen met slechts de netwerkkabel en de voedingskabel aangesloten. Opstarten met wakeonlan en voor de rest hoef je niets te doen, ook niet in te loggen. De benodigde services draaien namelijk zonder dat je ingelogd hoeft te zijn. Alleen aanzetten en voor de rest hoef je dus niets te doen.

Wil je iets op de server doen, dan log je in via SSH. Als je dan klaar bent, maar je wilt de server niet uitzetten, log je uit met het commando "exit", waarna je weer terug beland op de Terminal van de PC of laptop waar je op dat moment achter zit.

Wil je de server uitzetten, log je weer in met SSH en geef je het commando "sudo halt". De verbinding wordt nu vanzelf verbroken, waarna je weer terug komt op de Terminal van de PC of laptop waar je op dat moment achter zit.

Re: webserver aan/uitschakelen op afstand
« Reactie #8 Gepost op: 2009/08/19, 13:11:57 »
Beste Linux-user,

Dit is een uitstekende handleiding.

Zeer goed leesbaar.

Zal dit zeker uittesten

Hartelijk dank.