Linux palvelimet H2

Tehtävässä käytetyt harjoitukset löytyvät osoiteesta : linux palvelimet.
Kurssin opettajana toimii Tero Karvinen.

Harjoitus toteutetaan jo aikaisemmassa harjoituksessa käytetyllä Lenovo T470P tietokoneella. Käyttöjärjestelmä on ubuntu 16.04.3 joka on asennettu Virtualbox virtuaali ympäristöön. Harjoitus toteutettiin 03.09.2017 klo 22.00 ja klo 00.30 välisenä aikana.

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

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

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

 

a) 

Käytän lokien seuraamiseen

“tail -f “tiedosto”

komentoa.

Ensimmäisenä esimerkkinä /var/log/auth.log joka seuraa käyttäjän tunnistautumista,
esim. kun käyttäjä tekee pääkäyttäjänä komennon.

Käytän testissä jo tuttua

“sudo apt-get update”

komentoa mutta syötän ensimäisellä kerralla salasanan väärin ja tämän jälkeen oikein.

Sep 3 22:56:10 X1 sudo: pam_unix(sudo:auth): authentication failure; logname= uid=1000 euid=0 tty=/dev/pts/18 ruser=tatu rhost= user=tatu

Eli 3 syyskuuta klo 22.56.10 X1 koneelta pam_unix(unix autentikoja) yrittää tunnisttaa pääkäyttäjää (sudo) ja tämä epäonnistui. Logname ei tiedetä, käyttäjäID (uid) on 1000 eli tatu tässä tapauksessa. Euid eli effective user ID on 0 eli Root.
Tty tarkoittaa terminaalia, tai oikeastaan nähtävästi teletype.a.
Dev/pts/18 viittaa terminaaliin josta komento tulee. Ruser.a viitatataan fyysiseen käyttäjään, tässä tapauksessa käyttäjään tatu. Rhost on tuntematon ja käyttäjä on sama kuin ruser eli tatu

Sep 3 22:57:16 X1 sudo: tatu : TTY=pts/18 ; PWD=/home/tatu ; USER=root ; COMMAND=/usr/bin/apt-get update
Sep 3 22:57:16 X1 sudo: pam_unix(sudo:session): session opened for user root by (uid=0)
Sep 3 22:57:19 X1 sudo: pam_unix(sudo:session): session closed for user root

Kun salasana syötetään oikein, ajan ja laiteen jälkeen ilmenee että sudon käyttäjä on käyttäjä tatu, terminaali on sama kuin aikaisemmin eli pts/18. Komennon on annettu käyttäjän kotikansiossa pääkäyttäjänä. Käytetty komento on

“apt-get update”.

Pam-unix autentikoi tapahtuman ja avaa session pääkäyttäjälle (uid0), kun komento on suoritettu sessio suljetaan.

Toisena esimerkkinä käytän lokimerkintää mikä syntyy kun liitän järjestelmään uuden laitteen, tässä tapauksessa virtualbox guest additions CD.n

Sep 3 23:01:43 X1 udisksd[1836]: Mounted /dev/sr0 at /media/tatu/VBOXADDITIONS_5.1.26_117224 on behalf of uid 1000

Eli 3 syyskuutta klo 23.01.43 X1 koneelta udisksd (demoni joka hallitsee järjestelmän tallennuslaitteita) liittää järjestelmään /dev/sr0 sijaitsevan laitteen (CD) ja tekee liitoksen /media/tatu/VBOXADDITIONS_5.1.26_117224 sijaintiin, käyttäjä 1000, tässä tapauksessa tatu.n puolesta. Käytännössä tämä siis tapahtui automount, koska käyttäjä ei itse liittänyt laitetta manuaalisesti.

 

c) 

Lähdin tähän tehtävään laiskan ajattelun kautta, valitsin ohjelmiksi ne mitä olen enemmän tai vähemmän käyttänyt tämän kesän aikana. Apt-get komento joka asentaa kaikki samalla komenolla on käytännöllinen, mutta näkisin sen vielä käytännöllisemmäksi jos sen ajaisi tiedostosta ja sen voisi suoraan kopioida järjestelmästä toiseen.

Tämä tietenkin edellyttää että käyttöjärjestelmät ovat samoja ja versiot tarpeeksi lähellä toisiaan, tässä tapauksessa Ubuntu 16.04.3. Luon siis scriptin jonka ajan bash.a käyttäen.

Scriptin luonti tapahtuu seuraavasti:

“nano “[tiedoston nimi]”

→ kirjoita komennot jotka haluat toteuttaa

→ lopeta ja tallenna komennolla Ctrl+X , Y ja Enter.

Koska näen että laiskuus on ajoittain hyve, niin luon myös scriptin joka käynnistää kaikki ohjelmat samaan aikaan sekä scriptin joka poistaa ensimmäisen scriptin asennukset.

Komento toteutetaan bash komennolla eli

“bash “tiedosto””.

 

d)

Valitsin ensimmäiseksi ohjelmaksi powertop nimisen ohjelman. Ohjelman tarkoitus on monitoroida sekä hallita tietokoneen virrankulutusta. Tätä en niinkään ole käyttänyt pöytäkoneilla mutta kannettavien tietokoneiden kanssa tämä on osoittautunut oikein toimivaksi, nähden että akun kestoa voi näin näppärästi pidentää.

Asennus menee seuraavasti:

“sudo apt-get install powertop”

kun asennus on valmis pitää ohjelma kalibroida, huomion arvoista on että kaikki tämän ohjelman komennot tulee tehdä pääkäyttäjänä. Tämä toteutetaan komennolla

“sudo powertop –calibrate”

Kun kalibrointi on valmis käynnistyy ohjelma suoraan, ohjeman voi muuten käynnistää komennolla

“sudo powertop”

Ohjelman välilehtiä voi selailla tabulaattorilla, virrankulutusta voi hallinoida “Tunables” välilehdeltä. Ohjenuorana on että jos kohde ilmoittaa “Bad”, niin siinä ei ole virransäästö päällä. “Good” indikoi että virransäästö on päällä.

Tulee huomioida että vaikka kaikelle valikosta voi laittaa virransäästön päälle, se ei välttämättä ole aina suositeltavaa koska tämä toimenpide voi vaikuttaa käyttötehoon ei toivotulla tavalla. ESC lopettaa ohjelman.

Toisen ohjelman minkä valitsin on Pass, ohjelma joka generoi sekä säilöö käytössä olevia sanasanoja. Ohjelman kryptattua salasanakirjastoa pystyy siirtää järjestelmästä toiseen, joskaan ei vielä toimi Windowsissa.

Ei toistaiseksi aktiivikäytössä, suositus tähän tuli ystävältäni ja hänen mukaansa ohjelman pitäisi olla turvallinen käyttöön.

Ennen kuin ohjelman voi ottaa kunnolla käyttöön pitää luoda gpg-avain jos sitä ei ole jo olemassa. Ohjeet tähän löytyvät : https://help.ubuntu.com/community/GnuPrivacyGuardHowto
Tässä tule huomioida että Pass käyttää ubuntussa gpg2 versiota, avaimen luonti menee siis komennoilla “gpg2 –gen-key”.

Itse törmäsin ensimmäisellä luonti kerralla siihen ongelmaan, että olin luonut avaimen pääkäyttäjänä. Tästä muodostui ongelma koska Pass ei pystynyt varmentamaan avainta. Ratkaisin ongelman muuttamalla kansion omistuksen rootilta itselleni komennolla

“sudo chown -R [käyttäjä]:[käyttäjä] /home/[käyttäjä]/.gnupg.”

Ohjelman asennus tapahtuu komennolla

“sudo apt-get install pass”

Kun ohjelma on asentunut pitää avainvarasto luoda ja ottaa käyttöön komennolla

“pass init “gpg2ID”

gpg2ID on tässä tapauksessa gpg2 avaimen käyttäjä, esim: matti.mottonen@email.com tai julkinen avain. Huomioitaa on että aina kun käyttäjä haluaa käyttää luotua salasanaa, hänen pitää syöttää gpg2 avaimen tunnuslause.

Pass.n käyttämät komennot ovat suhteellisen yksinkertaisia ja ne kaikki löytyvät oheisesta linkistä: https://www.passwordstore.org/

Ohessa olevassa kuvassa käyttökokeilu:

Kolmas ohjelma minkä valitsin, on jo pientä pelonsekaisuutta aiheuttanut ohjelma nimeltä Vim. Vim on teksti editori joka on hyvin muokattavissa ja hyvin laajassa käytössä.

Asennus tapahtuu komennolla

“sudo apt-get vim”,

käynnistyy komennolla vim.

Tiedoston voi ottaa käyttöön samalla tavalla kuin nano.n kanssa, eli esim wim koe.txt.
Täytyy myöntää että ensikosketukselta pelonsekaisuus vain kasvaa. Ulkoa muistettavaa komennoissa tuntuu riittävän. Ohessa linkki peruskomentoihin:
https://coderwall.com/p/adv71w/basic-vim-commands-for-getting-started

Lähteet:

http://terokarvinen.com/2017/aikataulu-linux-palvelimet-ict4tn021-4-ti-ja-5-to-alkusyksy-2017-5-op

https://www.passwordstore.org/

https://vim.sourceforge.io/

https://01.org/powertop/

https://coderwall.com/p/adv71w/basic-vim-commands-for-getting-started

https://linux.die.net/man/8/pam_unix

https://wiki.archlinux.org/index.php/Udisks