Kaikki tehtävät palautettavaksi

Alla linkit kaikista kurssin läksyistä, sisältäen miniprojektin.

https://miikazitting.wordpress.com/2018/10/30/palvelinten-hallinta-viikko-1/

https://miikazitting.wordpress.com/2018/11/06/palvelinten-hallinta-viikko-2/

https://miikazitting.wordpress.com/2018/11/13/palvelinten-hallinta-viikko-3/

https://miikazitting.wordpress.com/2018/11/21/palvelinten-hallinta-viikko-4/

https://miikazitting.wordpress.com/2018/11/28/palvelinten-hallinta-viikko-5/

https://miikazitting.wordpress.com/2018/12/05/palvelinten-hallinta-viikko-6/

https://miikazitting.wordpress.com/2018/12/12/palvelinten-hallinta-viikko-7-miniprojekti/

Advertisements

Palvelinten hallinta Viikko 7 [Miniprojekti]

Projektini moduuli ja koko salt stackini löytyy kokonaisuudessaan GitHubistani.


Mitä projekti sisältää

Tein oman salt moduulin joka tekee seuraavat asiat:

Yhteisesti ajaa saltilla “Hello World” komennon luoden tekstitiedoston kotihakemistoon käyttöjärjestelmästä riippumatta.

Linuxille: (moduulin osat githubista ufw, sekä ssh)

  • Asettaa linuxille ssh demonin, sekä muuttaa oletusportin pois portista 22.
  • Asentaa, muuttaa sääntölistan, sekä käynnistää tulimuurin kyseiselle koneelle.

Windowsille: (githubin salt stackistä osio windows)

  • Asentaa chocolatey paketinhallinnan windowsille
  • Asentaa chocolateyn avulla ohjelman “Mumble” windowsille.
  • Muokkaa Mumblen asetustiedostoa (.sqlite tietokanta) siten että ohjelman avatessa käyttämäni serverit löytyvät listasta, sekä asettaa käyttäjänimen automaattisesti haluamakseni.

 

Palvelinten hallinta Viikko 6

Harjoitus H6

Tehtävät ovat suoraan kopioitu opettajamme Tero Karvisen sivuilta.

http://terokarvinen.com/2018/aikataulu-%E2%80%93-palvelinten-hallinta-ict4tn022-3004-ti-ja-3002-to-%E2%80%93-loppukevat-2018-5p

Viikotehtävä: Asenna LAMP Saltilla.


Suoritan tehtävät omalla pöytäkoneellani, sekä Linux Palvelimet kurssilla vuokraamallani virtuaalipalvelimella DigitalOceanista. Molemmissa järjestelmissä käyttöjärjestelmänä pyörii Xubuntu 18.04.01 LTS. Pöytäkoneeni Linux pyörii livetikulta.

Koneiden rauta nähtävissä Viikon 1tehtävissä.


Aloitin päivittämällä paketinhallinnan, sekä lataamalla Shutterin kuvakaappauksia varten.

Apache2:

sudo apt-get update

sudo apt-get -y install shutter

Seuraavaksi ajoin scriptini GitHubista joka tekee pöytäkoneestani salt-orjan virtuaalipalvelimelleni.

https://github.com/MiikaZitting/saltsetup

wget https://raw.githubusercontent.com/MiikaZitting/saltsetup/master/startup.sh

bash startup.sh

Hyväksyin pöytäkoneeni avaimen virtuaalipalvelimeltani:

sudo salt-key -A

Ajoin GitHubista löytyvän Apache2 moduulin, joka löytyi virtuaalipalvelimeni /srv/salt/ kansiosta ja varmistin että tämä asentui oikein. Kun ajo oli mennyt onnistuneesti läpi, tein pöytäkoneellani käyttäjälle public_html kansion johon index.html tiedoston.

sudo salt ‘*’ state.highstate

mkdir public_html

cd public_html

nano index.html

Selection_001


PHP:

Sain tässäkin käytettyä jo olemassa olevaa Viikolla 2 tekemää php moduuliani joka löytyy myös GitHubistani.

Selection_002.png

Moduulissa ongelmana on että apache2 ei ole aikaisemmin käynnistynyt automaattisesti uudelleen. Palaan tähän ongelmaan kunhan olen kaikki LAMP stackin palaset saanut ensiksi omiksi moduuleikseen.

Muutin pöytäkoneella olevan public_html kansiossa sijaitsevan index.html tiedoston php muotoon ja sisällön muutin vastaavaksi:

Selection_003.png

Ajettuani php moduulin orjalleni ja käsin käynnistettyä apache demonin, tulokset sivulle olivat vastaavia:

Selection_004

Eli php toimii oikein tämän pohjalta, palaan tuohon apache2 demonin uudelleenkäynnistymis ongelmaan vielä myöhemmin.


Mariadb:

Aloitin tietokantapalvelimen asentamisen ja moduulin luonnin virutaalipalvelimellani. Ensimmäiseksi asensin mariadb clientin, serverin, sekä php modulen mariadb:hen jotta php:n avulla voitaisiin tietokannasta hakea tietoja weppisivulla.

sudo apt-get -y install mariadb-client mariadb-server

sudo apt-get -y install php-mysql

Sitten kirjauduin mariadb:hen roottina, sekä tein tietokannan, sekä tietokannalle käyttäjän. (‘XXXXX’ merkkien tilalle salasana joka käyttäjälle halutaan asettaa)

sudo mariadb -u root

CREATE DATABASE saltbase;

GRANT ALL ON saltbase.* TO saltbase@localhost IDENTIFIED BY ‘XXXXXXXX’;

Seuraavaksi automatisoin kirjautumisen mariadb:hen.

nano .my.cnf

  • [client]
    user=”saltbase”
    database=”saltbase”
    password=”XXXXXXXX”

Nyt kirjoittamalla vain komennon “Mariadb” avaa ohjelma suoraan saltbase käyttäjän sisään.

MariaDB [saltbase]> CREATE TABLE todo (id INT AUTO_INCREMENT PRIMARY KEY, task VARCHAR(255));
Query OK, 0 rows affected (0.00 sec)

MariaDB [saltbase]> SHOW TABLES;
+——————–+
| Tables_in_saltbase |
+——————–+
| todo |
+——————–+
1 row in set (0.00 sec)

Tässä vaiheessa taidot yksinkertaisesti loppuvat kesken. Sain moduulin luotua joka asentaa tarvittavat paketit, mutta tuon .my.cnf tiedoston hallitseminen saltilla ei vain tunnu onnistuvan omalla kohdallani. Tämä käytiin tunnilla 5 minuutissa, eikä opettajan sivuilla tähän ohjeita valitettavasti löydy.

Palvelinten hallinta Viikko 5

Harjoitus H5

Tehtävät ovat suoraan kopioitu opettajamme Tero Karvisen sivuilta.

http://terokarvinen.com/2018/aikataulu-%E2%80%93-palvelinten-hallinta-ict4tn022-3004-ti-ja-3002-to-%E2%80%93-loppukevat-2018-5p

a) Säädä Windowsia Saltilla siten, että Windows on orja ja Linux on herra.

b) Säädä Windowsia Saltilla ilman herra-orja rakennetta (salt-call –local)

c) Muuta jonkin Windows-ohjelman asetuksia Saltilla. Monia ohjelmia voi säätää laittamalla asetustiedoston paikalleen, aivan kuten Linuxissa.

d) Valitse aihe omaksi kurssityöksi ja varaa se kommenttina aikataulusivun perään.

e) Vapaaehtoinen: tee omaan käytössä olevaan (Windows, jos käytät Windowsia) koneeseesi Saltilla jokin säätö, josta on sinulle hyötyä jokapäiväisessä elämässä.


Suoritan tehtävät omalla pöytäkoneellani, sekä Linux Palvelimet kurssilla vuokraamallani virtuaalipalvelimella DigitalOceanista. Virtuaalipalvelimella pyörii Xubuntu 18.04.01 LTS. Pöytäkoneeni käyttää Windows 10 Pro käyttöjärjestelmää, josta etähallitsen virtuaalipalvelintani ssh yhteydellä PuTTya käyttäen.

Koneiden rauta nähtävissä Viikon 1tehtävissä.


a) Säädä Windowsia Saltilla siten, että Windows on orja ja Linux on herra.

Pöytäkoneeltani ei löytynyt vielä Windowsista salt-minion palvelua joten latasin sen alla olevasta linkistä. Masterillani salt versio oli 2017-07-04

https://repo.saltstack.com/windows/

***HUOM TARKISTA SALT VERSIONUMERO MASTERILTA, MIKÄLI VERSIOT EIVÄT OLE MINIONILLA JA MASTERILLA SAMAT VOI TULLA ETEEN ONGELMIA***

Capture1.PNG

Seuraavaksi asensin salt-minion palvelun jonka latasin.

Asennuksen yhteydessä ohjelma pyysi syöttämään master koneen IP-osoitteen, sekä antamaan minionille nimen.

Capture

Asennuksen jälkeen käynnistin palvelun ja otin SSH yhteyden virtuaalipalvelimelleni PuTTylla. 

Capture4

Ja sieltähän se pyyntö olikin jo tullut. Sitten testasin että toimiiko yhteys masterilta minionille.

Capture5.PNGKomento antoi minulle vastauksen pöytäkoneeltani onnistuneesti, IP-osoite tietoturvasyistä peitetty. Minioni raspberry-pi3 ei ollut verkkoyhteydessä joten tämän vuoksi  “No response”.


b) Säädä Windowsia Saltilla ilman herra-orja rakennetta (salt-call –local)

Avasin powershellin pöytäkoneellani sekä annoin seuraavat komennot:

Capture6.PNG

Paikallisesti salt-call toimi oikein ja näytti oikean ip osoitteen sekä hostnamen.

Testasin myös ajaa lokaalisti saltin highstateen, sekä ilman lokaalia.

Capture7.PNG

Koska paikallisesti ei ole koneellani mitään salt top tiedostoa niin komento ei tehnyt mitään. Mutta kun hain master koneeltani, ajoi se luomani hello moduulin onnistuneesti. 

Moduuli kirjoittaa .txt tiedoston c:\ hakemistoon, moduulin toimii Linux, sekä Windows ympäristössä.

Capture8.PNG


c) Muuta jonkin Windows-ohjelman asetuksia Saltilla. Monia ohjelmia voi säätää laittamalla asetustiedoston paikalleen, aivan kuten Linuxissa.

Latasin ensin git:in windowsilleni saltin avulla.

sudo salt ‘*WIN’ chocolatey.install gitsudo salt ‘*WIN’ chocolatey.install git

Seuraavaksi avasin Gitin koneellani ja asetin käyttäjänimen, sekä sposti osoitteen. Näistä tuli kohteeseen C:\Users\Miika .gitconfig niminen tiedosto. Tästä tiedostosta löytyi seuraava teksti:

[user]
email = a1704460@myy.haaga-helia.fi
name = Miika Zitting

Eli tämän tiedoston kopioimalla on mahdollista asettaa git:iin käyttäjänimi & salasana. 

Loin salt masterilleni /srv/salt/gitconf/ tiedoston, jonne init.sls, sekä jonne kopioin .gitconf tiedoston windowsiltani.

Lisäsin top.sls tiedostoon sarakkeen gitconf moduulille, ja lähdin testaamaan. 

Ensimmäiseksi poistin .gitconf tiedoston windowsiltani, sekä avasin gitin varmistaakseni ettei sieltä käyttäjätietoja löydy.

Capture11

Sitten ajoin moduulin ja toivoin parasta.

Toisella yrittämällä sain aikaan onnistuneen ajon. Ensimmäinen ajo tyssäsi kirjoitusvirheeseen file managedin lokaatiossa.

Capture12

Ja lopulta avattua gitin oli käyttäjätiedot tulleet uudesta .gitconfig tiedostosta.

Capture13


d) Valitse aihe omaksi kurssityöksi ja varaa se kommenttina aikataulusivun perään.

Capture9- OMA MODUULI.PNGMuutokset vielä mahdollisia oman moduulin rakenteeseen ^^

Palvelinten hallinta Viikko 4

Harjoitus H4

Tehtävät ovat suoraan kopioitu opettajamme Tero Karvisen sivuilta.

http://terokarvinen.com/2018/aikataulu-%e2%80%93-palvelinten-hallinta-ict4tn022-3004-ti-ja-3002-to-%e2%80%93-loppukevat-2018-5p

a) Tee skripti, joka tekee koneestasi salt-orjan.

Tee joko b tai c:

b) Lokianalytiikka. Kokeile viimeisintä versiota Jussin, Einon ja Sakun lokien analytiikasta. Täytä tai kommentoi GitHub-sivulla jotain bugia tai kehitysehdotusta. (Jos teit tätä tunnilla, tee uusi bugiraportti/kommentti uusimmasta versiosta) https://github.com/jisosomppi/log-analysis/tree/master/salt

c) Vagrant. Asenna Vagrant. Kokeile jotain uutta kuvaa Atlaksesta. Huomaa, että kuvat ovat vieraita binäärejä, ja virtuaalikoneista on mahdollista murtautua ulos. Jokohan Ubuntun virallinen  Suodatin: VirtualBox, järjestys: Most downloads. https://app.vagrantup.com/boxes/search?provider=virtualbox

d) Ota tunnille mukaan ylimääräinen muistitikku. Jos osaat ja sinulla on Windowsin lisenssejä, tee siitä Windows 10 asennustikku. Levykuvia saa Microsoftin kotisivulta “download windows iso” ja koulun palveluista. Tikkua käytetään joko ensi tunnilla tai sitä seuraavalla.


Suoritan tehtävät omalla pöytäkoneellani, sekä Linux Palvelimet kurssilla vuokraamallani virtuaalipalvelimella DigitalOceanista. Molemmissa järjestelmissä käyttöjärjestelmänä pyörii Xubuntu 18.04.01 LTS. Pöytäkoneeni Linux pyörii livetikulta.

Koneiden rauta nähtävissä Viikon 1 tehtävissä.

Asensin pöytäkoneelleni Shutter ohjelman kuvakaappauksia varten.


a) Tee skripti, joka tekee koneestasi salt-orjan.

Sain scriptini valmiiksi jo viime opetuskerran aikana, joten käytin sitä tässä tehtävässä.

Scrpti löytyy kokonaisuudessaan GitHubistani.

Scripti ajaa koneelle suomalaisen näppäinasettelun, päivittää paketinhallinnan, asentaa salt-minionin, sekä tekee muutokset /etc/salt/minion tiedostoon asettaen koneen jolla scripti ajetaan virtuaalipalvelimeni orjaksi.

Selection_001.png

Ajoin scriptin seuraavilla komennoilla:

cd /bin/

sudo wget https://raw.githubusercontent.com/MiikaZitting/saltsetup/master/startup.sh


sudo chmod ugo+x startup.sh

cd

startup.sh

Päätin ajaa wget:in suoraan /bin/ kansioon jotta komento olisi käytettävissä missä vain hakemistossa, sekä lisäsin scriptiin suoritusoikeudet.

Seuraavaksi otin ssh yhteyden virtuaalipalvelimelleni, josko scriptin ajo olisi onnistunut.

Selection_002.png

Ja olihan se !

Scriptin huono puoli on ainoastaan se että se lisää automaattisesti orjan nimellä “practisepc”. Muutos tähän tulee torstain tunnilla.


c) Vagrant. Asenna Vagrant. Kokeile jotain uutta kuvaa Atlaksesta. Huomaa, että kuvat ovat vieraita binäärejä, ja virtuaalikoneista on mahdollista murtautua ulos. Jokohan Ubuntun virallinen  Suodatin: VirtualBox, järjestys:

Most downloads. https://app.vagrantup.com/boxes/search?provider=virtualbox

Aloitin asentamalla Vagrantin & VirtualBOX:in

sudo apt-get -y install vagrant
sudo apt-get -y install virtualbox

Valitsin kokeiltavaksi kuvaksi Debian/jessie64, sillä en ole debianiin pohjautuvia käyttöjärjestelmiä käyttänyt aikaisemmin.

https://app.vagrantup.com/debian/boxes/jessie64

sudo mkdir debian

cd debian/

sudo vagrant init debian/jessie64

sudo vagrant up

Sain virtuaalikoneen käynnistymään :

Selection_004.png

Seuraavaksi otin ssh yhteyden virtuaalikoneelle:

sudo vagrant ssh

Selection_005.png

Ajoin seuraavaksi wget komennon hakeakseni GitHubin scriptini ja kokeillaakseni sitä debianilla.

wget https://raw.githubusercontent.com/MiikaZitting/saltsetup/master/startup.sh

Muutin vielä komennosta salt minion tiedoston id:n oikeaksi, ettei tuli 2 samannimistä laitetta masterille.

Selection_006.png

Scriptistä toimi kaikki muut osioit oikein, paitsi “setxkbmap” joka oli järjestelmän mukaan unknown command.

Selection_007.png

Ja virtuaalipalvelimenikin näki uuden orjan avaimen hyväksyttävänä.

Debianilla komentoja kokeillessani, sekä tiedostorakennetta tutkiessani huomasin että debian on rakenteeltaan hyvin samantapainen kuin itselleni tutumpi xubuntu.


d) Ota tunnille mukaan ylimääräinen muistitikku. Jos osaat ja sinulla on Windowsin lisenssejä, tee siitä Windows 10 asennustikku. Levykuvia saa Microsoftin kotisivulta “download windows iso” ja koulun palveluista. Tikkua käytetään joko ensi tunnilla tai sitä seuraavalla.

Tämän osion suoritin pöytäkoneellani Windows 10 Pro käyttöjärjestelmässä.

https://www.microsoft.com/fi-fi/software-download/windows10

Latasin kyseisestä linkistä Windowsin Media Creation toolin, jolla saa luotua toimivan Windows 10 asennusmedian.

Muistia ohjelmisto vaatii USB tikulta vähintään 8gb, valitsin Windows 10 käyttöjärjestelmän Englanninkielisen version.

capture1.png

Ohjelma sai USB tikun onnistuneesti luotua. Mielenkiintoinen huomio oli että vaikka olin muistitikulle osioinut 9gb osion niin windowsin usb median luonti työkalu poisti kaikki osioinnit, sekä loi vain yhden osion tätä mediaa varten.

Testauksen suoritan tikulle Torstain tunnilla labran tietokoneille.

Palvelinten hallinta Viikko 2

04-11-2018

Harjoitus H2 – Torstain ryhmä

a) Opiskele yllä aikataulussa olevat artikkelit. (Tätä lukutehtävää ei tarvitse raportoida). Luettava materiaali on kunkin tapaamiskerran kohdalla, esimerkiksi nyt “2. Package-file-server. […] Luettavaa: Karvinen 2018: Pkg-File-Service – Control Daemons with Salt..”

b) Asenna SSH eri porttiin Package-File-Service rakenteella. Käytä service:watch -tekniikkaa niin, että demoni käynnistyy uudelleen, kun asetustiedosto muuttuu. (Vinkki: Pkg-File-Service – Control Daemons with Salt)

c) Asenna Apache käsin niin, että käyttäjien kotisivut näkyvät. Etsi muutetut tiedostot komennolla ‘find /etc/ -printf ‘%T+ %p\n’|sort’. (Muista korjata lainausmerkit oikeiksi, automaattimuotoilu usein sotkee ne). Yritä nyt tehdä tila, joka asettaa nuo tiedostot (file.symlink) paikoilleen. (Katso tarvittaessa: Apache User Homepages Automatically)

d) Eri package-file-service. Tee package-file-service tilalla jokin eri asetus tai asennus kuin tunnilla ja tehtävän muissa kohdissa.


Suoritan tehtävät omalla pöytäkoneellani, sekä Linux Palvelimet kurssilla vuokraamallani virtuaalipalvelimella DigitalOceanista. Molemmissa järjestelmissä käyttöjärjestelmänä pyörii Xubuntu 18.04.01 LTS. Pöytäkoneeni Linux pyörii livetikulta.

Koneiden rauta nähtävissä Viikon 1 tehtävissä.

Tehtäviä varten poistin virtuaalipalvelimelta jo löytyvät asetukset ja asennukset salt-master, sekä apachen osalta. Myös tulimuurin sääntölistalta poistettu salt:in vaatimat portit.

Käytin seuraavia komentoja:

apt-get purge salt-master

sudo ufw delete allow 4506/tcp
sudo ufw delete allow 4505/tcp

sudo apt-get purge apache2

sudo rm -r public_html/

sudo rm /var/www/html/index.html


b) Asenna SSH eri porttiin Package-File-Service rakenteella. Käytä service:watch -tekniikkaa niin, että demoni käynnistyy uudelleen, kun asetustiedosto muuttuu. (Vinkki: Pkg-File-Service – Control Daemons with Salt)

Virtuaalipalvelimellani oli valmiina jo ssh demoni asennettuna, sekä tätä varten tehty tulimuuriin reikä porttiin 22/tcp.

Ensimmäiseksi vaihdoin ssh:n oletusportin porttiin 8888.

Selection_001.png

sudoedit /etc/ssh/sshd_config

sudo systemctl restart ssh

logout

Tämän jälkeen yritin kirjautua ssh yhteydellä uudestaan virtuaalipalvelimelle.

Selection_002.png

En päässytkään kirjautumaan sisään ensiksi oletusporttiin (22), enkä myöskään uuteen porttiin (8888). Tämähän johtui tietysti siitä että unohdin lisätä virtualipalvelimen tulimuuriin allow säännön porttiin 8888.

Jouduin menemään DigitalOceanin sivujen kautta ja avaamaan console yhteyden weppiselaimella palvelimelleni, jotta saisin taas ssh yhteydet pelittämään.

Selection_003.png

Tämän korjauksen jälkeen sain taas ssh yhteyden virtuaalipalvelimelleni porttiin 8888.

Selection_004.png

SALT-Master ja Orja

Latasin ensin virtuaalipalvelimelleni salt-masterin viimeviikon tehtävien ohjeiden mukaisesti.

Master

sudo apt-get -y install salt-master

sudo ufw allow 4505/tcp

sudo ufw allow 4506/tcp

Orja

sudo apt-get -y install salt-minion
sudoedit /etc/salt/minion

  • master: 104.248.162.226
  • id: poytakone

sudo systemctl restart salt-minion

Virtuaalipalvelimelle tuli pyyntö pöytäkoneeltani ja hyväksyin avaimen komennolla:

sudo salt-key -A

Testasin että master-slave yhteys toimi oikein viimeviikolla tekemälläni grains komennolla.

Selection_006.png

SALT SSH state

Tässä osiossa käytin http://terokarvinen.com/2018/pkg-file-service-control-daemons-with-salt-change-ssh-server-port kyseisestä linkistä löytyvää ohjetta, sekä pohjaa sshd.sls tiedostolle.

sudo mkdir /srv/salt/ssh

sudoedit sshd.sls

openssh-server:
 pkg.installed

/etc/ssh/sshd_config:
 file.managed:
   - source: salt://ssh/sshd_config

sshd:
 service.running:
   - watch:
     - file: /etc/ssh/sshd_config

sudo cp /etc/ssh/sshd_config /srv/salt/ssh/

sudoedit sshd_config

# DO NOT EDIT  – this is a managed file, changes will be overwritten

Viimeisin rivi on tärkeä lisätä mikäli jokin tiedosto kopioituu orja koneelle, sillä kaikki orjan tekemät muutokset poistuvat kun master ajaa taas highstaten ja korvaa kaiken /srv/ssh kansiosta löytyvällä.

Seuraavaksi ajoin seuraavan komennon ja katsoin toimiiko uusi ssh state.

sudo salt ‘*’ state.apply sshd

Katsoin tämän pöytäkoneeltani johon state oli ajettu.

Selection_007.png

Lisäsin vielä  pöytäkoneen tulimuuriin säännön portille 8888.

sudo ufw allow 8888/tcp

Seuraavaksi yritin ottaa virtuaalipalvelimeltani ssh yhteyden pöytäkoneeni porttiin 8888. Tämä ei toiminut, mitään ei tapahtunut. Virtuaalipalvelin jää vain miettimään eikä anna mitään error viestiä tai muuta.

Koitin etsiä lokitiedostoista, mistä toimimattomuus voisi johtua, mutta tuloksetta. Lokitiedostoihin ei kerry mitään dataa epäonnistuneesta yrityksestä.

Selection_009

Seuraavaksi koitin kirjautua pöytäkoneellani ssh yhteydellä pöytäkoneeseeni. Tämä onnistui porttiin 8888 normaalisti.

Selection_010.png

Epäilin että sshd_config tiedostossa olisi jotain häikkää. Muutin PermitRootLogin No kohdan “Yes” ja ajaa taas state.apply ssh, mutta tuloksetta. Koitin myös lisätä “#” kyseisen rivin kohdalle ja ajaa state.apply ssh, eikä sekään toiminut. Tälle ongelmalle selvisi syyksi se että kotikoneeni on reitittimen takana, josta tuo portti 8888 ei ole avattu. En halua avata reitittimestäni mitään ylimääräistä, joten tila saa jäädä noin.


 

06-11-2018

Uusi päivä uudet haasteet. Pöytäkoneeni linux on puhdas livetikku boot. Päivitin paketinhallinnan, sekä latasin shutter ohjelman kuvakaappauksia varten. Asensin uudestaan ssh demonin etäyhteyttä varten, sekä asensin salt-minion palvelun uudestaan, johon laitoin virtuaalipalvelimeni masteriksi.

c) Asenna Apache käsin niin, että käyttäjien kotisivut näkyvät. Etsi muutetut tiedostot komennolla ‘find /etc/ -printf ‘%T+ %p\n’|sort’. (Muista korjata lainausmerkit oikeiksi, automaattimuotoilu usein sotkee ne). Yritä nyt tehdä tila, joka asettaa nuo tiedostot (file.symlink) paikoilleen. (Katso tarvittaessa: Apache User Homepages Automatically)

Latasin ensiksi Apachen virtuaalipalvelimelleni, sekä latioin kotisivut näkymään alla vaiheet:

sudo apt-get -y install apache2

echo Default VEX! | sudo tee /var/www/html/index.html

This slideshow requires JavaScript.

Apache toimi kuten piti, sekä vaihdoin default sivun pois. Seuraavaksi laitoin käyttäjän kotisivut näkymään:

mkdir public_html

cd public_html/

nano index.html

sudo a2enmod userdir

sudo systemctl restart apache2

Selection_004.png

Nyt käyttäjänkin kotisivut toimivat ja näkyivät oikein.

Seuraavaksi rupesin tekemään tilaa joka tekisin automaattisesti käyttäjän kotisivut näkyviin.

find /etc/ -prinfind /etc/ -printf ‘%T+ %p\n’|sorttf ‘%T+ %p\n’|sort

Selection_005.png

Kopioin pohjan sls tiedostoon suoraan TÄSTÄ linkistä.

Selection_006

Selection_008.png

Sitten ajoinkin jo seuraavan komennon ja tulokset olivat vastaavia :

sudo salt ‘*’ state.apply apache

This slideshow requires JavaScript.

Apache asentui oikein automaattisesti pöytäkoneele, sekä muokkasi apachen default pagen omaan tekstiini. Sivu vastasi localhostista ja ip:stä yllä olevan kuvan tavalla.

Sitten testasin vielä käyttäjällä omien kotisivujen luomista:

Selection_010

Kotisivut näkyvät käyttäjälle suoraan, eli salt tila on onnistuneesti luotu. YIHUU


d) Eri package-file-service. Tee package-file-service tilalla jokin eri asetus tai asennus kuin tunnilla ja tehtävän muissa kohdissa.

Lähdin tekemään tilaa joka asentaa php moduulin apacheen, ja tätä kautta sallii php:n ajon weppisivulle.

Ensimmäiseksi latasin virtuaalipalvelimelleni php moduulin.

sudo apt-get -y install php

Seuraavaksi enabloin php:n ajon sivuilla apachen asetuksista.

cd /etc/apache2/mods-available/

sudoedit php7.2.conf

“#” risuaidoitin IF moduulin conf tiedostosta.

Seuraavaksi käynnistin apachen uudelleen ja tein public_html kansiossa olevasta index.html tiedostosta php tiedoston.

sudo systemctl restart apache2

sudo rm index.html

nano index.php

miika@Ubuntu-LinuxPalvelimet:~/public_html$ cat index.php
<?php

print “hello world!”

?>

Selection_011.png

Php toimii oikein weppisivulla, joten seuraavaksi tein tästä tilan.

cd /srv/salt/

sudo mkdir php

cd php/

sudoedit init.sls

Selection_012.png

Seuraavaksi kopioin php7.2.conf tiedoston apachen mods-available kansiosta, lisäsin myös oikeudet muokata varmuuden vuoksi.

sudo cp /etc/apache/mods-available/php7.2.conf /srv/salt/php/php7.2.conf

sudo chmod ugo+x php7.2.conf

Ajoin tilan seuraavaksi orjalle

sudo salt ‘*’ state.apply php

Tila asentui oikein pöytäkoneelleni, joten tein pöytäkoneen public_html/index.html tiedostosta php tiedoston. Indexi täytyy tehdä itse, sillä tila ei tee automaattisesti uutta php indexi tiedostoa ainoastaan mahdollistaa php:n käytön.

Selection_013.png

Seuraavaksi koitin weppiselaimella toimiiko sivu, ja eihän se toiminut….

Tila ei käynnistä apachea uudestaan, eli uudet php asetukset eivät tule käyttöön.

Käynnistin apachen manuaalisesti uudestaan ja tulos on vastaava:

sudo systemctl restart apache2

Selection_014.png

It’s ALIVE ! Php tilan asetukset ovat onnistuneesti ajettu pöytäkoneelleni saltin avulla.