Tag Archives: ssh

Linux Palvelimena kotitehtävä 1

Ensimmäisenä Linux palvelimena-kurssin kotitehtävän oli tehdä jokin koe Työasemat ja tietoverkot kurssilta. (http://terokarvinen.com/2012/linux-koe-tyoasemat-ja-tietoverkot-25)

Muistellaan syksyä 2011 kun aloitin opinnot Haaga-Heliassa. Muistaakseni  meidän silloinen Linux-koe oli hyvinkin erilainen, kuin nuo kokeet mistä sai valita.

Aivan ensimmäiseksi aloitin työn lataamalla uusimman version Xubuntusta (13.10)  ja asentamalla tämän virtuaalisesti VirtualBoxin avulla. Keskusmuistia ko. virtuaalixubulle laitoin pari gigatavua, jolla luulisi pärjäävän mainiosti tämän harjoituksen ajan.

Asennuksessa luonnollisesti kysytään käyttäjätunnusta ja salasanaa sekä näppäimistön ulkoasua.

Asennus kesti noin pari minuutti ja tämän jälkeen kirjauduin käyttäjällä (esa) sisään ja ensitöikseni avasin terminalin.

Aivan ensimmäiseksi haluan päivittää kaikki mahdolliset paketit mitä olisi tarjolla ja se onnistuu seuraavalla komennolla:

 sudo apt-get update  (ei tarvitse sudoa jos rohkeasti rootilla sisään)

Jos haluttaisiin päivittää kaikki ohjelmat ajan tasalle, onnistuisi se “sudo apt-get upgrade” komennolla.

Tehtävässä sanotaan, että tekstinkäsittelyä ja weppisurffailua varten tarvitaan jotkin pätevät ohjelmat. Hieman googlen avulla katsoin, että Libreofficehan olisi kätevä ratkaisu tehtävää ajatellan. Asennetaan se alla olevalla komennolla, tämäkin terminaalin kautta.

sudo apt-get install libreoffice

Asennuspaketti oli vajaat 388MB pieni joten latauksessa ja asennuksessa ei kauaa kestänyt. LibreOffice paketista löytyy Writer niminen ohjelma jolla periaatteessa tekstinkäsittelyn pitäisi onnistua ilman ongelmia.

Weppisurffailun hoitaa Firefox joka löytyy jo ilman mitään asentelua.

Seuraavana tehtävälistassa on luoda neljän työntekijän käyttäjätunnukset vahvoilla salasanoilla varustettuna. Salasanat toimitetaan printattuina paperilappuina ko. käyttäjien luokse.

sudo adduser “haluamasi nimi”

Ylläolevan komennon avulla luodaan käyttäjätilit helposti. Käytin tunnuksessa 2 ensimmäistä kirjainta etu- sekä sukunimestä. Einari Vähäkäähkästä syntyi siis käyttäjätunnus eiva. Toistetaan tämä jokaiselle käyttäjälle.

Jotta voisi php-kotisivuja kehittää etäkäyttöyhteydellä, tarvitsee asentaa ainakin Apache ja SSH-serveri. Asennetaan näistä tuo SSH ensin ja testataan yhteys.

sudo apt-get install openssh-server

Testataan toimiiko ssh-yhteys.

 ssh esa@localhost

 Hyväksytään avain ja laitetaan salasana, yhteys saatu.

Apachen ja php5:n asennus:

 sudo apt-get install apache2

sudo apt-get install php5

sudo apt-get install libapache2-mod-php5

sudo /etc/init.d/apache2 restart

Selaimeen osoiteriville localhost ja saadaan “It works!” teksti.

Sallitaan käyttäjien kotihakemistot

sudo a2enmod userdir

Asennetaan LAMP-server ja phpmyadmin toiminto

sudo apt-get install tasksel

 

sudo tasksel install lamp-server

Lamp serverin asennuksessa pyydettiin luomaan MySql adminin salasanaa.

Alla PHPmyAdminin asennus

sudo apt-get install phpmyadmin

 

sudo apt-get install php5-gd

Luodaan symbolinen linkki

sudo ln -s /usr/share/phpmyadmin/ /var/www/phpmyadmin

Käynnistetään apachepalvelin uudestaan

sudo service apache2 restart

Luodaan käyttäjille public_html hakemisto omaan kotihakemistoonsa ja sinne index.php. Demonstroin tämän yhden käyttäjän osalta (joka kuitenkin tehtiin jokaisella käyttäjällä).

lela@localhost

 

mkdir public_html

 

cd public_html

 

nano index.php

index tiedostoon laitoin <?php echo ‘<p> Lelan kotihakemisto</p>’; ?>

Sivu kyllä toimii, mutta en tiedä miksi php koodi tulostaa sen muotoon “user hakemisto ‘; ?>”

Scriptin luonti joka näyttää vapaan levytilan ja koneen ip-osoitten.

nano mystatus

 

#!/bin/bash

df -h

hostname -I

Tämän jälkeen laitoin mystatus scriptiin oikeudet, jotta käyttäjät voivat sitä ajaa.

chmod 755 mystatus

Koska yrityksessä on vain neljä työntekijää, kopioin tuon mystatuksen käsin jokaisen heidän kotihakemistoon.

sudo cp mystatus /home/user

Ylläoleva komento suoritettiin siis jokaisen käyttäjän kotihakemistoon ja sen ajaminen luotujen oikeuksien ansiosta onnistui.

Scriptin testaus

bash mystatus

En osannut tehdä tuota, että vain yhdellä käyttäjällä olisi oikeudet MySQL phpmyadminiin.

 Linkkejä joita käytin apuna:

http://terokarvinen.com/2009/command-line-basics-4

http://www.howtogeek.com/howto/ubuntu/installing-php5-and-apache-on-ubuntu/

http://www.othworld.info/2013/03/how-to-install-lamp-w-phpmyadmin-on.html