Tag Archives: hosting

Linux Palvelimena kotitehtävä #5 | Apache name based virtual hosting & VPS

Moi!

Tällä kertaa Linux Palvelimena kurssin viidennen kotitehtävän tehtävänanto on seuraavanlainen

h5. Tee nimipohjainen virtuaalipalvelin Apachelle (name based virtual hosting). Muista laittaa sekä http://www.example.com että example.com. Voit simuloida asiakkaan nimipalvelua muuttamalla /etc/hosts -tiedostoa.
Kokeile virtuaalipalvelinta (VPS). Voit vuokrata palvelimen esimerkiksi Linodelta, Amazonilta, DigitalOceanilta tai monista muista paikoista. Linodella ja Amazonilla saattaa olla myös ilmainen kokeilupaketti. Vaihtoehto: jos et jostain syystä halua vuokrata virtuaalipalvelinta, voit kokeilla tehdä oman vagrantilla.
http://www.linode.com/?r=16774ec53118157d3f5d6e9be9147875cdb167bb(associate-linkki, ilman: http://www.linode.com)
http://aws.amazon.com/vpc/
https://www.digitalocean.com/
h5. Vapaaehtoisia bonuksia
– Rekisteröi koneellesi nimi. Voit kokeilla jotain ilmaista palvelua, esim. http://www.dot.tk (en ole testannut tätä, kokeile jollain vähäarvoisella esimerkkinimellä).

Keskitytään aluksi tuohon nimipohjaisen virtuaalipalvelimen tekemiseen Apachelle.

Kuten viime kerroilla, myöskin tällä kertaa Xubuntun versio 13.10 pyörii VirtualBoxissa huikealla 2048 megatavun keskusmuistilla.

Aloitetaan tehtävän tekeminen päivittämällä pakettivaraston tarjonta taas uusimpaan kommennolla

$ sudo apt-get update

Asennetaan Apache ja sallitaan käyttäjien kotihakemistot.

$ sudo apt-get install apache2 -y

Tarkastetaan toimiiko pelkkä Apache menemällä selaimella http://localhost. It works! Elikkäs toimii.

$ sudo a2enmod userdir
Enabling module userdir.
To activate the new configuration, you need to run:
service apache2 restart
$ sudo service apache2 restart
* Restarting web server apache2

Katsotaan toimiiko käyttäjän kotihakemisto. Selaimeen joko koneen ip-osoite/~user tai sitten localhost/~user

$ firefox localhost/~esa

Saadaan selaimeen teksti virheilmoitus

Forbidden
You don’t have permission to access /~esa on this server.

Tietenkään kotihakemistot eivät toimi koska sellaisia ei ole luotu. Luodaan kansioon myös esimerkki html5-sivusto (http://terokarvinen.com/2012/short-html5-page)

$ cd
$ mkdir public_html
$ nano public_html/index.html

Kun on sisältöä html-tiedostossa

$ firefox localhost/~esa

apache_userdir_works

Hosts-tiedoston muokkaaminen.
Laitetaan tiedostoon /etc/hosts kaksi osoitetta, jotka viittaavat tähän tietokoneeseen.

$ sudoedit /etc/hosts

10.0.2.* eskola.local
10.0.2.* http://www.eskola.local

Kokeillaan selaimella kirjoittaa eskola.local ja tekstiksi tulee “It Works!”.

Luodaan eskola.local hakemisto public_html kansion alle.

$ mkdir public_html/eskola.local

Luodaan esimerkki html-sivu.

$ nano index.html

Tehdään ei-ehkä validoinnin selviävä tiedosto pikaisesti.

<!doctype html>

Is this working correctly?

 

Luodaan eskola.local.conf niminen tiedosto /etc/apache2/sites-available/ hakemistoon.

$ cd /etc/apache2/sites-available
$ sudo nano eskola.local.conf

Laitetaan sisällöksi

ServerName http://www.eskola.local
ServerAlias eskola.local
DocumentRoot /home/esa/public_html/eskola.local

Otetaan käyttöön sivu

$ sudo a2ensite eskola.local.conf
Enabling site eskola.local.
To activate the new configuration, you need to run:
service apache2 reload
$ sudo service apache2 reload
* Reloading web server apache2 *

$ firefox eskola.local

apache_virtual

Saadaan siis juuri luodun html sivuston sisältö ruutuun, eikä lävähdä apachen oletusilmoitus “It works”.

Tehtävässä oli hieman vaikeuksia etsiä tietoa mitä kaikkia tiedostoja pitäisi muokata ja luoda.
Onneksi kuitenkin suuntaa antavia neuvoja sai nohevilta HH-opiskelijoilta jotka tätä kurssia myös käyvät!

VPS:n hankkiminen

Opiskelijabudjetin takia en “raaskinut” (halunnut) hommata Linodelta Virtuaalipalvelinta, mutta tunnilla huhupuheen mukaan alle viidellä dollarilla, eli alle neljällä eurolla saisi kuukaudeksi käyttöön Digitaloceanista palvelimen.

Loin siis tunnukset DigitalOceaniin ja uhrasin 3,8€ jotta saan kuukauden leikkiä Virtuaalipalvelimella root-oikeuksien kera.

Sähköpostiin tuli palvelimen julkinen ip sekä rootin salasana.
Otin SSH-yhteyden palvelimeen ja vaihdoin rootin salasanan sekä loin käyttäjätunnuksen jotta ei tarvitse aina rootin oikeuksilla tehdä asioita.

Asensin palvelimelleni apachen ja sallin käyttäjähakemistot. Pitää vielä lähitulevaisuudessa kokeilla asentaa wordpress paikallisesti palvelimelle ja katsoa miten se toimii.

Rekisteröityminen DigitalOceaniin, palvelimen maksaminen ja pystyyn saaminen kesti vain muutaman minuutin. Plussaa oli myös se, että maksaminen onnistui PayPalin avulla.

Lähteet:

http://askubuntu.com/questions/265300/how-do-i-setup-name-based-virtual-hosts-using-ubuntu-12-04
http://kimstenberg.wordpress.com/
http://stackoverflow.com/questions/19518907/virtual-host-on-ubuntu-13-10-and-apache-2-4-6
http://terokarvinen.com/2012/short-html5-page
https://httpd.apache.org/docs/2.2/vhosts/name-based.html
https://www.digitalocean.com/