TIES478 Demo1

Avaa kolme pääteikkunaa, tee kaikissa

ssh -X lonka7.it.jyu.fi

Yhdessä ikkunassa luodaan virtuaalikone, toisessa kirjataan lokiin mitä tuli tehtyä, kolmatta käytetään muuhun.

Avaa yhdessä ikkunassa editori (nano, vim, emacs) tiedostonimenä tunnus1.log. Kirjoita alkuun (2 riviä) koneen nimi (tunnuksesi ja numero 1), oma nimesi ja lyhyt kuvaus koneesta ("kurssin TIES478 harjoitustyökone" tms) ja päiväys ja kellonaika.

Katso koneellesi varattu IP-osoite komennolla host tunnus1, katso verkon peite (netmask) ja oletusyhdyskäytävä (default gateway tiedostosta /etc/network/interfaces ja nimipalvelin tiedostosta /etc/resolv.conf.

Käynnistä virtuaalikoneesi asennus komennolla (tunnus = oma käyttäjätunnuksesi)

virt-install -n tunnus1 -r 96 --disk $HOME/tunnus1.img,size=2,bus=virtio \
--arch i386 --cdrom /srv/ftp/iso/ubuntu-10.04.4-server-i386.iso -w bridge=br0

Kirjaa lokiin em. komento ja asennusohjelmalle antamasi vastaukset (ainakin oletusarvosta poikkeavat) ja jatkossa kaikki mitä roottina (sudolla) teet.

Asennuksen aikana kokeile hiiren irrottamista virtuaalikonsolista (Alt-Ctrl) ja kytkemistä siihen takaisin (klikkaamalla), katso loki-ikkunaa (Alt-F4), kokeile konsoli-ikkunoita Alt-F2 ja Alt-F3 ja kokeile siellä ainakin komentoja df ja ls, palaa asennukseen Alt-F1:llä.

Asennuksen valmistuttua kirjaudu sisään em. nollatunnuksella ja tarkista paljonko levytilaa ja muistia on vapaana (df, top). Katso mitä hakemistossa /boot on. Katso mitä /proc/cpuinfo ja /proc/meminfo sisältävät. Kokeile komentoja ls /dev/?d*, fdisk -l /dev/vda ja route (ilman argumentteja).

Asenna Kerberos-autentikointi:

sudo apt-get update
sudo apt-get install libpam-krb5
ja kysyttäessaä realm anna AD.JYU.FI.

Kokeile toimiiko man man ja jos ei, asenna man.

Asenna ssh.

Katso adduser-komennon man-sivua ja tiedostoa /etc/adduser.conf. Lisää normaalitunnuksesi (ilman nollaa) komennolla adduser. Laita uid samaksi kuin lonka7:ssä (tarkista komennolla id) ja kommenttikenttään (--gecos) nimesi. Kokeile että pääset sillä sisään lonka7:stä ssh:lla.

Lisää samaan tapaan käyttäjä 'tt', uid=10461.

Avaa uusi ikkuna ja mene sieltä ssh:lla suoraan (ei lonka7:n kautta) virtuaalikoneeseesi sen julkisella nimellä (sNNN.vm.it.jyu.fi, missä NNN on IP-osoitteen viimeinen osa 3-numeroisena). Kokeile samaa sen julkisella IP-osoitteella (130.234.x.x).

Asenna locate.

Luo itsellesi ssh-avain lonka7:ssä:

ssh-keygen -t rsa
Laita salasanaksi (passphrase) jotain mitä ei ole muualla käytössä.

Kopioi lonka7:stä tiedosto $HOME/.ssh/id_rsa.pub virtuaalikoneeseesi tiedostoksi ~/.ssh/authorized_keys (luo ensin hakemisto .ssh) sekä nollatunnukselle että normaalitunnuksellesi.

Kokeile miten ssh tunnus1 nyt toimii lonka7:ssä.

Käynnistä lonka7:ssä ssh-agent näin:

exec ssh-agent bash
ssh-add
ja kokeile miten ssh sen jälkeen käyttäytyy.

Katso mitä editoreita koneessasi on:

dpkg -l | grep editor
Asenna emacs. Katso uudestaan mitä editoreita dpkg -l tuntee. Valitse jokin editori jota osaat käyttää (nano on helpoin) ja lisää sillä tiedoston .bashrc loppuun tämänkaltainen rivi
export EDITOR=nano
nanon paikalle haluamasi editori).

Käynnistä script.

Asenna nullmailer. Mailname = jyu.fi, smarthosts = smtp.jyu.fi.

Asenna ntp ja rsync.

Lopeta script (exit), katso tiedostoa typescript.

Katso auth-lokista tekemäsi sudo-komennot:

sudo grep sudo /var/log/auth.log

Sammuta virtuaalikoneesi sen sisältä (sudo shutdown -h now) ja käynnistä se uudelleen (virsh start). Käynnistä virtuaalikonsoli uudelleen (virt-viewer).

Sammuta virtuaalikoneesi lonka7:sta (virsh shutdown) ja käynnistä se ja virtuaalikonsoli uudelleen.

Tee sama komennolla (virsh destroy), vertaa miten se eroaa edellisestä virtuaalikonsolilta katsoen.

Pysäytä virtuaalikoneesi lonka7:stä (virsh suspend). Mitä virtuaalikonsolissa tapahtuu? Herätä kone taas henkiin (virsh resume).

Ota koneesi määrittelytiedosto talteen (virsh dumpxml tunnus1 > tunnus1.xml). Sammuta se (shutdown) ja poista sen määritys järjestelmästä (virsh undefine tunnus1).

Yritä käynnistää se uudelleen (virsh start) - millaisen virheilmoituksen saat?

Palauta koneesi määrittely järjestelmään: virsh define tunnus1.xml ja käynnistä se uudelleen.

Katso mitä määrittelytiedosto sisältää. Etsi sieltä muistin koon määritys (kahdessa paikassa!) ja muuta sen arvoksi 131072 (128MB). Mieti mitä pitää tehdä että määritys tulee voimaan; kokeile.

Kokeile mitä host www sanoo.

Katso tiedostoa /etc/resolv.conf. Avaa se editorilla (esim. nano) ja lisää search-rivin loppuun jyu.fi. Kokeile host www taas. Entä mitä ping www sanoo? Lisää sinne vielä it.jyu.fi ennen jyu.fi:tä ja kokeile uudestaan.

Katso tiedostoa /etc/hosts. Lisää sinne rivi

172.20.208.17 www
Kokeile taas komentoja host www ja ping www. Poista sitten lisäämäsi rivi.


Kotitehtävä: asenna samaan tapaan itsellesi toinen virtuaalikone nimellä tunnus2. Hävitä se kokonaan (virsh destroy tunnus2; virsh undefine tunnus2; rm -f tunnus2.img) ja asenna uudestaan hieman eri asetuksilla. Voit kokeilla eri arkkitehtuuria (x86_64 vs i386), levytilaa (älä käytä enempää kuin 5G, kokeile miten vähällä asennus onnistuu ja mitä tapahtuu kun levytila loppuu), muistia (max 512MB), cpu-määrää (max 2) Ubuntu-versioita, asennusta verkosta cd-imagen asemesta (tyyliin --location http://archive.ubuntu.com/ubuntu/dists/trusty/main/installer-amd64/) jne. Kokeile päivittää Ubuntu-versio uudempaan: sudo do-release-upgrade. Harjoittele kaikkea mikä tuntuu vaikealta ja asenna se uudestaan niin usein kuin haluat. Älä asenna sinne mitään "oikeaa": ensi viikolla se hävitetään kuitenkin.