TEHTÄVÄNANTO Haaga-helian ammattikorkeakoulun "Linux palvelimena"-kurssilta:
http://terokarvinen.com/2013/aikataulu-%E2%80%93-linux-palvelimena-ict4tn003-11-ja-12-kevaalla-2014
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.
AMAZON VPS
Menin amazonin pilvipalvelusivustolle osoitteessa: aws.amazon.com
Sivustolta selviää, että Amazon tarjoaa ilmaista "AWS Free Tier" VPS-palvelua, joka sisältää 750 tuntia Linux ja Windows Micro Instansseja per kuukausi yhden vuoden ajan. Ilmaisena käyttäjänä on mahdollisuus käyttää vain Micro-Instansseja.
"Popular uses for micro instances include low traffic websites or blogs, small
administrative applications, bastion hosts, and free trials to explore EC2
functionality."
Luotuani ilmaisen amazon-tilin menin luomaan ensimmäistä instanssiani valitsemalla "Launch Instance".
Tämän jälkeen minun täytyi valita minkä serverikäyttöjärjestelmän asennan virtuaalipalvelimelleni Amazonin AMI-valikoimasta (AMI = Amazon Machine Image). Vaihtoehtoina oli mm. Red Hat Enterprise Linux 6.4 (PV), SuSE Linux Enterprise Server 11 sp3 32- ja 64-bittisinä versioina sekä eri windows-server-versioita.
Valitsin käyttikseksi "Ubuntu server 12.04 LTS"-imagen, koska se oli entuudestaan tuttu. Speksit annoin pysytellä kaikista pienimmällä tasolla:
Currently selected: t1.micro (up to 2 ECUs, 1 vCPUs, 0.613 GiB memory, EBS only) 8GB HD
Tämän jälkeen oli vuorossa instanssin yksityiskohtien konfigurointia.
Seuraava kohta oli: "Configure Security Group", jossa konfiguroitiin virtuaaliserverin sisäänmeneviä ja ulosmenevää liikennettä.
"A security group is a set of firewall rules that control the traffic for your instance.-Valitsin näin alkuun "default security group"-oletuskonfiguraation.
On this page, you can add rules to allow specific traffic to reach your instance. For
example, if you want to set up a web server and allow Internet traffic to reach your
instance, add rules that allow unrestricted access to the HTTP and HTTPS ports. You can create a new security group or select from an existing one below. Learn more about
Amazon EC2 security groups."
-Tämän jälkeen minulla oli vaihtoehtona joko käyttää "olemassaolevaa avainparia tai luoda uusi" serverille etäyhteyden ottamisen autentikointia varten. Valitsin uuden avainparin luomisen (Select and existing key pair or create a new key), jonka nimesin "h5" >>> Latasin avaimen tietokoneelleni (Download Key Pair).
"You have to download the private key file (pem file) before you can continue.
Store it in a secure and accessible location. you will not be able to download the file
again after its created."
-Tämän jälkeen valitsin "Launch" ja instanssi oli luotu.
-Tämän jälkeen ilmoitettiin siitä, että halutessani voin luoda/pyytää Amazonilta sähköpostimuistutuksen, jos virtuaaliserverini käyttö ylittää ilmaisen käyttöoikeuden rajat. Siinähän tapauksessa, jos virtuaalipalvelimen resurssien käyttöni ylittäisi "Free Tier"-käyttäjän rajat ylimenevästä osasta minulta veloitettaisiin normaalituntihintojen mukaisesti.
Listattuna olivat linkit:
- siitä kuinka etäyhteyden luominen virtuaaliserveriin onnistuu.
- Virtuaalipalvelimien käyttöoppaaseen
- Amazonin virtuaalipalvelimien keskustelufoorumille
-Muutaman minuutin jälkeen klikkasin "View Instances" josta näin, että instanssin tila oli "running".
Valitsin "Connect To Your Instance", josta avautuivat vaihtoehtoisia ohjeita etäyhteyden ottamiseen windows-koneelta putty-ohjelman kautta tai linux/mac-koneen komentotulkin kautta suoraan.
Security Group
-Tässä vaiheessa kävin ohjeiden mukaisesti muokkaamassa aikaisemmin luotua "Security Group"-konfiguraatiota niin, että :
1. Sallin sisääntulevan SSH-yhteyden ottamisen (Security Group > Inbound > Create a new rule > Add new rule > SSH )-Seuraavaksi otin ssh-etäyhteyden serveriini amazonin ohjeiden mukaisesti. Otin yhteyttä Ubuntu-käyttöjärjestelmän default-käyttäjänä "ubuntu". Lisäämällä -i osoittaa se missä salainen avainpari sijaitsee client-koneellani.
2. Sallin HTTP-yhteyden ottamisen ip-osoitteestani (testatakseni onnistuuko mm. apache2-webbiserverin asennus.)
$ ssh -i /avaimen/sijainti/koneellani/keypair.pem ubuntu@instanssin-ip-osoite
Päivitin paketinhallinnan ja asensin apache-webbiserverin.
$ sudo apt-get update
$ sudo apt-get install apache2
Webbiserveri oli asentunut oikein koska surffaamalla instanssin ip-osoitteeseen "http://ip-osoite" löytyi teksti
"It works! This is thedefault web page..."
Huomioitavia asioita Amazonin instansseista:
-Jos ylittää "Free tier"-käyttäjän minimivaatimukset alkaa automaattinen laskutus amazonin hinnastojen mukaisesti esim. jos ylittyy 750h käyttö kuukaudessa.
-Virtuaaliserveri käyttää oletuksena dynaamisia IP-osoitteita, joka tarkoittaa sitä, että serverin ip-osoite vaihtuu, joka kerta kun sen käynnistää uudelleen.
-Levytila on oletusarvoisesti "kertakäyttöistä" eli jos instanssi sammutetaan vahingossa tai vastaavaa niin tiedot ovat kadonneet eikä niitä enää saa takaisin.
*****************
*****************
TESTIKONEEN SPEKSIT:
HP Elitebook 8530p
Intel Core 2 Duo CPU P8600 @ 2.40GHz
4GB RAM
KÄYTTÖJÄRJESTELMÄ: Xubuntu Live-CD, Ubuntu 13.10
Name Based Virtual Hosting
Seurasin löytämiäni ohjeita:
https://www.digitalocean.com/community/articles/how-to-set-up-apache-virtual-hosts-on-ubuntu-12-04-lts
Ensiksi asensin apache2-webbiserverin:
$ sudo apt-get install apache2
Jonka jälkeen luotiin "Document Root" virtuaali-hostia varten. Tässä luon hakemistoon /srv kansion "www" ja sen alle "example.com", ja sen alle "public_html"-kansion, jonne testisivusto tulee. -p luo automaattisesti tarpeelliset "parent"-hakemistot.
$ sudo mkdir -p /var/www/example.com/public_html
Tämän jälkeen siirryin hakemistoon ja loin sinne index.html-tiedoston komennolla
$ sudo nano index.html
Lisäsin sisällöksi testausta varten.
<html>
<head>
<title>www.example.com</title>
</head>
<body>
<h1>Success: You Have Set Up a Virtual Host</h1>
</body>
</html>
Muutin hieman luomieni hakemistojen oikeuksia, jotta sivusto näkyisi ja niitä voisi muokkailla.
$ chown -R $USER:$USER /var/www/example.com/public_html/
$ sudo chmod -R 775 /var/www
Sitten siirryin apachen konffaus-hakemistoon $ cd /etc/apache2/sites-available ja kopioin default-konffitiedoston "example.conf"-nimiseksi:
$ sudo cp 000-default.conf example.conf
Muokkasin kopioitua tiedostoa seuraavasti: Kommentoin "ServerName"-kohdan käyttöön ja lisäsin sille aliakseksi www.example.com ja "Document Root"-paikaksi määritin luomani hakemiston "public_html"-hakemiston.
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/example.com/public_html
.....Nyt oli aika aktivoida virtuaali-hosti apache-komennolla ja reloadaamaalla apache-serverin konffaustiedostot.
$ sudo a2ensite example.conf
$ sudo service apache2 reload
*****
Seuraavaksi menin muokkaamaan tiedostoa "/etc/hosts":
$ sudo nano /etc/hosts
Ja lisäsin sen loppuun paikallisen ip-osoitteeni sekä example.com-verkkotunnuksen. (Paikallisen ip-osoitteeni selvitin komennolla $ ifconfig ja etsimällä kohta "inet addr".)
Näin tekemällä saadaan aikaiseksi se, että käytän omaa konettani DNS-palvelimena, joka kääntää example.com-verkkotunnuksen oikeaan ip-osoitteeseen. Päästessään ip-osoitteeseen selailu ohjautuu oikeaan "Document Root"-hakemistoon aikaisemmin tehtyjen "sites-enabled"-hakemiston konffausten johdosta.
127.0.0.1 localhost
127.0.1.1 xubuntu
192.168.0.16 example.com
Virtual Hostin määrittely oli onnistunut, koska aikaisemmin "Document Root"-hakemistoon luodun "index.html"-tiedoston sisältö ilmestyi firefox-selaimen ruutuun kirjoittaessani siihen "example.com".
"Success: You Have Set Up a Virtual Host"
LÄHTEITÄ:
https://www.digitalocean.com/community/articles/how-to-set-up-apache-virtual-hosts-on-ubuntu-12-04-lts
http://ubuntu-tutorials.com/2008/01/09/setting-up-name-based-virtual-hosting/
http://serverfault.com/questions/124127/linux-fhs-srv-vs-var-where-do-i-put-stuff
https://httpd.apache.org/docs/2.2/vhosts/name-based.html
No comments:
Post a Comment