LINUX PALVELINTEN HALLINTA – TEHTÄVÄ H2 – TOPI MANNINEN

Copyright Topi Manninen, GNU GENERAL PUBLIC LICENSE – GPL 3

Raportti on kirjoitettu kotitehtävien dokumentointia ajatellen ja välivaiheet voivat sisältää virheitä ja virheiden korjauksia. Teksti saattaa sisältää tarkoituksellisesti virheellisiä komentoja tai testausta. Älä seuraa tätä ohjeena ilman varmistamista mikä on tehtävän tarkoitus ja haluttu lopputulos.

(H2 tiistairyhmän tehtävä)

 

Tehtävä on tehty ja raportoitu kahtena arkipäivänä 31.10.2018 (keskiviikko) ja 01.11.2018 (torstai).
Tehtävissä näkyvä kellonaika oikealla yläkulmassa on paikkaansapitävä Suomen sen hetkiseen kelloon.  Tehtävät ovat tehty Xubuntu 16.04.01 LTS 64-bit käyttöjärjestelmällä Virtualbox-ympäristössä.

Saltin asennus

Yksityiskohtaisemman (sisältää enemmän kuvia ja avaavia selityksiä) version voit lukea aikaisemmasta tehtävästäni: salt-h1

Master:

salt1.png

Slave:

salt2.png

Käytetyt komennot:

sudo apt-get update
sudo apt-get install -y salt-master
sudo apt-get install -y salt-minion
hostname -I
sudoedit /etc/salt/minion
echo "tyhjennys" | sudo tee /etc/salt/minion
sudoedit /etc/salt/minion

 

salt3.png
IP-osoite hostname -I komennosta, vapaavalintainen yksilöllinen id.
sudo systemctl restart salt-minion
sudo salt-key -A
sudo salt '*' grains.item id

 

salt4.png


 

Käyttäjien kotisivut toimimaan Apachella

Yksityiskohtaisemman (sisältää enemmän kuvia ja avaavia selityksiä) version voit lukea aikaisemmasta tehtävästäni: Tehtävä H4 – Kohta B)

Ensin manuaalisesti:

apache5.png

apache6.png

Seuraavaksi ajoin komennot:

mkdir ~/public_html; echo "Placeholder" | sudo tee /var/www/html/index.html
touch ~/public_html/index.html
echo "Tz kotihakemisto!" | tee ~/public_html/index.html
cat ~/public_html/index.html

 

apache7.png

apache8.png

sudo a2enmod userdir
sudo systemctl restart apache2

apache9.png

 

Sitten automatisoidusti Saltilla:

apache-automation11.png

apache-automation10.png

apache-automation12.png
Etsin komennolla find -printf ”%T+ %p\n” | sort | tail viimeisiä muutoksia etc:n alla.

Komento on lainattu Tero Karvisen Apache-kotihakemisto-ohjeesta (linkki lähdelistassa).

apache-automation13.png
Nämä tiedostot pitää linkittää mods-enablediin mods-availablesta symlinkillä saltin avulla.
apache-automation14.png
Testasin että sls-tiedosto toimii ja että se asentaa Apachen, jos sitä ei jo olisi.

apache-automation15.png

Koodi on Tero Karvisen Apache-kotihakemisto-ohjeesta (linkki lähdelistassa).

apache-automation16.png

apache-automation17.png
Success! Kaikki näyttää toimivan.
apache-automation18.png
Aika varmistaa että salt tekee työtä käskettyä ja poistetaan Apache2.

apache-automation19.png

apache-automation20.png
Jep, rikki on.
apache-automation21.png
Ajetaan sudo salt ’*’ state.highstate

apache-automation22.png

apache-automation23.png
Muutoksia tuli ja kaikki näyttää pelittävän.

apache-automation24.png

apache-automation25.png

 

 

 

Loistavaa, Apachen ja käyttäjän kotihakemiston konfigirointi onnistui saltilla!


 

PHP:n asennus ja konfigurointi

Manuaalisesti:

php19.png

php20.png
Kommentoimme viisi alinta riviä tiedostossa /etc/apache2/mods-available/php7.2.conf, jotta php toimii myös käyttäjien kotihakemistoissa.
php21.png
Palvelu pitää käynnistää uudelleen.

php24.png

php22.png

 

php23.png

 Automatisointi:

php-automation26.png

php-automation25.png

php-automation27.png

php-automation28.png
Oi voi, viittasin väräään sijaintiin, korjataanpa.
php-automation29.png
Tiedostohan löytyy mods-available kansiosta.
php-automation30.png
Onnistui, aika siis testata.
php-automation31.png
Poistetaan php-konfiguraatiot ja seurataan laittaako salt ne paikalleen.
php-automation32.png
Rikki menee.
php-automation33.png
ajoin sudo salt ’*’ state.highstate ja saimme 8 onnistunutta, joista kaksi muutosta tapahtui PHP:ssa.

 

php-automation34.png
Ja kaikki on taas kunnossa!

 

Esimerkki kotisivu uusille käyttäjille Salt & Skel

Manuaalisesti:

skel35.png

skel36.png

skel37.png
Loin uuden käyttäjän Topi, jotta näen kopioituuko public_html kansio ja sen sisällä oleva index.php
skel38.png
Asensin ssh:n (openssh-server) että pääsen kirjautumaan nopeasti käyttäjille.

skel39.png

skel40.png
Hyvä, homma toimii. Voimme siirtyä automatisoimaan toimintaa.

 

Automaattisesti:

skel-automatisation41.png

skel-automatisation42.png

skel-automatisation43.png
Lisätään skel top.sls– tiedoston listaan.
skel-automatisation44.png
index.php puuttui source-kansiostani, se siirretään sinne seuraavaksi.

skel-automatisation45.png

skel-automatisation46.png
Kaikki näyttää toimivan saltin puolesta, poistetaan skel-kansiosta public_html ja index.php tiedosto sen sisältä samalla.

skel-automatisation47.png

skel-automatisation48.png
Ja /etc/skel rakenne korjaantui vaaditun mukaiseksi.

skel-automatisation49.png

skel-automatisation50.png

skel-automatisation51.png


Virtual hosts saltin avulla

Manuaalisesti:

virtualhosts52.png

virtualhosts53.png
Koodi on otettu edellisestä tehtävästä, joka on ottanut mallia Janne Variksen virtualhosts-esimerkistä.

virtualhosts54.png

virtualhosts55.png
Etsitään muutoksia, jotka syntyy kun ajetaan komento a2ensite.

virtualhosts56.png

virtualhosts57.png
Meidän täytyy tehdä tällä tiedostolle sama kuin mikä tehtiin aikaisemmin Apachen kotihakemisto-konfiguraatiossa, jos haluan automatisoida tämän Saltilla.

virtualhosts58.png

Automaattisesti:

virtualhosts-automatisation59.png

virtualhosts-automatisation60.png

virtualhosts-automatisation61.png

virtualhosts-automatisation62.png

virtualhosts-automatisation63.png
Virheilmoitus
virtualhosts-automatisation64.png
Tästä puuttui ”:”.
virtualhosts-automatisation65.png
Lisää virheitä.
virtualhosts-automatisation66.png
Koska nimi ei saa olla sama kuin aikaisemmin käytössä oleva, muokkaan sitä hiukan.

virtualhosts-automatisation67.png

virtualhosts-automatisation68.png

virtualhosts-automatisation69.png

virtualhosts-automatisation70.png

virtualhosts-automatisation71.png

virtualhosts-automatisation72.png
Koodi toimi, mutta huomasin että tiedosto menee väärään kansioon. Symlink meni kansioon mods-enabled eikä sites-enabled.

virtualhosts-automatisation73.png

virtualhosts-automatisation74.png
Poistetaan uudelleen kaikki ja katsotaan toimiiko homma nyt.

virtualhosts-automatisation75.png

virtualhosts-automatisation77.png

virtualhosts-automatisation76.png
Hyvä, nyt kaikki on oikein ja testattu.

 

MOTD Banner Saltin avulla

Manuaalisesti:

ssh-banner78.png
/etc/ssh/sshd_config

ssh-banner79.png

ssh-banner80.png

Automaattisesti:

ssh-banner-automatisation81.png
Kopioin pohjan ja muokkaan sitä.

ssh-banner-automatisation82.png

ssh-banner-automatisation83.png

ssh-banner-automatisation84.png
Ei virheilmoituksia, testataan.
ssh-banner-automatisation85.png
Poistin koko konfiguraatiotiedoston ja nyt ssh-yhteys ei toimi.
ssh-banner-automatisation86.png
Ja näin banner-viesti näkyy jälleen sudo salt ’*’ state.highstate komennon jälkeen.

 

Lähteet:

Tero Karvisen Palvelinten hallinta ict4tn022 3004- kurssin tiistaipäivän opetus.

Kotitehtävät:
http://terokarvinen.com/2018/aikataulu-%e2%80%93-palvelinten-hallinta-ict4tn022-3004-ti-ja-3002-to-%e2%80%93-loppukevat-2018-5p, Tero Karvinen, 22.10.2018

Salt asennusohjeet ja peruskäyttö:
http://terokarvinen.com/2018/salt-quickstart-salt-stack-master-and-slave-on-ubuntu-linux, Tero Karvinen, 28.03.2018.
Ja Linux palvelinten hallinta h1-raporttini.

Apache käyttäjän kotihakemisto automaattisesti sls-koodi & yleishyödylliseen etsintään soveltuva find-komento:
http://terokarvinen.com/2018/apache-user-homepages-automatically-salt-package-file-service-example, Tero Karvinen, 03.04.2018.

Salt-dokumentaatio kansion hallintaan:
https://docs.saltstack.com/en/latest/ref/states/all/salt.states.file.html

Mahdolliset vanhat kotitehtäväni, jotka löytyvät tältä wordpress-sivustolta.

Mainokset

Vastaa

Täytä tietosi alle tai klikkaa kuvaketta kirjautuaksesi sisään:

WordPress.com-logo

Olet kommentoimassa WordPress.com -tilin nimissä. Log Out /  Muuta )

Google+ photo

Olet kommentoimassa Google+ -tilin nimissä. Log Out /  Muuta )

Twitter-kuva

Olet kommentoimassa Twitter -tilin nimissä. Log Out /  Muuta )

Facebook-kuva

Olet kommentoimassa Facebook -tilin nimissä. Log Out /  Muuta )

Muodostetaan yhteyttä palveluun %s