Tässä harjoituksessa asensin onnistuneesti SSH-demonin, sain aikaiseksi kaksi lokitapahtumaa, tein isomman apt-get install -komennon sekä testasin kolmea minulle uutta komentorivillä toimivaa ohjelmaa.
Tehtävänannossa on jälleen useampi osa:
a) Aiheuta lokiin kaksi eri tapahtumaa: yksi esimerkki onnistuneesta ja yksi esimerkki epäonnistuneesta tai kielletystä toimenpiteestä. Analysoi rivit yksityiskohtaisesti.
b) Asenna SSH-demoni. Kokeile omalla ssh-palvelimellasi jotain seuraavista: ssh-copy-id, sshfs, scp tai git.
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.
Pohjana Tero Karvinen 2018: Linux kurssi, http://terokarvinen.com
Tein harjoitusta sunnutaina 28.1.2018 klo 16:30-20:00 Lenovon ideapad Z500 -kannettavalla, johon on asennettu Ubuntu 16.04 LTS.
Tapahtumien aiheuttaminen lokiin ja SSH-demonin asentaminen
Avasin terminaalin Ctrl+Alt+T -komennolla ja avasin koneen syslogin komennolla “tail -f /var/log/syslog”.
Avasin uuden terminaali-ikkunan ja päätin testata tuota SSH-demonia samalla ja katsoa, ilmestyykö lokiin mitään jälkiä siitä. Asensin SSH:n komennolla “sudo apt-get install ssh” ja tämän jälkeen kirjoitin komennon “ssh käyttäjänimi@koneennimi” (tässä tapauksessa ssh jaanaputro@Nyyti). Tässä vaiheessa kysyttiin salasanaa ja päätin kokeilla ensin väärällä salasanalla, tulisiko lokiin jälkeä. Ei tullut muutaman yrityksen jälkeen ja jouduin uudelleen toistamaan tuon yhteydenoton. Tällä kertaa laitoin oikean salasanan ja lokiin ilmestyi tapahtuma yhteyden avaamisesta.
Kuvassa vasemmalla puolella on syslog, josta näkee, että avasin onnistuneen SSH-yhteyden Nyyti-koneella ja jaanaputro -käyttäjänä. Kyseessä on ensimmäinen sessio tältä käyttäjältä.
Suljin SSH-yhteyden “exit”-komennolla.
Yritin aiheuttaa lokiin eri tavoin niin sanotusti kiellettyä tapahtumaa. Kokeilin esimerkiksi asentaa jotain ilman sudo-alkua, mutta mitään tietoa ei jäänyt lokiin. Yritin myös käyttää apt-get update -komentoa ilman sudo-alkua, mutta siitäkään ei jäänyt tietoa. Koitin lukita koneen ja kirjautua sisään väärällä salasanalla muutamaan otteeseen. Tästäkään ei jäänyt lokiin merkintää. Lopulta löysin terminaalin kautta tehtävän komennon, jolla koneen voi esimerkiksi lukita tai sammuttaa: “gnome-session-quit”. Löysin komennon täältä: http://manpages.ubuntu.com/manpages/zesty/man1/gnome-session.1.html
Tällä komennolla sain vaihtoehdoiksi joko lukita koneen tai kirjautua ulos. Lukitsin koneen ja yrittäessäni kirjautua takaisin sisälle, laitoin salasanan pari kertaa väärin. Kun olin laittanut sen oikein, katsoin lokia ja sinne oli ilmestynyt merkintä:
Tuossa varmaan on niin, että Nyyti-koneen Gnome-sessio epäonnistui tuon väärän salasanan takia.
Unelmien apt-get -komento
Tarkoituksena oli siis luoda oma unelmien apt-get -komento, jolla voi asentaa monta ohjelmaa yhtäaikaa. Päätin, että voisin asentaa yhdellä kertaa esimerkiksi jo asentamani ohjelmat sekä muutamia muita ohjelmia, jotka näyttävät kiinnostavilta tai hyödyllisiltä.
Googletin “linux free software list” ja löysin tällaisen sivuston: https://www.techsupportalert.com/content/best-free-software-linux.htm
Tuota selatessani päätin esimerkiksi asentaa Chromiumin, joka on vapaan lähdekoodin versio Google Chromesta. Lisäksi asensin uudelleen Audacityn (äänieditori) ja GIMP:n, Atomin. Ensin poistin ne “sudo apt-get remove” -komennolla. Lisäksi päätin asentaa Archan (sanakirja) sekä Okularin (voi lukea pdf-dokumentteja). Ensin yritin asentaa ohjelmat erittelemmällä ne pilkulla, eli muodossa “sudo apt-get install chromium, audacity, vlc, atom, gimp, artha, okular”. Tämä ei kuitenkaan onnistunut ja minulle tulikin ilmoitus, että ei löydy näitä paketteja. Tajusin virheeni, sillä ilmoituksessa oli eritelty kukin ohjelma omalle rivilleen ja niiden lopussa oli jokaisessa pilkku. Yritin tämän jälkeen uudestaan ilman pilkkua, mutta nyt tuli ilmoitus, ettei chromium-pakettia löydy. Kävin tarkistamassa “sudo apt-cache search chromium” -komennolla, että mikä meni vikaan. Olin unohtanut kirjoittaa “chromium-browser”.
Tässä kuva pieleen menneestä yrityksestä:
Tästä siis uusi yritys ja nyt kirjoitin “sudo apt-get install chromium-browser audacity vlc atom gimp artha okular”. Nyt komento toimi ja paketit alkoi asentua. Asennuksessa meni useampi minuutti ja sen jälkeen testasin ohjelmien toimivuutta kirjoittamalla komentoriville yksitellen ohjelman nimen, jolloin se käynnistyi. Jokainen ohjelma käynnistyi.
Komentorivillä toimivien ohjelmien asennus
Tätä varten googletin “linux command line tools” ja löysin Top 15 Best Unix Command Line Tools: https://www.endpoint.com/blog/2015/11/04/favourite-unix-command-line-tools
Päädyin asentamaan ncdu:n, joka näyttää, kuinka paljon on tallennettu dataa ja mihinkin kansioon.
Seuraavaksi asensin hollywood-nimisen ohjelman, joka demonstroi Hollywood-hakkerointia:
Poistin ohjelman testauksen jälkeen, sillä siinä oli liikaa riippuvaisuuksia toisiin ohjelmiin. Asennuksessa kesti kauan ja siinä oli paljon console logituksia. Poistin ohjelman komennolla “sudo apt-get purge hollywood”.
Seuraavaksi päätin asentaa Pythonin. Tiesin että, Python on ohjelmointikieli ja luin, että sitä voi käyttää komentoriviltä täältä: https://stackoverflow.com/questions/3987041/python-run-function-from-the-command-line
Testasin ensin, että onko Python jo asennettuna koneelle kirjoittamalla komennon python. Ohjelma käynnistyi. Päätin kuitenkin testata sitä, sillä en ole ennen käyttänyt kyseistä ohjelmaa. Testasin yksinkertaista laskua sekä “Hello world” -sanoman ilmestymistä näytölle. Löysin ohjeen Hello worldin luomiseksi täältä: https://www.learnpython.org/en/Hello,_World!
Ohjelman sai sammutettua kirjoittamalla “exit()”. Kirjoitin itse aluksi “exit”, mutta ohjeeksi tuli kirjoittaa tuo toinen komento.
Lähteet
Lähteet löytyy pääosin tekstistä, jossa niihin on viitattu linkkeineen. Lisäksi lähteenä on käytetty Tero Karvisen oppituntia 23.1.2018 sekä hänen sivuillaan olevaa materiaalia:
http://terokarvinen.com/2017/aikataulu-%E2%80%93-linux-palvelimet-ict4tn021-7-ti-ja-6-to-alkukevat-2018-5-op
http://terokarvinen.com/2006/raportin-kirjoittaminen-4
Tätä dokumenttia saa kopioida ja muokata GNU General Public License (versio 2 tai uudempi) mukaisesti. http://www.gnu.org/licenses/gpl.html