Veebiserver labor 2: Difference between revisions
New page: =Nõuded= SNI SSL monitooring-valida millega monitoorida |
|||
(71 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
=Autorid= | |||
*Niina Stsetnikova | |||
*Viktoria Mulina | |||
[[Category:IT infrastruktuuri teenused]] | |||
=Versioonide ajalugu= | |||
Versioon 1(20% valmis): 24.11.2009 | |||
Versioon 2(50% valmis): 30.11.2009 | |||
Versioon 3(85% valmis): 01.12.2009 | |||
Versioon 4(100% valmis): 07.12.2009 | |||
Versioon 5(muudetud): 15.12.2009 | |||
=Sissejuhatus= | |||
Meil on vaja luua veebiserveri, ehk interneti püsiühendusega arvuti, milles hoitakse veebisaite: | |||
*www.album.ee | |||
*photo.album.ee | |||
=Eeldused= | |||
Ubuntu server 9.10 | |||
Apache 2.2.12 | |||
OpenSSL 0.9.8g | |||
=Nõuded= | =Nõuded= | ||
SNI | |||
* Konfigureerida kaks veebilehte | |||
* Mõlemal lehel peab olema võimalik kasutada php'd | |||
* Konfigureerida mysql ja phpMyAdmin andmebaaside seadistamiseks | |||
* Seadistada SSL | |||
* Seadistada SNI | |||
* Monitooring - valida millega monitoorida | |||
=Installeerimise ja konfigureerimise juhend= | |||
Logime ennast root kasutajaks: | |||
<pre> | |||
sudo -i | |||
</pre> | |||
Enne installerimist tasub uuendada tarkvara nimekirja: | |||
<pre> | |||
apt-get update | |||
</pre> | |||
Kuna nõudeks on uuem Ubuntu versioon siis on vaja meie oma uuendada | |||
apt-get install update-manager | |||
apt-get install update-manager-core | |||
apt-get dist-upgrade | |||
do-release-upgrade | |||
Veersiooni kontrollimiseks: | |||
lsb-release | |||
Testimiseks paigalda links veebisirvija | |||
apt-get install links | |||
==Veebiserveri installeerimine== | |||
Kui on juba olemas mingi varem tehtud veebiserver, siis on vaja lihtsalt uuendada .conf failid, uus installeerimine ei ole tarvis. | |||
Installeerimine apt abil: | |||
<pre> | |||
apt-get install apache2 | |||
</pre> | |||
Teenuse taaskäivitamine: | |||
<pre> | |||
/etc/init.d/apache2 restart | |||
</pre> | |||
==MySQL installeerimine== | |||
MySQL installeerimiseks tuleb sisestada Shelli käsk: | |||
<pre> | |||
apt-get install mysql-server | |||
</pre> | |||
Installeerimisel küsitakse MySQL root parooli määramist. | |||
==phpMyAdmin installeerimine== | |||
=== Paigaldamine === | |||
<pre>apt-get install phpmyadmin</pre> | |||
Installeerimise käigus palutakse valida:<br /> | |||
1) veebiserver, millele phpMyAdmin paigalda - vali apache2<br /> | |||
2) administraatori parool<br /> | |||
3) kas paigaldada vaikimisi seadistusega andmebaas - yes | |||
=== Seadistamine === | |||
Muudame Apache konfiguratsioonifaili '''/etc/apache2/apache2.conf''' | |||
<pre>nano /etc/apache2/apache2.conf</pre> | |||
Lisa sinna rida: | |||
<pre>Include /etc/phpmyadmin/apache.conf</pre> | |||
Apache teenus tuleb taaskäivitada: | |||
<pre>/etc/init.d/apache2 restart</pre> | |||
=== Kontroll === | |||
Kontrollida saab käsureaga: | |||
<pre>links http://masinanimi_või_IP/phpmyadmin</pre> | |||
===Alternatiivne seadistamine=== | |||
Include lause lisamise asemel võib lihtsalt linkida phpmyadmin konfiguratsioonifaili Apache seadistuste kataloogi: | |||
<pre>ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf.d/phpmyadmin.conf</pre> | |||
==Nimelahenduse loomine== | |||
1) Uurida välja oma masina IP käsuga <pre>ifconfig</pre> | |||
2) Muuta 'hosts' faili käsuga <pre> nano /etc/hosts</pre> | |||
3) Lisada read | |||
<pre><MasinaIP> www.album.ee | |||
<MasinaIP> photo.album.ee</pre> | |||
4) Testimiseks pingida www.album.ee ja photo.album.ee | |||
ping '''www.album.ee''' | |||
ping '''photo.album.ee''' | |||
Neid veebilehti saab pingida/testida ainult kohalikust serverimasinast. | |||
Kui ping vastab, on nimelahendus õigesti seadistatud | |||
==Nimepõhiste virtuaalserverite loomine == | |||
*Loo kataloogid www ja photo /var/www kausta. | |||
<pre> | |||
mkdir -p /var/www/www /var/www/photo | |||
</pre> | |||
*Kopeeri /etc/apache2/sites-available kaustas oleva default konfiguratsiooni faili ning loo koopiad www ja photo nimedega. | |||
<pre> | |||
cp /etc/apache2/sites-available/default /etc/apache2/sites-available/photo | |||
cp /etc/apache2/sites-available/default /etc/apache2/sites-available/www | |||
</pre> | |||
*Ava photo konfiguratsiooni faili nanoga. | |||
<pre> | |||
nano /etc/apache2/sites-available/photo | |||
</pre> | |||
*Muudetud photo fail peaks välja nägema selline : | |||
<VirtualHost *:80> | |||
ServerAdmin webmaster@localhost | |||
ServerName '''photo.album.ee''' | |||
DocumentRoot '''/var/www/photo''' | |||
<Directory /> | |||
Options FollowSymLinks | |||
AllowOverride None | |||
</Directory> | |||
<Directory '''/var/www/photo'''> | |||
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/photo.error.log''' | |||
# Possible values include: debug, info, notice, warn, error, crit, | |||
# alert, emerg. | |||
LogLevel warn | |||
CustomLog '''/var/log/apache2/photo.access.log combined''' | |||
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. | |||
<pre> | |||
nano /etc/apache2/sites-available/www | |||
</pre> | |||
*Muudetud www fail peaks välja nägema selline : | |||
<VirtualHost *:80> | |||
ServerAdmin webmaster@localhost | |||
ServerName '''www.album.ee''' | |||
DocumentRoot '''/var/www/www''' | |||
<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''' | |||
# Possible values include: debug, info, notice, warn, error, crit, | |||
# alert, emerg. | |||
LogLevel warn | |||
CustomLog '''/var/log/apache2/www.access.log''' combined | |||
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> | |||
*photo ja www virtualhostide kasutamiseks tuleb keelata default lehekülg ja lubada photo ning www, sisestades käsurealt järgmised käsud: | |||
<pre> | |||
a2ensite photo | |||
a2ensite www | |||
a2dissite default | |||
/etc/init.d/apache2 reload | |||
</pre> | |||
Kui teil on mõni veebileht ka olemas siis seda tuleb ka välja lülitada | |||
*Testimine | |||
Testimiseks tuleb luua index.html fail nii www kui ka photo kataloogi. | |||
Selleks tegutse järgmiselt: | |||
1. Loo fail www kataloogi | |||
<pre> | |||
nano /var/www/www/index.html | |||
</pre> | |||
1.1 Kirjuta faili | |||
<pre> | |||
<h1>Tere tulemast www.album.ee veebilehele!</h1> | |||
</pre> | |||
2. Loo fail photo kataloogi | |||
<pre> | |||
nano /var/www/photo/index.html | |||
</pre> | |||
2.1 Kirjuta faili | |||
<pre> | |||
<h1>Siin saab fotod vaadata</h1> | |||
</pre> | |||
*Kontrollimiseks mine veebilehitsejaga järgmistele aadressidele: | |||
<pre> | |||
links www.album.ee | |||
links photo.album.ee | |||
</pre> | |||
Kui ei tööta siis kontrollige, et kõik failid oleks korralikult muudetud. Võib olla veebilehe nimi on juba olemas, selle kontrollimiseks vaadake mis IP aadressile läheb signaal: | |||
ping www.album.ee | |||
kui IP on teie arvuti oma, siis viga ei ole selles! | |||
==phpinfo lehe loomine== | |||
Loo fail | |||
<pre> | |||
nano /var/www/www/phpinfo.php | |||
</pre> | |||
Kirjuta faili | |||
<pre> | |||
<?php | |||
phpinfo(); | |||
?> | |||
</pre> | |||
Kontrollimiseks mine veebilehitsejaga aadressile | |||
<pre> | |||
links http://www.album.ee/phpinfo.php | |||
</pre> | |||
Peaks nägema standartset phpinfo lehte. | |||
==SSL keskkonna loomine== | |||
===Sertifikaadi genereerimine=== | |||
Kõigepealt liikuda kataloogi /etc/apache2/ ja siis genereerida '''www.album.ee''' võtmed | |||
<pre>cd /etc/apache2/</pre> | |||
Käivitada seal käsk: | |||
<pre>openssl req -nodes -new -keyout www.album.ee.key -newkey rsa:1024 > www.album.ee.csr </pre> | |||
<p>Küsimustele vastata nii nagu allpool näidatud.</p> | |||
<pre>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]:Album | |||
Organizational Unit Name (eg, section) []: | |||
Common Name (eg, YOUR name) []:www.album.ee | |||
Email Address []: | |||
A challenge password []: | |||
An optional company name []: | |||
</pre> | |||
Käivitada need käsud | |||
<pre>openssl x509 -req -days 3650 -in www.album.ee.csr -signkey www.album.ee.key -out www.album.ee.crt</pre> | |||
Kuvada sertifikaadi sisu: | |||
<pre>openssl x509 -in www.album.ee.crt -noout -text</pre> | |||
Nüüd genereerime '''photo.album.ee''' võtmed | |||
<pre>cd /etc/apache2/</pre> | |||
Käivitada seal käsk: | |||
<pre>openssl req -nodes -new -keyout photo.album.ee.key -newkey rsa:1024 > photo.album.ee.csr </pre> | |||
<p>Küsimustele vastata nii nagu allpool näidatud.</p> | |||
<pre>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]:Album | |||
Organizational Unit Name (eg, section) []: | |||
Common Name (eg, YOUR name) []:photo.album.ee | |||
Email Address []: | |||
A challenge password []: | |||
An optional company name []: | |||
</pre> | |||
Käivitada need käsud | |||
<pre>openssl x509 -req -days 3650 -in photo.album.ee.csr -signkey photo.album.ee.key -out photo.album.ee.crt</pre> | |||
Kuvada sertifikaadi sisu: | |||
<pre>openssl x509 -in photo.album.ee.crt -noout -text</pre> | |||
==SNI Seadistamine== | |||
Kasutades Server Name Indication, ehk SNI, saab ühe IP ja pordi pealt suunata päringuid erinevatele https veebilehtedele.<br> | |||
Tekitame uue faili nimega 000-default, kataloogis '''/etc/apache2/sites-enabled/''' : | |||
<pre> | |||
nano /etc/apache2/sites-enabled/000-default | |||
</pre> | |||
Konfiguratsioonifaili sisuks on: | |||
<pre> | |||
NameVirtualHost *:443 | |||
SSLStrictSNIVHostCheck off | |||
<VirtualHost *:443> | |||
ServerAdmin webmaster@localhost | |||
ServerName www.album.ee | |||
DocumentRoot /var/www/www | |||
<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 | |||
# Possible values include: debug, info, notice, warn, error, crit, | |||
# alert, emerg. | |||
LogLevel warn | |||
CustomLog /var/log/apache2/www.access.log combined | |||
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> | |||
ErrorLog /var/log/apache2/www.album.ee-ssl-error.log | |||
TransferLog /var/log/apache2/www.album.ee-ssl-access.log | |||
SSLEngine on | |||
SSLCertificateFile /etc/apache2/www.album.ee.crt | |||
SSLCertificateKeyFile /etc/apache2/www.album.ee.key | |||
SSLOptions +StdEnvVars | |||
</VirtualHost> | |||
<VirtualHost *:443> | |||
ServerAdmin webmaster@localhost | |||
ServerName photo.album.ee | |||
DocumentRoot /var/www/photo | |||
<Directory /> | |||
Options FollowSymLinks | |||
AllowOverride None | |||
</Directory> | |||
<Directory /var/www/photo> | |||
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/photo.error.log | |||
# Possible values include: debug, info, notice, warn, error, crit, | |||
# alert, emerg. | |||
LogLevel warn | |||
CustomLog /var/log/apache2/photo.access.log combined | |||
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> | |||
ErrorLog /var/log/apache2/photo.album.ee-ssl-error.log | |||
TransferLog /var/log/apache2/photo.album.ee-ssl-access.log | |||
SSLEngine on | |||
SSLCertificateFile /etc/apache2/photo.album.ee.crt | |||
SSLCertificateKeyFile /etc/apache2/photo.album.ee.key | |||
SSLOptions +StdEnvVars | |||
</VirtualHost> | |||
<VirtualHost *:80> | |||
ServerAdmin webmaster@localhost | |||
ServerName www.album.ee | |||
DocumentRoot /var/www/www | |||
<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 | |||
# Possible values include: debug, info, notice, warn, error, crit, | |||
# alert, emerg. | |||
LogLevel warn | |||
CustomLog /var/log/apache2/www-access.log combined | |||
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> | |||
<VirtualHost *:80> | |||
ServerAdmin webmaster@localhost | |||
ServerName photo.album.ee | |||
DocumentRoot /var/www/photo | |||
<Directory /> | |||
Options FollowSymLinks | |||
AllowOverride None | |||
</Directory> | |||
<Directory /var/www/photo> | |||
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/photo.error.log | |||
# Possible values include: debug, info, notice, warn, error, crit, | |||
# alert, emerg. | |||
LogLevel warn | |||
CustomLog /var/log/apache2/photo.access.log combined | |||
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> | |||
</pre> | |||
'''NameVirtualHost *:443''' - tähendab, et kõigil IP'del on virtual host päringud <br> | |||
'''SSLStrictSNIVHostCheck''' - kui off siis ühendus on lubatud mitte-SNI klientidelt ka, on - ei lubata. | |||
Uue browseri kasutajatel peab olema '''on'''. Kuna selles töös on kasutatud vana browseri versioon siis on '''off'''. | |||
===Restardime apache kontrollimiseks:=== | |||
/etc/init.d/apache2 restart | |||
===Testimiseks käivitame järgmised käsud:=== | |||
links www.album.ee | |||
links photo.album.ee | |||
<nowiki>links https://www.album.ee</nowiki> | |||
<nowiki>links https://photo.album.ee</nowiki> | |||
Kui tulevad õiged lehed ette ja erroreid ei viska, siis on kõik OK. | |||
==Teenuse start/stop/restart== | |||
Apache2 | |||
/etc/init.d/apache2 {start | stop | restart} | |||
Mysql-server | |||
/etc/init.d/mysql {start | stop | restart} | |||
=Varundamisjuhend= | |||
==Varukoopiate tegemine== | |||
Failide kopeerimiseks sisestage käsk: | |||
cp -a [mida] [kuhu] | |||
Näiteks: | |||
cp -a /var/www/www /home | |||
Veebide sisu backup siit | |||
/var/www/www | |||
Veebi photo.album backup siit | |||
/var/www/photo | |||
Apache2 konfiguratsiooni kausta backup siit | |||
/etc/apache2 | |||
Apache2 log failide backup teha siit | |||
/var/log/apache2 | |||
=Taastejuhend= | |||
==Taastamine== | |||
Failide taastamiseks minge kataloogi kus on varukoopia salvestatud ja sisestage käsk: | |||
cp -a [mida] [kuhu] | |||
Näiteks: | |||
cp -a /home/apache2 /etc | |||
Veebi sisu andmed taasta kataloogi backupist | |||
/var/www | |||
photo.album andmed taasta kataloogi backupist | |||
/var/www/photo | |||
Veebiserveri upgrades tulnud tõrked taasta varasem konfiguratsioon kataloogi backupist | |||
/etc/apache2 | |||
logifailid taasta kataloogi backupist | |||
/var/log/apache2 | |||
=Teenuse monitoorimise soovitused= | |||
Kui midagi ei tööta: | |||
* Kõigepealt tehke teenuse restart | |||
/etc/init.d/apache2 restart | |||
Kui mingi probleem on teenuse sees, siis ta viskab teade täpselt kus kohas see viga on. | |||
*Kontrollige kõik .conf ja .log failid, et süntaks oleks õige. | |||
*Kui üleval mainitud ei aita, siis proovige varukoopiate taastamine. | |||
*Abiinfo saamiseks võtke ühendust [[e-maili]] või [[telefoni]] teel | |||
=Lingid= | |||
[http://kuutorvaja.eenet.ee/wiki/Apache'i_veebiserver Kuutõrvaja - Apache'i veebiserver] - Siit saab abi | |||
[http://www.ubuntu.com/getubuntu/upgrading Ubuntu serevri upgrade] | |||
[http://en.wikipedia.org/wiki/Server_Name_Indication SNI] |
Latest revision as of 23:07, 15 December 2009
Autorid
- Niina Stsetnikova
- Viktoria Mulina
Versioonide ajalugu
Versioon 1(20% valmis): 24.11.2009
Versioon 2(50% valmis): 30.11.2009
Versioon 3(85% valmis): 01.12.2009
Versioon 4(100% valmis): 07.12.2009
Versioon 5(muudetud): 15.12.2009
Sissejuhatus
Meil on vaja luua veebiserveri, ehk interneti püsiühendusega arvuti, milles hoitakse veebisaite:
- www.album.ee
- photo.album.ee
Eeldused
Ubuntu server 9.10
Apache 2.2.12
OpenSSL 0.9.8g
Nõuded
- Konfigureerida kaks veebilehte
- Mõlemal lehel peab olema võimalik kasutada php'd
- Konfigureerida mysql ja phpMyAdmin andmebaaside seadistamiseks
- Seadistada SSL
- Seadistada SNI
- Monitooring - valida millega monitoorida
Installeerimise ja konfigureerimise juhend
Logime ennast root kasutajaks:
sudo -i
Enne installerimist tasub uuendada tarkvara nimekirja:
apt-get update
Kuna nõudeks on uuem Ubuntu versioon siis on vaja meie oma uuendada
apt-get install update-manager apt-get install update-manager-core apt-get dist-upgrade do-release-upgrade
Veersiooni kontrollimiseks:
lsb-release
Testimiseks paigalda links veebisirvija
apt-get install links
Veebiserveri installeerimine
Kui on juba olemas mingi varem tehtud veebiserver, siis on vaja lihtsalt uuendada .conf failid, uus installeerimine ei ole tarvis.
Installeerimine apt abil:
apt-get install apache2
Teenuse taaskäivitamine:
/etc/init.d/apache2 restart
MySQL installeerimine
MySQL installeerimiseks tuleb sisestada Shelli käsk:
apt-get install mysql-server
Installeerimisel küsitakse MySQL root parooli määramist.
phpMyAdmin installeerimine
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
Kontrollida saab käsureaga:
links 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
nano /etc/hosts
3) Lisada read
<MasinaIP> www.album.ee <MasinaIP> photo.album.ee
4) Testimiseks pingida www.album.ee ja photo.album.ee
ping www.album.ee ping photo.album.ee
Neid veebilehti saab pingida/testida ainult kohalikust serverimasinast. Kui ping vastab, on nimelahendus õigesti seadistatud
Nimepõhiste virtuaalserverite loomine
- Loo kataloogid www ja photo /var/www kausta.
mkdir -p /var/www/www /var/www/photo
- Kopeeri /etc/apache2/sites-available kaustas oleva default konfiguratsiooni faili ning loo koopiad www ja photo nimedega.
cp /etc/apache2/sites-available/default /etc/apache2/sites-available/photo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/www
- Ava photo konfiguratsiooni faili nanoga.
nano /etc/apache2/sites-available/photo
- Muudetud photo fail peaks välja nägema selline :
<VirtualHost *:80> ServerAdmin webmaster@localhost ServerName photo.album.ee DocumentRoot /var/www/photo <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/photo> 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/photo.error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/photo.access.log combined 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.
nano /etc/apache2/sites-available/www
- Muudetud www fail peaks välja nägema selline :
<VirtualHost *:80> ServerAdmin webmaster@localhost ServerName www.album.ee DocumentRoot /var/www/www <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 # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/www.access.log combined 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>
- photo ja www virtualhostide kasutamiseks tuleb keelata default lehekülg ja lubada photo ning www, sisestades käsurealt järgmised käsud:
a2ensite photo a2ensite www a2dissite default /etc/init.d/apache2 reload
Kui teil on mõni veebileht ka olemas siis seda tuleb ka välja lülitada
- Testimine
Testimiseks tuleb luua index.html fail nii www kui ka photo kataloogi. Selleks tegutse järgmiselt:
1. Loo fail www kataloogi
nano /var/www/www/index.html
1.1 Kirjuta faili
<h1>Tere tulemast www.album.ee veebilehele!</h1>
2. Loo fail photo kataloogi
nano /var/www/photo/index.html
2.1 Kirjuta faili
<h1>Siin saab fotod vaadata</h1>
- Kontrollimiseks mine veebilehitsejaga järgmistele aadressidele:
links www.album.ee links photo.album.ee
Kui ei tööta siis kontrollige, et kõik failid oleks korralikult muudetud. Võib olla veebilehe nimi on juba olemas, selle kontrollimiseks vaadake mis IP aadressile läheb signaal:
ping www.album.ee
kui IP on teie arvuti oma, siis viga ei ole selles!
phpinfo lehe loomine
Loo fail
nano /var/www/www/phpinfo.php
Kirjuta faili
<?php phpinfo(); ?>
Kontrollimiseks mine veebilehitsejaga aadressile
links http://www.album.ee/phpinfo.php
Peaks nägema standartset phpinfo lehte.
SSL keskkonna loomine
Sertifikaadi genereerimine
Kõigepealt liikuda kataloogi /etc/apache2/ ja siis genereerida www.album.ee võtmed
cd /etc/apache2/
Käivitada seal käsk:
openssl req -nodes -new -keyout www.album.ee.key -newkey rsa:1024 > www.album.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]:Album Organizational Unit Name (eg, section) []: Common Name (eg, YOUR name) []:www.album.ee Email Address []: A challenge password []: An optional company name []:
Käivitada need käsud
openssl x509 -req -days 3650 -in www.album.ee.csr -signkey www.album.ee.key -out www.album.ee.crt
Kuvada sertifikaadi sisu:
openssl x509 -in www.album.ee.crt -noout -text
Nüüd genereerime photo.album.ee võtmed
cd /etc/apache2/
Käivitada seal käsk:
openssl req -nodes -new -keyout photo.album.ee.key -newkey rsa:1024 > photo.album.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]:Album Organizational Unit Name (eg, section) []: Common Name (eg, YOUR name) []:photo.album.ee Email Address []: A challenge password []: An optional company name []:
Käivitada need käsud
openssl x509 -req -days 3650 -in photo.album.ee.csr -signkey photo.album.ee.key -out photo.album.ee.crt
Kuvada sertifikaadi sisu:
openssl x509 -in photo.album.ee.crt -noout -text
SNI Seadistamine
Kasutades Server Name Indication, ehk SNI, saab ühe IP ja pordi pealt suunata päringuid erinevatele https veebilehtedele.
Tekitame uue faili nimega 000-default, kataloogis /etc/apache2/sites-enabled/ :
nano /etc/apache2/sites-enabled/000-default
Konfiguratsioonifaili sisuks on:
NameVirtualHost *:443 SSLStrictSNIVHostCheck off <VirtualHost *:443> ServerAdmin webmaster@localhost ServerName www.album.ee DocumentRoot /var/www/www <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 # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/www.access.log combined 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> ErrorLog /var/log/apache2/www.album.ee-ssl-error.log TransferLog /var/log/apache2/www.album.ee-ssl-access.log SSLEngine on SSLCertificateFile /etc/apache2/www.album.ee.crt SSLCertificateKeyFile /etc/apache2/www.album.ee.key SSLOptions +StdEnvVars </VirtualHost> <VirtualHost *:443> ServerAdmin webmaster@localhost ServerName photo.album.ee DocumentRoot /var/www/photo <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/photo> 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/photo.error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/photo.access.log combined 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> ErrorLog /var/log/apache2/photo.album.ee-ssl-error.log TransferLog /var/log/apache2/photo.album.ee-ssl-access.log SSLEngine on SSLCertificateFile /etc/apache2/photo.album.ee.crt SSLCertificateKeyFile /etc/apache2/photo.album.ee.key SSLOptions +StdEnvVars </VirtualHost> <VirtualHost *:80> ServerAdmin webmaster@localhost ServerName www.album.ee DocumentRoot /var/www/www <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 # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/www-access.log combined 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> <VirtualHost *:80> ServerAdmin webmaster@localhost ServerName photo.album.ee DocumentRoot /var/www/photo <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/photo> 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/photo.error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/photo.access.log combined 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>
NameVirtualHost *:443 - tähendab, et kõigil IP'del on virtual host päringud
SSLStrictSNIVHostCheck - kui off siis ühendus on lubatud mitte-SNI klientidelt ka, on - ei lubata.
Uue browseri kasutajatel peab olema on. Kuna selles töös on kasutatud vana browseri versioon siis on off.
Restardime apache kontrollimiseks:
/etc/init.d/apache2 restart
Testimiseks käivitame järgmised käsud:
links www.album.ee links photo.album.ee links https://www.album.ee links https://photo.album.ee
Kui tulevad õiged lehed ette ja erroreid ei viska, siis on kõik OK.
Teenuse start/stop/restart
Apache2
/etc/init.d/apache2 {start | stop | restart}
Mysql-server
/etc/init.d/mysql {start | stop | restart}
Varundamisjuhend
Varukoopiate tegemine
Failide kopeerimiseks sisestage käsk: cp -a [mida] [kuhu] Näiteks:
cp -a /var/www/www /home
Veebide sisu backup siit
/var/www/www
Veebi photo.album backup siit
/var/www/photo
Apache2 konfiguratsiooni kausta backup siit
/etc/apache2
Apache2 log failide backup teha siit
/var/log/apache2
Taastejuhend
Taastamine
Failide taastamiseks minge kataloogi kus on varukoopia salvestatud ja sisestage käsk: cp -a [mida] [kuhu]
Näiteks:
cp -a /home/apache2 /etc
Veebi sisu andmed taasta kataloogi backupist
/var/www
photo.album andmed taasta kataloogi backupist
/var/www/photo
Veebiserveri upgrades tulnud tõrked taasta varasem konfiguratsioon kataloogi backupist
/etc/apache2
logifailid taasta kataloogi backupist
/var/log/apache2
Teenuse monitoorimise soovitused
Kui midagi ei tööta:
- Kõigepealt tehke teenuse restart
/etc/init.d/apache2 restart
Kui mingi probleem on teenuse sees, siis ta viskab teade täpselt kus kohas see viga on.
- Kontrollige kõik .conf ja .log failid, et süntaks oleks õige.
- Kui üleval mainitud ei aita, siis proovige varukoopiate taastamine.
- Abiinfo saamiseks võtke ühendust e-maili või telefoni teel
Lingid
Kuutõrvaja - Apache'i veebiserver - Siit saab abi Ubuntu serevri upgrade SNI