Muokataan sivua Apache-harjoituksia

Siirry navigaatioon Siirry hakuun
Varoitus: Et ole kirjautunut sisään. IP-osoitteesi näkyy julkisesti kaikille, jos muokkaat. Jos kirjaudut sisään tai luot tunnuksen, muokkauksesi yhdistetään käyttäjänimeesi ja saat paremman käyttökokemuksen.

Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.

Nykyinen versio Oma tekstisi
Rivi 1: Rivi 1:
{{jakeluspesifinen}}
{{jakeluspesifinen}}
Tarkoituksena on pystyttää oppilaitoksen (yrityksen) www-palvelin, johon tulee niin oppilaitoksen (yrityksen) kuin oppilaiden (työntekijöiden) kotisivut. Mahdollistetaan salasanasuojattujen hakemistojen tekeminen, määritetään mukautetut virheilmoitukset, tarkastellaan palvelimelle pääsyn rajoittamista, tutkitaan miten virtualHost määritteet toimivat ja lopuksi tutkitaan miten saadaan helposti luotua raportteja sivustojen käytöstä webalizerin avulla.
Tarkoituksena on pystyttää oppilaitoksen (yrityksen) www-palvelin, johon tulee niin oppilaitoksen (yrityksen) kuin oppilaiden (työntekijöiden) kotisivut. Mahdollistetaan salasanasuojattujen hakemistojen tekeminen, määritetään mukautetut virheilmoitukset, tarkastellaan palvelimelle pääsyn rajoittamista, tutkitaan miten virtualHost määritteet toimivat ja lopuksi tutkitaan miten saadaan helposti luotua raportteja sivustojen käytöstä webalizerin avulla.
====Taustatietoa Internetin toiminnasta:====
* karttoja: http://www.telegeography.com/
* mitä tapahtuu kun avaa www-sivun: http://prezi.com/gks10schfggg/i-made-a-map-of-the-internet-and-other-lessons-about-speeding-up-web-sites/
* Analysoi itse mitä tapahtuu kun selain avaa www-sivun: http://getfirebug.com/


Ohjeet on kirjoitettu [[Redhat]]ia ajatellen. Joissakin kohdissa on myös kerrottu [[Debian]]issa tai muussa [[jakelu]]ssa tarvittavat versiot komennoista. Pienin muutoksin ohjeet soveltuvat myös muille jakeluille; lue tarvittaessa oman jakelusi [[GNU/Linuxin käynnistysprosessi#Pikkuisen init-skripteistä|käynnistysskripteistä]], [[ohjelmien asentaminen|ohjelmien asentamisesta]], käytettävistä [[tekstieditori|tekstieditoreista]], [[palomuuri]]n säätämisestä yms. httpd:n käyttämät hakemistot löytyvät asetustiedostosta hakemalla avainsanoja ServerRoot, DocumentRoot ja UserDir.
Ohjeet on kirjoitettu [[Redhat]]ia ajatellen. Joissakin kohdissa on myös kerrottu [[Debian]]issa tai muussa [[jakelu]]ssa tarvittavat versiot komennoista. Pienin muutoksin ohjeet soveltuvat myös muille jakeluille; lue tarvittaessa oman jakelusi [[GNU/Linuxin käynnistysprosessi#Pikkuisen init-skripteistä|käynnistysskripteistä]], [[ohjelmien asentaminen|ohjelmien asentamisesta]], käytettävistä [[tekstieditori|tekstieditoreista]], [[palomuuri]]n säätämisestä yms. httpd:n käyttämät hakemistot löytyvät asetustiedostosta hakemalla avainsanoja ServerRoot, DocumentRoot ja UserDir.
Rivi 66: Rivi 61:
*Käynnistä palvelin uudelleen
*Käynnistä palvelin uudelleen
*Tee hakemistoon <tt>/var/www/</tt> alihakemisto nimeltä <tt>suojattu</tt>
*Tee hakemistoon <tt>/var/www/</tt> alihakemisto nimeltä <tt>suojattu</tt>
cd /var/www/
*Tee suojattuun hakemistoon tiedosto <tt>index.html</tt>
mkdir suojattu
*Luo .htpasswd tiedosto ja määritä siihen käyttäjä ja salasana:
*Luo kansioon .htpasswd tiedosto ja määritä siihen käyttäjä ja salasana:
  htpasswd -c .htpasswd mullonlupa
  cd suojattu
*Muuta kyseinen tiedosto luettavaksi ([[Tiedoston oikeudet|chmod]] 644 .htpasswd)
sudo htpasswd -c .htpasswd tunnus
*Testaa
*Testaa


Apachen asetuksissa on yleensä kielto näyttää .ht-alkuisia tiedostoja. Tämä suojaus ei kuitenkaan estä muita järjestelmän käyttäjiä lukemasta tiedostoa. Parempi on määrätä tiedoston ryhmäksi se ryhmä, jona palvelin ajetaan, ja antaa lukuoikeus vain omistajalle ja ryhmälle eli <tt>sudo chown www-data:www-data *</tt> ja <tt>sudo chmod 640</tt>
Apachen asetuksissa on yleensä kielto näyttää .ht-alkuisia tiedostoja. Tämä suojaus ei kuitenkaan estä muita järjestelmän käyttäjiä lukemasta tiedostoa. Parempi on määrätä tiedoston ryhmäksi se ryhmä, jona palvelin ajetaan, ja antaa lukuoikeus vain omistajalle ja ryhmälle eli <tt>chmod 640</tt>


===Mukautetun virheilmoituksen tekeminen===
===Mukautetun virheilmoituksen tekeminen===
Rivi 79: Rivi 73:
*Mikäli käyttäjä painaa Cancel-painiketta salasanaa kysyttäessä, saa hän Authorization required virheilmoituksen (virhe 401). Muutetaan kyseinen ilmoitus toiseksi.
*Mikäli käyttäjä painaa Cancel-painiketta salasanaa kysyttäessä, saa hän Authorization required virheilmoituksen (virhe 401). Muutetaan kyseinen ilmoitus toiseksi.


*Lisää tiedostoon seuraava teksti
*Lisää riville 809 seuraava teksti
  ErrorDocument 401 /eilupaa.html
  ErrorDocument 401 /eilupaa.htm


*Luo /var/www/eilupaa.html tiedosto haluamillasi teksteillä
*Luo /var/www/html/eilupaa.htm tiedosto haluamillasi teksteillä
*Käynnistä Apache uudestaan
*Käynnistä Apache uudestaan
*Testaa
*Testaa


Jotkut selaimet näyttävät omaa virheilmoitustaan http-palvelimen antaman ilmoituksen sijaan ("friendly error messages"). Muuta tarvittaessa selaimesi asetuksia.
Jotkut selaimet näyttävät omaa virheilmoitustaan httpd-palvelimen antaman ilmoituksen sijaan ("friendly error messages"). Muuta tarvittaessa selaimesi asetuksia.
 
===Palomuurin portin 80 avaaminen===
 
Anna komento setup, siirry kohtaan firewall konfiguration ja valitse www. Vaihtoehtoisesti lisää tiedostoon /etc/sysconfig/iptables (ennen COMMIT-riviä) rivi:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
ja anna sen jälkeen komento: <tt>service iptables restart</tt>
 
Jos käytössäsi on muu palomuurin asetustensäätöohjelma tai -tiedosto, käytä sitä tekemään vastaava muutos. Yhteydet voidaan sallia myös rajoitetuista verkoista määritteellä <tt>--source</tt>.
 
===Testaa (Kokeile naapurikoneesta)===
 
*Rajoitetaan pääsy vain tietystä IP-osoitteesta
 
*Lisää riville 391 alkaen tekstit:
<Directory /home/oppilas/*>
Order deny.allow
Deny from all
Allow from sallittavan.koneen.ip.osoite
</Directory>
 
*Käynnistä httpd uudestaan
*Testaa
*Kommentoi edellä tekemäsi muutokset
*Käynnistä httpd uudestaan
*Testaa


===VirtualHost===
===VirtualHost===


*Lisää httpd.confin loppuun (RedHat) tai sites-enabled-kansioon tiedostoon:
*Lisää httpd.confin loppuun
  <VirtualHost apache.palvelimen.ip.osoite>
  <VirtualHost apache.palvelimen.ip.osoite>
     ServerAdmin webmaster@wwwmalli.jee
     ServerAdmin webmaster@wwwmalli.jee
Wikin materiaali on kaikkien vapaasti käytettävissä Creative Commons 3.0 - nimi mainittava -lisenssin alaisuudessa. TEKIJÄNOIKEUDEN ALAISEN MATERIAALIN KÄYTTÄMINEN ILMAN LUPAA ON EHDOTTOMASTI KIELLETTYÄ!

Muokataksesi tätä sivua vastaa alla olevaan kysymykseen (lisätietoja):

Peruuta Muokkausohjeet (avautuu uuteen ikkunaan)

Tällä sivulla käytetty malline: