Tehtävän tekeminen alkoi 26.4.2020 klo 13.00 ja loppui klo 15, jolloin tein ensimmäisen 3 salt -tilaa. Viimeisten kolmen tilan asennus alkoi 27.4.2020 klo 14.00 ja loppui n. klo 16.00.
Suoritan tehtävät omalla tietokoneellani (HP Pavillion 15) VirtualBoxin kautta Linuxin XUbuntu 18.04 käyttöjärjestelmällä.
Tehtävä on osa Tero Karvisen palvelimen hallinta kurssia keväällä 2020. Tehtävän anto löytyy osoitteesta: http://terokarvinen.com/2020/configuration-managment-systems-palvelinten-hallinta-ict4tn022-spring-2020/
Valitsin tehtäväksi b vaihtoehdon eli Modulikimara. Asenna 6 saltin tilaa/modulia.
Ennen tehtävän aloittamista testasin, että minion toimii komennolla:
– sudo salt ‘*’ cmd.run ‘whoami’
Se ei toiminut, joten tarkastin onko masterin IP-osoite oikein. Se ei ollut, joten vaihdoin sen oikeaksi. Tämän jälkeen käynnistin salt-minion palvelun uudelleen komennolla:
– sudo systemctl restart salt-minion
Tämän jälkeen aikaisempi testaus komento toimi ja minion vastasi.
- Ensimmäiseksi tilaksi valitsin gimpin, joka on kuvankäsittely ohjelma. Kyseisessä kohdassa on ei ole käytetty muiden tehtäviä apuna, vaan yritetty soveltaa aikaisemmin opittuja tietoja.
Aloitin asentamalla gimpin ensiksi käsin virtuaalikoneelle. Asennukseen käytin komentoja:
– sudo apt-get update
– sudo apt-get -y install gimp
Kun asennus oli mennyt onnistuneesti lävitse, etsin gimpin konfigurointi tiedoston, joka sijaitsi polussa /etc/gimp/2.0/gimprc. Muokkasin kyseistä tiedosto, niin että default-image asetukset tulivat voimaan komennolla:
– sudo nano gimprc

Tämän jälkeen kopioin muokatun gimprc tiedoston /srv/salt kansioon komennolla:
– sudo cp /etc/gimp/2.0/gimprc /srv/salt
Kun tiedoston löytyi kyseisestä kansiosta, poistin gimp:in komennolla
– sudo apt-get purge gimp
Gimp:in poiston jälkeen loin/srv/salt hakemistoon kansion gimp ja sen sisälle tilan init.sls komennoilla:
– sudo mkdir gimp
– sudoedit init.sls
Kirjoitin init.sls tilan sisälle seuraavat tiedot komennolla:
– sudoedit /srv/salt/gimp/init.sls

Kun muutokset init.sls tilaan oli tehty, ajoin ne läpi komennolla:
– sudo salt ‘*’ state.apply gimp ja ne menivät oikein lävitse:

Testasin vielä, että ohjelma toimi kirjoittamalla gimp ja tämän jälkeen ohjelma aukesi.
2. Seuraavaksi ohjelmaksi valitsin MariaDB:n asennuksen, joka on tietokantaohjelma. Kyseisessä kohdassa ei ole käytetty muiden tehtäviä apuna, vaan yritetty soveltaa aikaisemmin opittua tietoa.
Asensin ensiksi ohjelman käsin komennolla:
– sudo apt-get -y install mariadb-server
Asennuksen jälkeen kopioin /etc/mysql/my.cnf tiedoston /srv/salt hakemistoon komennolla:
– sudo cp /etc/mysql/my.cnf /srv/salt
Tämän jälkeen poistin ohjelman komennolla:
– sudo apt-get purge mariadb-server
Kun ohjelma oli poistettu loin mariadb kansion hakemistoon /srv/salt ja sen sisälle tilan init.sls komennoilla:
– sudo mkdir mariadb
– sudoedit init.sls
Kirjoitin init.sls tilan sisälle kyseiset tiedot:

Kun tiedot oli laitettu, kokeilin ajaa ne lävitse komennolla:
– sudo salt ‘*’ state.apply mariadb
Ne menivät oikein lävitse ilman virheilmoituksia.

Viimeisenä testasin vielä, että ohjelma toimii. Kirjauduin orjalle ssh avulla ja laitoin komennon:
– sudo mysql -u root -p
MariaDB:n avaus onnistui:

3. Seuraavaksi asensin fail2ban ohjelman. Kyseinen ohjelma on tunkeutumisen estojärjestelmä, joka suojaa tietokonetta bruce-forve hyökkäyksiltä. Käytin avuksi edellisen opiskelijan kirjoitusta, josta löysin kyseisen ohjelman (https://hannukankkunen.wordpress.com/2018/12/10/palvelinten-hallinta-h3/) Yritin kuitenkin tehdä asennuksen itse, katsomatta hänen tehtäväänsä. Käytin avukseni myös Linoden artikkelia (https://www.linode.com/docs/security/using-fail2ban-to-secure-your-server-a-tutorial/)
Asensin ensiksi ohjelman komennolla:
– sudo apt-get -y install fail2ban
Ensiksi kopioin jail.conf tiedoston local muotoon jail.local. Tämä siksi, että on parempi erottaa tiedosto conf-tiedostosta. Local -tiedosto yliajaa conf-tiedoston ja vanhat tiedot jäävät talteen. Tein tämän komennolla:
– sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Muokkasin jail.local tiedostosta kohtaa backend = Autosta systemd ja lisäsin sinne kyseisen kohdan:
[sshd]
enabled = true
port = 22
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
Kun muokkaus oli tehty kopioin kyseisen tiedoston /srv/salt hakemistoon. Kopioinnin jälkeen poistin fail2ban:in ja sen hakemiston komennoilla:
– sudo apt-get purge fail2ban
– sudo rm -r /etc/fail2ban
Poistamisen jälkeen loin fail2ban kansion hakemistoon /erv/salt ja sen alapuolelle init.sls tilan komennoilla:
– sudo mkdir fail2ban
– sudoedit init.sls
Init.sls tilan sisälle kirjoitin seuraavat tiedot:

Tallesin tilan ja testasin meneekö se lävitse komennolla:
– sudo salt ‘*’ state.apply fail2ban
Ensimmäisellä kerralla komento herjasi virheestä ja huomasinkin, että minulta oli /etc/fail2ban/jail.local kohdasta unohtunut : merkki.

Korjasin virheen ja kokeilin komentoa uudelleen ja tällä kertaa se meni oikein lävitse:

Viimeisenä testasin ohjelmaa komennolla:
– fail2ban-client -d
Kyseinen komento toimi ja antoi dump configurationista:

Tehtävien teko jatkui 27.4.2020 klo 14
En enää itse keksinyt ohjelmia, josta voisin tehdä salt -tilan, joten etsin komennon avulla mahdollisia asennettavia paketteja:
– sudo apt-cache search .|less
4. Valitsin 4 asennettavaksi ohjelmaksi Chromium selaimen. Kyseisen kohta tehty vanhoja tehtäviä avuksi käyttäen.
Asensin ohjelman ensiksi komennoilla:
– sudo apt-get update
– sudo apt-get -y install chromium-browser
Muokkasin tiedostoa /etc/chromium-browser/default tämän näköiseksi:

Tämän jälkeen kopioin tiedoston /srv/salt kansioon ja poistin ohjelman komennoilla:
– cp /etc/chromium-browser/default /srv/salt
– sudo apt-get purge chromium-browser
– sudo rm -r /etc/chromium-browser
Loin chromium kansion hakemistoon /srv/salt ja sen alapuolelle tilan init.sls:
– sudo mkdir chromium
– sudoedit init.sls
Kirjoitin tilaan tämän näköiset tiedot:

Tämän jälkeen testasin, että tila menee läpi komennolla:
– sudo salt ‘*’ state.apply chromium

Viimeisenä testasin vielä, että chromium toimii kirjoittamalla komennon:
– chromium-browser

5. Valitsin ohjelman ClamAV, joka on avoimen lähdekoodin virusohjelma. Kyseinen tehtävä tehty vanhoja tehtäviä avuksi käyttäjen ja apua katsottu clamAV:n nettisivuilta (https://www.clamav.net/documents/configuration)
Asensin sen komennolla:
– sudo apt-get -y install clamav
Tämän jälkeen muokkasin tiedostosta /etc/clamav/freshclam.conf kohtaa MaxAttemps 5 -> 3. Kopioin muutosten jälkeen tiedoston polkuun /srv/salt
– sudo cp /etc/clamav/freshclam.conf /srv/salt
Poistin ohjelman komennoilla:
– sudo apt-get purge clamav
Loin hakemistoon /srv/salr kansion clamav ja sen sisälle tilan init.sls:
– sudo mkdir clamav
– sudoedit init.sls

Tämän jälkeen testasin, että tila menee lävitse komennolla:
– sudo salt ‘*’ state.apply clamav

Testasin vielä, että ohjelma toimi komennolla:
– clamscan -r –bell -i /home/janni

6. Viimeiseksi ohjelmaksi valitsin tehdä tilan virtualboxin asennukselle.
Asensin virtualboxin komennolla:
– sudo apt-get -y install virtualbox
Asennuksen jälkeen en löytänyt conf.tiedostoa joten käytin sen hakemiseen komentoa:
– find / -name virtualbox 2> /dev/null

Avasin tämän jälkeen virtualbox tiedoston ja muutin kohtaa: SHUTDOWN=poweroff -> savestate
Kopioin tämän jälkeen tiedoston /srv/salt hakemistoon ja poistin ohjelman:
– sudo cp /etc/default/virtualbox /srv/salt
– sudo apt-get purge virtualbox
Tämän jälkeen loin /srv/salt hakemistoon tilan virtualbox.sls:
– sudoedit virtualbox.sls

Kokeilin vielä, että tila meni lävitse komennolla:
– sudo salt ‘*’ state.apply virtualbox

Kuten kuvasta näkyy, kaikki kohdat menivät oikein lävitse ja file.managed kohdasta DIFF näyttää mitä muutoksia on tehty + ja – merkein. Myös service on käynnistynyt uudelleen, sillä /etc/default/virtualbox tiedostoon oli tehty muutoksia.
Testasin avata terminalin kautta virtualboxin, jotta huomasin sen toimivan oikein komennolla virtualbox.

Tehtävän tekeminen loppui 27.4.2020 klo 16 ja siihen meni yhteensä aikaa noin 4h.
Lähteet:
ClamAV
https://www.clamav.net/documents/configuration
Edellisen opiskelija tehtävä
https://hannukankkunen.wordpress.com/2018/12/10/palvelinten-hallinta-h3/
Linode
https://www.linode.com/docs/security/using-fail2ban-to-secure-your-server-a-tutorial/