Veebiserveri labor: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Kmolder (talk | contribs)
Mpihelga (talk | contribs)
Line 68: Line 68:
== Seadistamine ==
== Seadistamine ==


Apache konfiguratsioonifaili '''/etc/apache2/apache2.conf''' tuleb lisada:
Muudame Apache konfiguratsioonifaili '''/etc/apache2/apache2.conf'''  
<pre>nano /etc/apache2/apache2.conf</pre>
 
Lisa sinna rida:
<pre>Include /etc/phpmyadmin/apache.conf</pre>
<pre>Include /etc/phpmyadmin/apache.conf</pre>



Revision as of 14:34, 28 September 2009

Legend

Firmale on vaja luua kaks veebilehte:

  • www.firma.ee
  • sales.firma.ee

Mõlemal lehel saab kasutada php'd

Lisaks tuleb konfigureerida mysql ja phpMyAdmin andmebaaside seadistamiseks


Tulemuse kontroll

Tuleb luua test.php leht, mille vaatamisel kuvatakse phpinfo funktsiooni väljund.

Minnes links abil lehele www.firma.ee peab kuvatama leht sisuga "firma pealeht". Selle lehe log failid salvestada www.firma.ee.access.log ja www.firma.ee.error.log failidesse.

Minnes links abil lehele sales.firma.ee peab kuvatama leht sisuga "müügiosakond" Logfailid analoogselt eelnevaga (sales.firma.ee.access.log jne)

phpMyAdmin abil peab saama luua andmebaase ja tabeleid

Töö käik

Logime ennast root kasutajaks:

sudo -i

Enne installerimist tasub uuendada tarkvara nimekirja:

apt-get update

Testimiseks paigalda links veebisirvija

apt-get install links

Veebiserveri installeerimine

Installeerimine apt abil:

apt-get install apache2

Teenuse taaskäivitamine:

/etc/init.d/apache2 restart

MySQL installeerimine

MySQL installeerimiseks tuleb sisestada Shelli käsk:

sudo apt-get install mysql-server

Installeerimisel küsitakse MySQL root parooli määramist.

phpMyAdmin installeerimine

Kõik allpool toodud käsud teha root kasutaja alt

sudo -i

Paigaldamine

apt-get install phpmyadmin

Installeerimise käigus palutakse valida:
1) veebiserver, millele phpMyAdmin paigalda - vali apache2
2) administraatori parool
3) kas paigaldada vaikimisi seadistusega andmebaas - yes

Seadistamine

Muudame Apache konfiguratsioonifaili /etc/apache2/apache2.conf

nano /etc/apache2/apache2.conf

Lisa sinna rida:

Include /etc/phpmyadmin/apache.conf

Apache teenus tuleb taaskäivitada:

/etc/init.d/apache2 restart

Kontroll

Vaadata saab aadressilt:

http://masinanimi_või_IP/phpmyadmin

Alternatiivne seadistamine

Include lause lisamise asemel võib lihtsalt linkida phpmyadmin konfiguratsioonifaili Apache seadistuste kataloogi:

ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf.d/phpmyadmin.conf

Nimelahenduse loomine

1) Uurida välja oma masina IP käsuga

ifconfig

2) Muuta 'hosts' faili käsuga

sudo nano /etc/hosts

3) Lisada read

<MasinaIP> <www.firma.ee>
<MasinaIP> <sales.firma.ee>

4) Testimiseks pingida www.firma.ee ja sales.firma.ee Kui ping vastab, on nimelahendus õigesti seadistatud

Nimepõhiste virtuaalserverite loomine

  • Loo kataloogid www ja sales /var/www kausta.
sudo mkdir -p /var/www/www /var/www/sales
  • Kopeeri /etc/apache2/sites-available kaustas oleva default konfiguratsiooni faili ning loo koopiad www ja sales nimedega.
sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/sales
sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/www
  • Ava sales konfiguratsiooni faili nanoga.
sudo nano /etc/apache2/sites-available/sales
  • Muudetud sales fail peaks välja nägema selline :
<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        ServerName sales.firma.ee #Lisa see rida siia
        DocumentRoot /var/www/sales #Seda rida tuleb muuta
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/sales>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny                
                Allow from all
        </Directory>

        ErrorLog /var/log/apache2/sales.error.log #Seda rida tuleb muuta

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog /var/log/apache2/sales.access.log combined #Seda rida tuleb muuta

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

</VirtualHost>

  • Ava www konfiguratsiooni faili nanoga.
sudo nano /etc/apache2/sites-available/www
  • Muudetud www fail peaks välja nägema selline :
<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        ServerName www.firma.ee #Lisa see rida siia
        DocumentRoot /var/www/www #Seda rida tuleb muuta
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/www>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>

        ErrorLog /var/log/apache2/www.error.log #Seda rida tuleb muuta

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog /var/log/apache2/www.access.log combined #Seda rida tuleb muuta

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

</VirtualHost>


  • sales ja www virtualhostide kasutamiseks tuleb keelata default lehekülg ja lubada sales ning www , sisestades käsurealt järgmised käsud:

a2ensite sales
a2ensite www

a2dissite default

/etc/init.d/apache2 reload

  • Testimine

Testimiseks tuleb luua index.html fail nii www kui ka sales kataloogi. Sellesk tegutse järgmiselt:

    • Loo fail www kataloogi
nano /var/www/www/index.html
      • Kirjuta faili
<h1>Firma pealeht</h1>
    • Loo fail sales kataloogi
nano /var/www/sales/index.html
      • Kirjuta faili
<h1>Myygiosakond</h1>
  • Kontrollimiseks mine veebilehitsejaga järgmistele aadressidele
links www.firma.ee
links sales.firma.ee

phpinfo lehe loomine

Loo fail

nano /var/www/www/phpinfo.php

Kirjuta faili

<?php
phpinfo();
?>

Kontrollimiseks mine veebilehitsejaga aadressile

links http://www.firma.ee/phpinfo.php

Peaks nägema standartset phpinfo lehte.

SSL keskkonna loomine

Sertifikaadi genereerimine

Kõik allpool toodud käsud teha root kasutaja alt

sudo -i

Kõigepealt liikuda kataloogi /etc/apache2/ ja siis genereerida võtmed

cd /etc/apache2/

Käivitada seal käsk:

openssl req -nodes -new -keyout www.firma.ee.key -newkey rsa:1024 > www.firma.ee.csr 

Küsimustele vastata nii nagu allpool näidatud.

Country Name (2 letter code) [AU]:EE
State or Province Name (full name) [Some-State]:Tallinn
Locality Name (eg, city) []:Tallinn
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Firma
Organizational Unit Name (eg, section) []:
Common Name (eg, YOUR name) []:www.firma.ee
Email Address []:
A challenge password []:
An optional company name []:

Käivitada need käsud

openssl x509 -req -days 3650 -in www.firma.ee.csr -signkey www.firma.ee.key -out www.firma.ee.crt
openssl x509 -in www.firma.ee.crt -noout -text

SSL seadistamine

SSL mooduli lubamiseks järgmine käsk

a2enmod ssl

Seejärel restardime apache

/etc/init.d/apache2 restart

Seadistame apache2.

nano /etc/apache2/ports.conf

Failis ports.conf peab <IfModule mod_ssl.c> ja </IfModule> tagide vahel olema järgmine rida, kus sinu ip on sinu masina ip.

Listen sinu ip:443

Järgnevalt muuta faili /etc/apache2/sites-enabled/www/

nano /etc/apache2/sites-enabled/www

Jälgida tuleks,et sinu ip asemel oleks masina ip. Lisada faili lõppu järgnevad read. Jälgida, et crt ja key failid oleks vastavates kohtades. Muuta ära ka esimene rida port 80 asemel port 443.

<VirtualHost sinu ip:443>
   ErrorLog     /var/log/apache2/www.firma.ee-ssl-error.log
   TransferLog  /var/log/apache2/www.firma.ee-ssl-access.log

   SSLEngine on
   SSLCertificateFile /etc/apache2/www.firma.ee.crt
   SSLCertificateKeyFile /etc/apache2/www.firma.ee.key
   SSLOptions +StdEnvVars

 </VirtualHost>

Teenuse start/stop/restart

Apache2

 sudo /etc/init.d/apache2 {start | stop | restart}

Mysql-server

 sudo /etc/init.d/mysql {start | stop | restart}

Varukoopiate tegemine

Veebide sisu backup siit

 /var/www 

Veebi sales.firma backup siit

 /var/www/sales
 

Apache2 log failide backup teha siit

 /etc/apache2

Apache2 konfiguratsiooni kausta backup siit

 /var/log/apache2

Taastamine

Veebi sisu andmed taasta kataloogi backupist

 /var/www

sales.firma andmed taasta kataloogi backupist

 /var/www/sales

Veebiserveri upgrades tulnud tõrked taasta varasem konfiguratsioon kataloogi backupist

 /etc/apache2

logifailid taasta kataloogi backupist

 /var/log/apache2

Lingid

Kuutõrvaja - Apache'i veebiserver - Siit saab abi