Lighttpd

Linux.fista
Versio hetkellä 15. heinäkuuta 2009 kello 15.44 – tehnyt 91.154.246.218 (keskustelu) (→‎SSL)
Siirry navigaatioon Siirry hakuun

Lighttpd, puhekielessä Lighty, on kevyt vaihtoehto Apachelle http-palvelimiin, joissa ei ole tarvetta Apachen hurjalle ominaisuuskirjolle.

Asennus

Lighttp löytyy useimpien jakeluiden paketinhallinnasta nimellä lighttp. Lisätietoja ohjelmien asentamisesta löytyy artikkelista Ohjelmien asentaminen.

PHP

Dynaamisten sivujen käyttö on mahdollista FastCGI:n ja PHP:n avulla. Aluksi on asennettava PHP:n CGI-versio, löytyy useimpien jakeluiden paketinhallinnasta paketista php5-cgi.

Seuraavaksi on otettava CGI-tuki käyttöön lisäämällä asetustiedostoon /etc/lighttpd/lighttpd.conf server.modules-listaan "mod_fastcgi".

Samaan tiedostoon on myös lisättävä seuraavat rivit:

## FastCGI conf
fastcgi.server = ( ".php" => ((
					"bin-path" => "/usr/bin/php5-cgi",
					"socket" => "/tmp/php.socket"
				))
				)

jotta PHP-tulkki tulkkaisi .php-päätteiset tiedostot. Lopuksi tallennetaan muutokset ja käynnistetään palvelin uudelleen komennolla

# /etc/init.d/lighttpd restart

Salasanasuojatut hakemistot

Myös Lighttpd:ssä voi suojata hakemistoja Apachen tapaan. Koska emme halua tallentaa salasanoja selväkielisenä, lainaamme Apachen työkaluista htdigestiä. Asennetaan ensin Apachen työkalut, jotka löytyvät yleensä paketista apache2-utils.

Seuraavaksi luodaan haluttu tunnus, salasana ja realm, jossa se on voimassa:

# htdigest -c /etc/lighttpd/.lighttpdpassword 'Authorized users only' tunnus

Ja lisätään tiedoston /etc/lighttpd/lighttpd.conf server.modules-listaan "mod_auth", ja samaan tiedostoon johonkin kohtaan vielä seuraavat määritykset:

# mod_auth
auth.debug = 2
auth.backend = "htdigest"
auth.backend.htdigest.userfile = "/etc/lighttpd/.lighttpdpassword"

auth.require = ( "/secret/" =>
(
"method" => "digest",
"realm" => "Authorized users only",
"require" => "valid-user"
))

Jossa "/secret/" on hakemisto palvelimen juurihakemiston (document-root:n) suhteen ja johon pääsemiseksi vaaditaan salasana.

Tallenna muutokset ja käynnistä palvelin uudelleen.

SSL

Koska salasanasuojaus on hieman kyseenalainen, mikäli salasanat lähetetään Internetin läpi selkokielisenä, asetetaan vielä SSL-salaus.

Asenna openssl-paketti, mikäli se ei ole jo valmiina jonkin toisen paketin riippuvuutena. Luo seuraavaksi sertifikaatti, joka voimassa 365 vuorokautta:

# mkdir /etc/lighttpd/ssl/
# openssl req -new -x509 -keyout /etc/lighttpd/ssl/esimerkkinimi.pem -out /etc/lighttpd/ssl/esimerkkinimi.pem -days 365 -nodes

Kysymyksiin voi suurinpiirtein vastailla mitä haluat. Itse luodussa sertifikaatissa niillä ei ole juuri merkitystä, mutta kohtaan

 Common Name (eg, YOUR name) []: 

tulisi laittaa osoite jolla otetaan yhteys koneeseen (esim mundomain.com). Muuten selain saattaa antaa virheen koneelle kuulumattomasta sertifikaatista.

Lisää lopuksi /etc/lighttpd/lighttpd.conf-tiedostoon rivit:

# SSL
$SERVER["socket"]== "ip-osoite tai hostname tähän!:443" {
server.document-root = "/var/www"
ssl.engine = "enable"
ssl.pemfile = "/etc/lighttpd/ssl/esimerkkinimi.pem"
}

Ja taas asetukset tulevat voimaan vasta palvelimen uudelleenkäynnistyksen jälkeen.

Nyt sivut pitäisi näkyä myös osoitteessa https://localhost/

Katso myös

Aiheesta muualla