Linux palvelimet – kotitehtävät 6


Linux-palvelimet kotitehtävät 6

Lähde  Tero Karvinen 2017: Linux kurssi, http://terokarvinen.com

Harjoitusympäristönä Ubuntu 17.04 (Zesty Zapus) Daily Build

Harjoituskoneen tiedot:

Emolevy X79A-GD65 (8D)

Prosessori Intel(R) Core(TM) i7-3930K

16GiB RAM

Näytönohjain GeForce GTX 690

Ota käyttöön oma virtuaalipalvelin (VPS).

Harjoituksen tavoitteena on ottaa käyttöön oma virtuaalipalvelin Linux-käyttöjärjestelmällä ja varmistaa palvelimen tietoturva luomalla palvelimelle käyttäjä ja käynnistämällä ja konfiguroimalla palomuuri.

Virtuaalipalvelimen tarjoajaksi on valittu DigitalOcean -palvelu, joka on todettu helppokäyttöiseksi ja luotettavaksi palveluksi. Tämän lisäksi palveluun saa 50$ aloitusrahaa Github student developer -paketin kautta.

Virtuaalipalvelimen luonti

Lähtötilanteessa palveluun on rekisteröidytty ja voidaan luoda oma virtuaalipalvelin (Droplet).

Selection_016.png

Käyttöjärjestelmäksi valittiin viimeisin Ubuntun LTS (Long Term Support) versio. Palvelimen tehovaatimuksissa ensimmäisenä tulee vastaan vähäinen keskusmuistin määrä, joten halvin vaihtoehto jätettiin väliin ja valittiin 10 $/kk maksava palvelin.

Palvelimen sijaintia päätettäessä tulee miettiä mistä päin suurin osa palvelimen asiakkaista ottaa yhteyden palvelimeen. Lisäksi tietyt lain pykälät saattavat vaikuttaa palvelimen sijainnin valintaan. Harjoitustyössä palvelimen sijainniksi valittiin Frankfurt. Lopuksi valittiin palvelimien määrä (1) ja geneerinen nimi palvelimelle. Lisäpalveluita ei otettu.

Kun palvelin on luotu, käyttäjä saa sähköpostiinsa viestin, jossa on palvelimen salasana root-käyttäjälle.  Palvelimeen voi ottaa yhteyttä palvelun verkkosivun konsolin kautta tai suojatulla SSH-yhteydellä. Harjoitustyössä käytettiin SSH-yhteyttä testikoneen komentokehotteen kautta.

Palvelimen konfigurointi

$ ssh root@palvelimenip //kirjauduttiin palvelimelle

$ sudo ufw allow 80/tcp //sallittiin http-yhteys palomuurin läpi 

$ sudo ufw allow 22/tcp //sallittiin SSH-yhteydet palomuurin läpi

$ sudo ufw enable //käynnistettiin palomuuri

$ sudo adduser suomisim //lisättiin käyttäjä suomisim. HUOM. KUNNON SALASANA!

$ sudo adduser suomisim sudo //lisättiin käyttäjä ryhmään sudo

$ sudo adduser suomisim adm //lisättiin käyttäjä ryhmään adm

$ sudo adduser suomisim admin //lisättiin käyttäjä ryhmään admin

Seuraavaksi avattiin toinen komentokehote ja testattiin luotuja tunnuksia. Root-tunnuksilla jäätiin vielä palvelimelle varmistamaan, että ongelmat voidaan korjata jos niitä esiintyy. Kun sudo-tunnusten toimivuus on varmistettu, voitiin lukita root-tunnus palvelimelle.

$ ssh suomisim@palvelimenip //kirjaudutiin palvelimelle luodulla käyttäjällä

$ sudo apt-get update && sudo apt-get -y upgrade //testattiin sudo-oikeuksia

$ sudo usermod --lock root //lukittiin root-käyttäjä

Lopuksi voitiin todeta, että virtuaalipalvelin oli otettu onnistuneesti käyttöön. Aikaa operaatioon ja dokumentointiin kului  35 minuuttia.

Asenna weppipalvelin virtuaalipalvelimeesi

Harjoitusta jatkettin aiemmin asennetun ja konfiguroidun virtuaalipalvelimen kanssa. Palvelimeen asennettiin Apache 2 -webpalvelin ja muokattiin Apachen oletussivua.

$ ssh suomisim@palvelimenip //otettiin yhteys palvelimeen

$ sudo apt-get update 

$ sudo apt-get -y install apache2 //apache2 -palvelimen asennus

$ sudoedit /var/www/html/index.html //oletuswebsivun muokkaus

index.html -tiedoston sisältö korvattiin yksinkertaisella html-testisivulla. Tässä vaiheessa huomattiin, että ääkköset eivät toimineet palvelimella. Seuraavasta lähteestä löytyi apua ongelmaan, joka ratkesi seuraavilla komennoilla:

$ sudo apt-get install language-pack-fi

$ sudo locale-gen fi_FI.UTF-8

$ sudo update-locale

Tämän jälkeen siirtymällä selaimella palvelimen IP-osoitteeseen saatiin näkyviin testisivu, johon saatiin nyt lisättyä myös ääkkösiä. Aikaa Apache2 -palvelimen asennukseen ja sivun muokkaukseen kului 5 minuuttia + 15 minuuttia kieliongelmien selvittämiseen.

Selection_022.png

 Laita domain-nimi osoittamaan virtuaalipalvelimeesi

Harjoituksen tavoitteena on ottaa käyttöön domain virtuaalipalvelimelle. Harjoitusta varten valittiin Namecheap -palvelu, joka on luotettava  sekä tarjoaa opiskelijoille pientä alennusta ylempänä mainitun paketin kautta. Palvelussa varmistetaan ensin halutun domain-osoitteen saatavuus ja ostetaan haluttu osoite. Github-paketin kautta tilattuna osoitteesta saa pienen alennuksen tai vaihtoehtoisesti .me -osoitteen saa vuodeksi ilmaiseksi. Huonona puolena palvelu pakottaa .me -osoitteen ostoskoriin sekä Githubin ilmaisen ominaisuuden jollekin ostetulle domainille.

Selection_017.png

Seuraava askel vaatii rekisteröitymistä palveluun sekä luottokorttimaksua palvelusta. Namecheap tarjoaa aggressiivisesti mahdollisuutta yhteistoimintaan Githubin kautta. Kuvaan piilotetun sinisen linkin kautta päästiin kuitenkin itse konfiguroimaan asetuksia.Selection_018.png

Palvelun etusivulla voitiin huomata, että oletuksena molemmilla domaineilla ja kaikilla palveluilla oli auto-renew -toiminto päällä. Koska .me -domainia ei alun perin edes haluttu mukaan eikä sähköpostipalvelua aiottu ottaa käyttöön, pyrittiin minimoimaan ylimääräiset kulut ja jätettiin ainoastaan domain simosuominen.com auto-renew tilaan. Syystä tai toisesta simosuominen.me -domainin sähköpostin auto-renew -toiminto piti käydä erikseen poistamassa alla olevan kuvan valikosta kohdasta Manage.

Selection_020.png

simosuominen.com -domainin asetuksia päästiin siirtymällä Domain list -> Manage. Harjoituksessa käytettiin Advanced DNS -näkymää, joka oli allekirjoittaneelle selkeämpi tapa muokata asetuksia. Alla olevassa kuvassa on kuvattu yksinkertainen konfiguraatio, jolla domain simosuominen.com saatiin viittaamaan Digitaloceanin kautta käyttöön otettuun virtuaalipalvelimeen ja ylempänä tehtyyn Simon Testisivu -websivuun. Palvelimen IP-osoite on sutattu kohdasta Value.Selection_023.png

Tee weppisivu omalle virtuaalipalvelimellesi käyttäen Apachen VirtualHost-asetusta.

Jatkettiin harjoitusta samalla palvelimella ja kokoonpanolla. Tavoitteena oli toteuttaa toinen websivu samalla palvelimella käyttäen Apachen VirtualHost -asetusta. Harjoitusta varten omistettu simosuominen.me -domain oli ohjattu osoittamaan käytettyyn virtuaalipalvelimeen.

$ ssh suomisim@palvelimenip //kirjautuminen palvelimelle

$ mkdir /home/suomisim/html/simome //luotiin kansio simosuominen.me sivustolle

$ nano /home/suomisim/html/simome/index.html //luotiin websivu kansioon

$ sudoedit /etc/apache2/sites-available/simome.conf //luotiin asetustiedosto sivustolle

simome.conf -tiedostoon tehtiin tarvittavat ohjaustiedot (ks. kuva)

Terminal - suomisim@lapikas: ~-html-simome_024.png

$ sudo a2ensite simome.conf //otettiin sivu käyttöön

$ sudo service apache2 restart //käynnistettiin Apache 2 uudestaan

Harjoituksen lopputuloksena virtuaalipalvelimella pyörii kaksi eri verkkosivustoa, simosuominen.com ja simosuominen.me

Selection_025.png

Tätä dokumenttia saa kopioida ja muokata GNU General Public License (versio 3 tai uudempi) mukaisesti. http://www.gnu.org/licenses/gpl.html” Simo Suominen