H3 Linux Palvelimet

Tehtävät liittyvät Haaga-Helia AMK Tero Karvisen pitämään kurssiin, Linux Palvelimet ICT4TN021 4. Tehtävät löytyvät täältä.

Tehtävässä käytetyn koneen rauta

tämäääää.png

Tein tehtävät 10.9.2017. Aikaa tehtäviin kului arviolta noin 4 tuntia raportointi mukaan lukien.

a) Asenna Apache, laita käyttäjien kotisivut (http://example.com/~tero) toimimaan. Testaa esimerkkikotisivulla. Tämä a-kohta on vaihdettu.

Käynnistin Xubuntun, ajoin <sudo apt-get update> komennolla päivitykset, koska käytän Xubuntua livetikulta. Ennen komennon lyömistä terminaaliin, tarkistin että verkkoyhteys toimii avaamalla firefoxin ja kirjoittamalla hakuun “testi”. Kun olin testannut, että verkko toimii ja ajanut päivitykset, vaihdoin näppäimistön kieleksi Suomi komennolla <setxkbmap fi>.

Asensin apache2 demonin komennolla <sudo apt-install -y apache2>. Lataus kesti hetken aikaa, jonka jälkeen tarkistin sen toimivuuden kirjoittamalla firefox-selaimeen “localhost”1. kuva apache2 onnistunut.png

Asennus oli siis onnistunut. Kokeilin myös toimiiko apache2 default page, jos syötän hakuun oman ip-osoitteeni minkä sain kirjoittamalla terminaaliin komennon <hostname -I>. Se toimi myös.

Seuraavaksi laitoin userdir modulen päälle komennolla <sudo a2enmod userdir>. Se antaa jokaiselle käyttäjälle luvan pitää nettisivuja kotihakemistossaan (lähde). Tämän jälkeen käynnistin apache2 demonin uudelleen komennolla <sudo service apache2 restart>.

Tämän jälkeen menin kotihakemistoon komennolla <cd /home/xubuntu>. Loin kotihakemistoon kansion nimeltä public_html, komennolla <mkdir public_html>. Tämän jälkeen loin public_html kansioon index.html nimisen tekstitiedoston, komennolla <cd public_html> <nano index.html>. Kirjoitin tekstitiedostoon tekstinpätkän “Jos tama nakyy niin tehtava on onnistunut!”. Tämän jälkeen tarkistin miltä näyttää “localhost/~xubuntu/” ja se näytti tältä.3 kuva.png

Jotta luomani index.html tiedosto näkyisi myös example.com/~xubuntu -osoitteella minun oli muuteltava muutamia tekstitiedostoja.

Komennolla <cd /etc/apache2/sites-available> pääsin kansioon mistä pystyy säätämään apache2 oletussivua. Kansiossa on kaksi tekstitiedostoa “000-default.conf” ja “default-ssl.conf”. Avasin komennolla <sudo nano 000-defualt.conf> tuon ensimmäisen. Tekstitiedostosta etsin kohdan “#ServerName http://www.example.com&#8221; ja lisäsin sen alapuolelle “ServerAlias example.com”. Otin myös risuaidan pois kohdasta “#ServerName http://www.example.com”. Tämän jälkeen menin muokkaamaan hosts tekstitiedostoa komennolla <cd /etc> ja <sudoedit hosts> Lisäsin tektitiedoston kahden ensimmäisen lauseen jälkeen lauseet “127.0.0.1 http://www.example.com&#8221; ja “127.0.0.1 example.com”. Käynnistin apache2 uudelleen komennolla <sudo service apache2 restart>, jonka jälkeen nettisivut toimivat nyt osoitteella “http://example.com/~xubuntu/&#8221;.example sivut.png

b) Surffaa oman palvelimesi weppisivuja. Etsi Apachen lokista esimerkki onnistuneesta (200 ok) sivulatauksesta ja epäonnistuneesta (esim 404 not found) sivulatauksesta. Analysoi rivit.

Avasin selaimen ja kirjoitin osoitteeksi “localhost/~xubuntu/” jonka jälkeen kirjoitin osoitteeksi “localhost/~xubuntu/testi”. Tämän jälkeen menin komennolla <cd /var/log> kansioon mistä lokitietoja luetaan. Etsin kansiosta apache2 demonin komennolla <cd apache2> ja apache2 kansiossa kirjoitin komennon <cat access.log>, jolla pääsee lukemaan apache2 lokitietoja.404 testi kuva 5.png

127.0.0.1 – – [10/Sep/2017:13:12:49 +0000] “GET /~xubuntu/ HTTP/1.1” 200 326 “-” “Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:54.0) Gecko/20100101 Firefox/54.0”
127.0.0.1 – – [10/Sep/2017:13:14:52 +0000] “GET /~xubuntu/ HTTP/1.1” 304 180 “-” “Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:54.0) Gecko/20100101 Firefox/54.0”
127.0.0.1 – – [10/Sep/2017:13:15:50 +0000] “GET /~xubuntu/testi HTTP/1.1” 404 504 “-” “Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:54.0) Gecko/20100101 Firefox/54.0”

Poimin nämä kolme riviä lokia. Niissä esiintyy kolme http statuskoodia 304, 200 ja 404.

Analysoin tuota viimeistä eli 404.

127.0.0.1 on se ip, josta haku tehdään.

[10/Sep/2017:13:15:50 +0000] Tässä on päivämäärä, kellonaika ja +0000 aikavyöhyke. Tieto luodaan heti kun sivulle haetaan eli kun kirjoitin firefoxin hakuun “localhost/~xubuntu/testi”.

“GET /~xubuntu/testi HTTP/1.1″ 404 504 ” Palvelin haki resurssin ~xubuntu ja käytti siihen protokollaa HTTP/1.1. Tuo 404 on statuskoodi ja tässä tapauksessa virhe, page not found. 504 on palvelimen lähettämän vastauksen koko bitteinä.

f) Tee palvelimella ajettava weppiohjelma, joka tekee käyttäjälle jonkin yksinkertaisen laskun (esim. painoindeksi BMI).

Menin komennolla <cd /home/xubuntu/public_html> kansioon missä sijaitsee index.html tekstitiedosto. Kirjoitin tekstitiedostoon komennolla <nano index.html>. Kirjoitin tämän koodin tekstitiedostoon ja painoin ctrl-x, y ja enter.

koodia.png

Weppiohjelma oli hyvin yksinkertainen heikon ohjelmointiosaamiseni takia mutta se toimi. bmi laskuri.png

 

Lähteet:

http://terokarvinen.com/2017/aikataulu-linux-palvelimet-ict4tn021-4-ti-ja-5-to-alkusyksy-2017-5-op – Kurssin tehtävät ja info löytyvät täältä.

https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html – tietoa http protokollasta ja status koodeista.

https://httpd.apache.org/docs/current/vhosts/examples.html – tietoa apache2 virtual hostista

https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-ubuntu-14-04-lts – lisää tietoa apache2 virtual hostista

https://stackoverflow.com/questions/19467837/change-default-page-apache2-ubuntu – miten muuttaa apache2 default page

https://httpd.apache.org/docs/2.4/howto/public_html.html – tietoa userdir komennoista.

http://terokarvinen.com/2009/command-line-basics-4 – yksinkertaisia komentoja mitä käytin tehtävän aikana

http://terokarvinen.com/2008/commands-for-admin-4 – lisää yksinkertaisia komentoja

H2 Linux palvelimet

Tehtävät liittyvät Haaga-Helia AMK Tero Karvisen pitämään kurssiin, Linux Palvelimet ICT4TN021 4. Tehtävät löytyvät täältä.

Tehtävässä käytetyn koneen rauta

tämäääää.png

Tein tehtävää osissa pitkin päivää 3.9.2017. Aikaa tehtäviin kului arviolta noin 2 tuntia raportointi mukaan lukien.

H2 a) Aiheuta lokiin kaksi eri tapahtumaa: yksi esimerkki onnistuneesta ja yksi esimerkki epäonnistuneesta tai kielletystä toimenpiteestä. Analysoi rivit yksityiskohtaisesti.

Aloitin tehtävän boottaamalla usb livetikun, minkä tein edellisessä tehtävässä. Boottaaminen tapahtui normaalisti, aivan samaan tapaan kuin H1 tehtävän raportissa esitin. Xubuntun käynnistämisen jälkeen testasin, että järjestelmä toimi mm. verkkoyhteyttä kokeilemalla ja työpöydän kansioita ja valikon sovelluksia avaamalla. Kaikki toimi OK. Ennen tehtävien aloittamista hain päivitykset kirjoittamalla terminaaliin komennon <$ sudo apt-get update>.

Päivittämisen jälkeen menin var/log kansioon komennolla <$ cd /var/log/>. Päätin käyttää verkkoyhteyden manipuloimista tapahtumien seuraamiseen ja analysoimiseen. Tässä kuva komennosta tail syslog, kansiossa var/log.

syslog eka kuva netti pääl.png

Komento näyttää erilaisia prosesseja, kuten esimerkiksi avahi-daemon[1541]. Avahi-daemon on siis “demoni” nimeltä avahi. Se mahdollistaa kytkeytymisen verkkoon ilman, että tietokoneen käyttäjä joutuisi tekemään mitään. Tuo numerosarja demonin lopussa on session tunnusluku/id. Kuva on otettu kun Xubuntu on kytketty langattomaan verkkoon. Kytkin verkon pois päältä kännykästä (kännykän jaettu verkkoyhteys) ja analysoin siitä saatavaa tietoa.offline.png

Komentokeskus ilmoittaa whoopsien eli Xubuntun virheen raportointi demonin. Sen mukaan “Cannot reach: https://daisy.ubuntu.com&#8221; ja “Offline”. Se ei siis ilmeisesti pääse raportoimaan virheitä, koska järjestelmä ei ole verkossa.

Kytkin verkon takaisin ja sain nämä lokit. syslog netti laitettu päälle.png

netti laitettu pääl.png

Heti verkkoon kytkemisen jälkeen networkmanager alkoi konfiguroimaan automaattisesti yhteyttä.

Lokista löytyy IPv4, dhclient (tämä lukee aluksi dcclient.conf:ista konfigurointi ohjeet, jonka jälkeen se listaa luettelon kaikista yhteyksistä, jotka on määritetty nykyisessä järjestelmässä. Jokaiselle käyttöliittymälle määritetään liitäntä DHCP-protokollan avulla. DHCP:tä tarvitaan automaattiseen konfigurointiin), dnsmasq eli ohjelma joka tuo lähiverkon koneet verkkonimien alle, sen sijaan, että jokaisella olisi oma IP-osoite.

Seuraavaksi kokeilin kiellettyä/epäonnistunutta toimenpidettä salasanan vaihdolla ja väärällä salasanalla. aslasana vaihto.png

Käytin komentoa <$ passwd> vaihtaakseni salasanan. Koska järjestelmässä ei ennalta oltu määritelty salasanaa, sen pystyi vaihtamaan suoraan kirjoittamatta vanhaa salasanaa. Salasanaksi määrittelin “Salasana1234”. Terminaali ilmoitti “xubuntu passwd[6477]: pam_unix(passwd.chauthtok): password changed for xubuntu” eli salasanan määrittely onnistui. Nyt järjestelmän salasana oli siis Salasana1234.

Seuraavaksi koitin salasanan vaihtoa mutta sen sijaan, että olisin kirjoittanut edelliseksi salasanaksi tuon Salasana1234 eli oikean, annoin väärän salasanan.

salasana ei onnistu.png

Terminaaliin tuli herja “authentication failure” eli salasanan vaihto ei onnistunut, koska annoin väärän nykyisen salasanan. Tein myös testin antamalla oikean nykyisen salasanan mutta kirjoitin eri salasanat kun uutta salasanaa määriteltiin eli “Enter new UNIX password” ja “Retype new UNIX password”.kolmas salansa ei toimi.png

Nyt sain virheviestin “new password not acceptable” eli järjestelmä ei voi hyväksyä salasanaa jota ei olla kirjoitettu oikein kohtaan “Retype new UNIX password”.

c) Tee unelmien apt-get -komento: yksi komentorivi, joka asentaa suosikkiohjelmasi.

Avasin terminaalin ja kirjoitin unelmien komennoksi <$ sudo apt-get install vlc blender gimp>. Komento latasi kaikki kolme ohjelmaa kerralla ja ne käynnistyivät normaalisti. Vaikka ohjelmia oli kolme, ne asentuivat noin 20 sekunnissa. On siis paljon nopeampaa asentaa terminaalin ohjelmia kuin Xubuntun Software-ohjelmasta (sama kuin Appstore tai Play-kauppa.)unelmien komento.png

d) Asenna komentokehotteen paketinhallinnasta kolme itsellesi uutta komentorivillä toimivaa ohjelmaa. Kokeile kutakin ohjelmaa sen pääasiallisessa käyttötarkoituksessa.

Latasin kolme komentorivillä toimivaa peliä. Ohjeet komentoihin löysin täältä.

snake peli.pngpacman4console.pngninvaders.png

Komennot joita käytin pelien asentamiseen olivat:

sudo apt-get install pacman4console
sudo apt-get install nsnake
sudo apt-get install ninvaders

Pelit käynnistettiin komennoilla. Pelit toimivat ja latautuivat jokainen noin 10 sekunnissa. Pelit myös käynnistyivät välittömästi terminaalissa.

ninvaders
nsnake
pacman4console

Lähteet:

http://terokarvinen.com/2017/aikataulu-linux-palvelimet-ict4tn021-4-ti-ja-5-to-alkusyksy-2017-5-op – Kurssin tehtävät

https://www.computerhope.com/unix/dhclient.htm – Dhclient selitys

https://linux.fi/wiki/Dnsmasq – dnsmasq selitys

https://itsfoss.com/best-command-line-games-linux/ – Komennot millä asensin pelit tehtävään D.

 

 

 

H1 tehtävä

Tehtävään tarvitaan tietokone ja USB-tikku. Käytin kotikonettani ja Maxellin 8GB usb-tikkua.

a) Tee oma Linux-livetikku. Kokeile sitä jossain muussa kuin koulun koneessa. Tämä kohta ei edellytä asentamista – jos kuitenkin asennat, ota ensin varmuuskopiot.

Aloitin tehtävän tekemisen lataamalla Xubuntu 16.04 version levykuvan (url:http://ftp.lysator.liu.se/ubuntu-dvd/xubuntu/releases/16.04/release/xubuntu-16.04.3-desktop-amd64.iso). Se tarvitaan Linux-livetikun tekemiseen. Sen jälkeen latasin UnetBootin (url:https://unetbootin.github.io/) eli ohjelman, minkä avulla levykuva saadaan usb tikulle niin, että sitä voi käyttää Xubuntun boottaamiseen tietokoneelle.

unebtowetwt.png

Unetbootinista valitsin ensin “Select Distribution” valikosta Xubuntu ja “Select Version” valikosta versio 16.04, koska se on lataamani levykuvan versio Xubuntusta. Sen jälkeen valitsin kuvassa näkyvästä “Select disk image file” kohdasta levykuvan sijainnin, eli C:\Users\Maltatec\Downloads\xubuntu-16.04.3-desktop-amd64.iso, jonka jälkeen jälkeen valitsin USB:n sijainnin, joka oli E:\ ja valitsin OK.

unetboot.png

Tämän jälkeen ei tarvinnut kuin odottaa, että ohjelma on valmis. Livetikun luomisessa ohjelmamma kestää noin kolme minuuttia, jonka jälkeen ohjelma ilmoittaa “Installation Complete”. Valitsin Exit. Livetikun luomiseen meni aikaa noin 5 minuuttia.

unetboot3.png

Käynnistin tietokoneeni uudelleen ja ennen Windowsin käynnistymistä “spämmäsin” F12 näppäintä, joka omassa koneessani vie käyttäjän boot menuun.

Boot menu näyttää tältä. 20170827_191525.jpg

Valitsin boot menusta kohdan “USB DISK Pro PMAP”, jonka jälkeen tietokone alkoi boottaamaan järjestelmää tikulta. Hetken päästä ilmestyi valikko, josta valitsin ylimmän vaihtoehdon eli “Try Xubuntu without installing”. Odotin hetken ja Xubuntun työpöytä ilmestyi. Livetikku siis toimi ja sillä pystyi boottaamaan Xubuntu 16.04 version.aloitusnaytto.png

b) Listaa testaamasi koneen rauta (‘sudo lshw -short -sanitize’).

Ruudun vasemmalla ylänurkassa on (edellisessä kuvassa hiiren kohdalla) valikkopainike. Klikkasin sitä ja kirjoitin hakuun “command” ja valitsin ylimmän ohjelman eli terminal emulatorin.kaynnistysvalikko.png

Terminal emulatoriin kirjoitin käskyn ‘sudo lshw -short -sanitize’ ja emulaattori antoi minulle kuvassa näkyvät tiedot. kohta h2 koneen rauta.png

Käskyllä ‘sudo lshw -short -sanitize’ emulator ilmoittaa tietokoneen osien nimiä, kuten omassa koneessani prosessori i7-4790k, emolevy Z97X-Gaming 5 ja näytönohjain GeForce GTX 980 Ti.

c) Asenna kolme itsellesi uutta ohjelmaa. Kokeile kutakin ohjelmaa sen pääasiallisessa käyttötarkoituksessa.

Valitsin oikealta ylhäältä avatusta valikosta “Software” kohdan. Sitä klikkaamalla aukesi ohjelma jolla latasin muita ohjelmia Xubuntulle.

softan lataus.png

Ohjelmat joita latasin olivat Audacity eli muun muassa editoimiseen käytettävä ohjelma, Blender eli 3D mallintamiseen käytettävä ohjelma ja Geogebra eli muun muassa opettamisessa käytettävä piirto-ohjelma.audacity.png

geogebra ohjelma.png

blender.png

Ohjelmat oli helppo ladata “Software” ohjelmalla. Kirjoitin Softwaren hakuun niiden ohjelmien nimet, jotka halusin ladata ja valitsin Install, joka automaattisesti latasi ja asensi ohjelmat Xubuntulle.

d) Mitä lisenssiä kukin näistä ohjelmista käyttää? Selitä lyhyesti, mitä oikeuksia ja velvolisuuksia tuosta lisenssistä seuraa.

Kaikki kolme lataamani ohjelmaa eli Blender, Audacity ja Geogebra ovat OpenSource ohjelmia eli avoimen lähdekoodin ohjelmia. Avoimen lähdekoodin ohjelmia saa käyttää vapaasti, kopioida, muokata ja jakaa eikä niistä tarvitse maksaa lisenssimaksuja. Tässä lista vaatimuksista, jotka avoimen lähdekoodin ohjelman on täytettävä.

12312312.png(url: https://coss.fi/avoimuus/avoin-lahdekoodi/)

d) Listaa käyttämäsi ohjelmat (esim. MS Word), kunkin ohjelman käyttötarkoitus (esim. Tekstinkäsittely) ja vastaava vapaa Linux-ohjelma (esim. LibreOffice Writer). Jos johonkin tarkoitukseen ei löydy vapaata Linux-ohjelmaa, listaa sekin.

Windowsilla ohjelmat joita käytän usein ovat MS Word, MS Excel, Windows Media Player ja Notepad++.

MS Word, käyttötarkoitus = tekstinkäsittely

MS Excel, käyttötarkoitus = taulukkolaskenta

Windows Media Player, käyttötarkoitus = videon- ja äänentoisto

Notepad++, käyttötarkoitus = code editor

MS Wordille Linuxille löytyy vastaava LibreOffice Writer

MS Excelille Linuxille löytyy vastaava LibreOffice Calc

Windows Media Playerille Linuxille löytyy vastaava VLC Media Player

Notepad++lle Linuxille löytyy vastaava Sublime Text.

LÄHTEET:

https://coss.fi/avoimuus/avoin-lahdekoodi/ – Avoin lähdekoodi