Harjoitus 7 – 11.3.2018

Harjoitus 7 löytyy Tero Karvisen kotisivuilta: http://terokarvinen.com/2017/aikataulu-%E2%80%93-linux-palvelimet-ict4tn021-7-ti-ja-6-to-alkukevat-2018-5-op#h5

Harjoituksessa pyydetään ratkaisemaan jokin vanha laboratorioharjoitus tältä kurssilta ja valitsin omaksi tehtäväkseni: http://terokarvinen.com/2017/arvioitava-laboratorioharjoitus-linux-palvelimet-ict4tn021-4-tiistai-alkusyksy-2017-%E2%80%93-5-op

Alustana harjoitukselle toimii luotettava kannettava tietokoneeni mallia HP 250 G5 ja juuri tekemäni livetikku.

Loin livetikun lataamalla http://ftp.lysator.liu.se/ubuntu-dvd/xubuntu/releases/16.04/release/ sivulta iso-tiedoston nimeltä xubuntu-16.04.3-desktop-amd64

Tämän jälkeen käytin Unetbootin nimistä ohjelmaa jossa valitsin kyseisen iso-tiedoston ja usb-tikun directoryn.

En tehnyt tikun asennustiedostoihin muutoksia kuten “toram noprompt

Kuitenkin aloitan tehtävän boottaamalla livetikulta valitsemalla “try xubuntu” ilman että asennan sitä.

Päästyäni käyttöjärjestelmään aloitan avaamalla terminaalin

Kirjoitan komennon setxkbmap fi jolla saan käyttööni suomalaisen keyboard layoutin.

Tämän jälkeen katselen tehtävää ja huomaan että siinä pitää tehdä käyttäjille esimerkkisivut joten päädyn menemään skele hakemistoon komennolla cd /etc/skele

h71

Teen skeleen kansion nimeltä public_html komennolla sudo mkdir public_html

Menen public_html hakemistoon komennolla cd public_html ja teen sinne tekstitiedoston käyttämällä komentoa sudoedit index.html

Nyt pitäisi jokaiselle uudelle käyttäjälle tulla valmiina public_html hakemisto jossa on tiedosto index.html

Tämän jälkeen palaan kotihakemistoon käyttämällä komentoa cd ja teen salasanat.txt tiedoston johon kirjoitan yhden rivin jotta voin muokata sen oikeuksia komennolla chmod go-rwx salasanat.txt

Tämän jälkeen käytän komentoa sudo apt-get update ja käyttäisin myös upgradea jos Tero Karvinen ei olisi sanonut että sitä ei kannata käyttää livetikulla koska muisti menee täyteen.

Tämän jälkeen tarvitsen vahvoja salasanoja käyttäjille joten lataan pwgenin komennolla sudo apt-get install -y pwgen

Okei nyt kaikki on valmiina LAMP:in asennusta varten

Aloitan asentamalla Apachen komennolla sudo apt-get install -y apache2

Tämän jälkeen asennan MySQL:n komennolla sudo apt-get install -y mysql-client mysql-server. Serverin asennuksesta tulee prompti jossa kysytään salasanaa (Pitää keksiä jokin todella hyvä).

Tämän jälkeen pitää asentaa PHP joka tapahtuu komennolla sudo apt-get install -y libapache2-mod-php7.0

PHP pitää aktivoida kuten myös käyttäjien kotisivut komennoilla:

sudo a2enmod userdir

sudoedit /etc/apache2/mods-available/php7.0.conf -> # kommentoi ifmodule kohdan

jonka jälkeen käytetään komentoa sudo systemctl restart apache2.service

Tämän jälkeen teen uuden ylläpitäjä käyttäjän nimeltä Jussi Laitavalo komennolla

sudo adduser jussi ja oikeudet sudo adduser jussi adm ja sudo adduser jussi sudo

Nyt voin siirtyä kohtaan Etätyötä kirjoittamalla komennon ssh jussi@xubuntu

Oho enpäs voikkaan! Hupsista pitää asentaa ssh komennolla sudo apt-get install -y ssh

Tässä vaiheessa minun kannattaa myös suojata kone tulimuurilla käyttämällä komentoa sudo ufw allow 22/tcp ja sudo ufw enable

h72

Nyt voin jatkaa komennolla ssh jussi@xubuntu

Hetkinen huomasin tehtävän WhoWhere joten laitan komennon exit jotta pääsen takaisin xubuntu-käyttäjälle.

Aloitan scriptin kirjoittamisen komennolla nano testi

Kirjoitan sisään

#!/bin/bash
echo Hello Ninja

hostname -I

whoami

Tallennan kyseisen tekstitiedoston ja kirjoitan terminaaliin chmod a+x testi jonka jälkeen kirjoitan sudo cp testi /usr/local/bin

h73

Voidaan todeta scriptin toimivuus kirjautumalla Jussina komennolla ssh jussi@xubuntu ja käyttämällä komentoa testi. Voi juku sehän toimii ja printtaa kyseiset tietueet terminaaliin.

Nyt puuttuu tehtävät Käyttäjät, SneakyGarden.Example.com ja NinjaTietokantaa käyttävä esimerkkiohjelma.

Aloitan tekemällä Käyttäjät:

sudo adduser nnerto (Nakke Nertola)

sudo adduser hvars (Håkan Värs)

sudo adduser emikko (Einari Mikkonen)

sudo adduser eoljy (Einari Öljysaari)

sudo adduser evaha (Eija Vähäkäähkä)

Teen pwgenillä jokaiselle käyttäjälle salasanat komennolla vaikkapa pwgen (numero) miten pitkän salasanan tahtoo

Nyt kun käyttäjät ovat luotu aloitetaan tekemään tietokantaa

Olen kirjautunut jussina ssh:n kautta ja aloitan käyttämällä komentoa mysql -u root -p

h74

Tästä tulee password prompti johon kirjoitan salasanan jonka keksin aikaisemmin asentaessani mysql-server osiota.

Aloitan komennolla

CREATE DATABASE ninjaliikkeet CHARACTER SET utf8;

USE ninjaliikkeet;

CREATE TABLE ninjamoves (liike varchar(255), vaikeus varchar(255));

INSERT INTO ninjamoves (liike, vaikeus) VALUES (‘Hyppykiertopotku’, ’27’);

INSERT INTO ninjamoves (liike, vaikeus) VALUES (‘Kuperkeikka’, ‘3’);

INSERT INTO ninjamoves (liike, vaikeus) VALUES (‘Karjaisu’, ‘1’);

h75

Voidaan tarkistaan että kyseiset tiedot ovat menneet perille käyttämällä komentoa SELECT * FROM (ninjamoves);

Ja nehän näkyvät!

Tässä vaiheessa pääni oli jo todella jumissa joten pidin ruokatauon. Jäljellä oli vielä kohdat “tee tietokantaa käyttävä esimerkkiohjelma” ja SneakyGarden.Example.com

Kaivoin esiin Tero Karvisen tekemän esimerkin osoitteesta: http://terokarvinen.com/2016/read-mysql-database-with-php-php-pdo ja aloin muokkaamaan valmiiseen pohjaan omia tietoja.

h77

 

Kun olin muokannut pohjan niin testasin menemällä selaimessa osoitteeseen localhost/~evaha ja huomasin että sivuilla näkyi nytten ninjaliikkeet ja niiden vaikeustaso.

h76

En muistanut mitään kohdasta SneakyGarden.Example.com, mutta onneksi meillä on infraopiskelijoiden keskeinen WhatsApp, joten kysyin sieltä ja Roope Varttila vastasi että hänellä on todella hyvin kyseinen aihe raportoituna blogissaan. Joten avasin https://roopelinux.wordpress.com/2018/02/13/harjoitus-4-raportti/.

Hetken silmäiltyä komentoja muistui mieleeni opetuskerta jossa Tero Karvinen opetti kyseisiä komentoja ja tehtävästä tuli helppo.

Kohdan voi aloittaa vaikka komennolla sudoedit /etc/apache2/sites-available/testi.conf

Kirjoittaa sisään:

h78

Sen jälkeen käynnistää sudo a2ensite testi.conf

ja sudo systemctl restart apache2.service

 

Nyt muokataan komennolla sudoedit /etc/hosts ja kirjoitetaan sisälle 127.0.0.1 http://SneakyGarden.Example.com ja 127.0.0.1 SneakyGarden.Example.com

h79

Voidaan testata tämä selaimella kirjoittamalla osoitekenttään http://SneakyGarden.Example.com

h711

 

Kuten kuvasta voi nähdä se toimii.

Tämä laboratorioharjoitus oli hauska tehdä ja siinä meni hetki kun yritti muistaa kaiken. Tero Karvisen materiaaleista oli todella paljon hyötyä tämän tekemisessä. En olisi varmaan saanut edes puolia pisteitä ilman katsomatta vanhoja muistiinpanoja. Uskon kyllä että tulen saamaan ihan hyväksyttävän suorituksen varsinaisessa laboratorioharjoituksessa jos se on yhtään samanlainen kuin tämä ja siinä saa käyttää internettiä apuna.

Erityiset kiitokset myös muille infraopiskelijoille jotka jakoivat mietteitään WhatsAppissa.

Lähteet:

http://terokarvinen.com/2016/mysql-install-and-one-table-database-sql-crud-tutorial-for-ubuntu

http://terokarvinen.com/2016/read-mysql-database-with-php-php-pdo

https://roopelinux.wordpress.com/2018/02/13/harjoitus-4-raportti/

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Advertisements

1 thought on “Harjoitus 7 – 11.3.2018”

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s