PupeSoftin asennus

edit 1:PupeSoftin kokeilu jäi loppujen lopuksi vain haaveeksi, sillä lopputuloksena oli vain valkoinen sivu. Php:n tai MySQL:n puuttumisesta ei voi olla kyse, joten ongelmaa pitää miettiä vielä opettajan, Tero Karvisen, tai vaikka Devlab:n työntekijöiden kanssa, jos heillä riittäisi aikaa auttaa opiskelijoitakin.

edit 2: PupeSoftin toimivuus olikin kiinni oikeinkirjoituksesta. Olin salasana.php -tiedostoon kirjoittanut käyttäjänimen väärin, jolloin tietokantayhteys epäonnistui. Pupesoft vaikuttaa mielenkiintoiselta, joten tarkoituksena olisi perehtyä enemmänkin sen toimivuuteen. Ja mahdollisesti oman “yrityksen” luominen.

Käyttöjärjestelmänä minulla on Linux Mint 14, eli komennot ovat samoja kuin esimerkiksi Xubuntussa tai Ubuntussa olisi.

PupeSoftin asennusohjeet on tehty Red Hat:lle, joten minun komennot ovat hieman erilaisia kuin alkuperäisessä ohjeessa. Ja kokeilen myös hyvin suppeasti tässä ohjeessa PupeSoftin toimivuutta. Kaikki toimenpiteet löytyvät siis täältä.

LAMP:n asennus

Aloitin asentamalla LAMP-kokonaisuuden hiukan PupeSoft:n asennusohjeita muokaten. En aivan tiennyt mihin kaikkia paketteja tarvitaan, esimerkiksi php-paketti, koska ainakin Apache2 kanssa php:n saa toimimaan asentamalla mod-libapache2-php5 -paketin.

$ sudo apt-get update
$ sudo apt-get install apache2 libapache2-mod-php5 git mysql-server openssh-server     # mysql-server asentaa myös mysql-client:n
$ sudo a2enmod userdir    # Otetaan käyttäjän kotihakemisto käyttöö. Täytyy myös tehdä public_html -kansio kotihakemistoon
$ sudo service apache2 restart     # Käynnistetään apache2 -palvelu uudestaan

Otetaan php käyttöön muokkamalla alla olevaa tiedostoa

$ sudoedit /etc/apache2/mods-enabled/php5.conf     # Ei ole mitään syytä käyttää 
komentoa "sudo nano", koska sudoedit toimii nanon tavalla muttei sotke oikeuksia.

# COMMENTED OUT by AJ 07.03.2013
#
# To re-enable PHP in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
#<IfModule mod_userdir.c>
#    <Directory /home/*/public_html>
#        php_admin_value engine Off
#    </Directory>
#</IfModule>

Tämän jälkeen apache2 tulee käynnistää jälleen uudestaan. Seuraavaksi voi tehdä public_html -kansion omaan kotihakemistoon

$ cd     # Varmistetaan että teemme kansion käyttäjän kotihakemistoon.$ mkdir public_html
$ cd public_html
$ nano index.php    # Tehdään testisivu, jolla varmistetaan php:n toimivuus
## index.php:n sisältö:
Hello world!
<?php
print (2+2)
?>

Sivun toimivuuden voi käydä katsomassa vierailemalla osoitteessa http:/localhost/~anttiville ; ja sivuilla pitäisi näkyä “Hello world! 4”, jos php toimii oikein.

Palomuurin määrittäminen

Palomuurina käytän yksinkertaista palomuuria nimeltään ufw. Ohjeissa käsketään jättämään reiät HTTP, HTTPS ja SSH:lle. Aloitin siis tekemällä ensin reiät, ja vasta sitten laitoin palomuurin käyntiin.

$ sudo ufw status    # Ensin katsoin palomuurin tilan. Oli pois käytöstä.
Status: inactive
$ sudo ufw allow 22/tcp    # SSH-yhteyttä varten
$ sudo ufw allow 80/tcp    # HTTP-portti
$ sudo ufw allow 443/tcp    # HTTPS-portti

Ja sitten palomuuri käyttöön ja varmistetaan vielä että tarvittavat reiät ovat tehty.

$ sudo ufw enable
Firewall is active and enabled on system startup
$ sudo ufw status
Status: active

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere
80/tcp                     ALLOW       Anywhere
443/tcp                    ALLOW       Anywhere
22/tcp                     ALLOW       Anywhere (v6)
80/tcp                     ALLOW       Anywhere (v6)
443/tcp                    ALLOW       Anywhere (v6)

PupeSoft:n lataaminen

Lataaminen onnistuu kirjoittamalla komentopäätteeseen:

git clone git://github.com/devlab-oy/pupesoft.git

Haetaan vielä demo-kokeilua varten Devlab:n tarjoama aloitustietokanta

wget -q http://api.devlab.fi/referenssitietokantakuvaus.sql http://api.devlab.fi/referenssidata.sql

Tässä vaiheessa koneelle on tullut uusia kansioita, esimerkiksi pupesoft-kansio, mikä on täynnä .php-tiedostoja.

 

$ mysql -u root -p
Enter password:
mysql> CREATE DATABASE pupesoft default character set latin1;
Query OK, 1 row affected (0.00 sec)
mysql> GRANT ALL ON pupesoft.* TO 'toimitusjohtaja'@'localhost' IDENTIFIED BY 'toi124as204"(ASosk//!PUpesoFT2=/!';
Query OK, 0 rows affected (0.05 sec)
mysql> exit

Tämän jälkeen siirretään alkudata tietokannan sisään.

$ mysql -u toimitusjohtaja -p pupesoft < referenssitietokantakuvaus.sql    ## PupeSoftin omissa ohjeissa käyttäjän salasana oli kirjoitettu suoraan komentoon, mutta minun mielestä on tietoturvallisempaa käyttää mysql -u käyttäjänimi -p -komentoa, jolloin salasanaa ei tarvitse kirjottaa selkokiellä.
Enter password:
$ chmod -R 750 pupesoft/
$ chmod -R 770 pupesoft/dataout/ pupesoft/datain/

Ja tämän jälkeen voidaan muokata asennustiedostoa:

$ sudoedit /var/www/html/pupesoft/pupesoft.sh
# Pupesoft asennuksen tiedot
POLKU="/home/eitsei/public_html/pupesoft/"
YHTIO="demo"

Ja salasanat kuntoon:

$ sudoedit /var/www/pupesoft/inc/salasanat.php
<?php

date_default_timezone_set('Europe/Helsinki');

$dbhost   = 'mysqlpalvelin';
$dbuser   = 'mysqlkayttaja';
$dbpass   = 'mysqlsalasana';
$dbkanta  = 'pupesoft';

$palvelin = 'http://www.palvelin.com/pupesoft/';

if (isset($_SERVER['SERVER_PORT']) and $_SERVER['SERVER_PORT'] == '443') {
    $palvelin = 'https://www.palvelin.com/pupesoft/';              
}

Sisäänkirjautuminen onnistuu http://xxx.xxx.xxx.xxx/pupesoft käyttäjätunnuksella admin ja salasana on 1234.

Jostain syystä kun yritin päästä pupesoftin sivuille ei kansio näkyny minun public_html-kansiossa. Kokeilin myös tehdä uuden kansion, ja se näkyi oikein.Oikeudet molemmilla kansioilla on samat, mutta silti toinen ei vaan näy.

$ ls -l
total 6604
drwxr-xr-x  2 eitsei eitsei    4096 Mar 12 19:26 mina
drwxr-xr-x 23 eitsei eitsei   12288 Mar  8 00:05 pupesoft

Tämän jälkeen vaihdoin pupesoft kansion paikkaa kokonaisuudessaan ohjeissa mainittuun /var/www/-kansioon, mutta lopputuloksena silloinkin oli vain valkoinen ruutu.

Lähteet

Devlab.fi – PupeSoft asennusohje ja lisenssi
Tero Karvinen – Linux palvelimena -kurssi
Tiedostojen oikeudet numeroina

-Jokela Antti-Ville

Tätä dokumenttia saa kopioida ja muokata GNU General Public License (versio 2 tai uudempi) mukaisesti. http://www.gnu.org/licenses/gpl.html

Bookmark the permalink.

Comments are closed