Módosítások

FastCGI

1 710 bájt hozzáadva, 2009. május 11., 14:38
nincs szerkesztési összefoglaló
Amennyiben úgy szeretnék Shibboleth SP-t beüzemelni, hogy biztonsági, vagy bármilyen egyéb megfontolásokból az FastCGI-ként fusson, úgy az alábbi példa lehet segítségünkrealábbiakban leírtak szerint kell(ene) a rendszernek működnie.
==FastCGI-ről==
Ezt még meg kell írni.
==TelepítésLighttpd, mint webszerver==
A Lighttpd{{ambox| type = attention| image = [[Image:Attention.svg|40px]]| text = <big>'''FIGYELEM!'''</big>----{{#if:{{{1|}}} | {{{1}}}}}Az alább leírt módszer csak elviekben működik, a gyakorlatban -t és a Shibbolethszükséges patchelés ellenére sem -et Debian Lenny rendszerre telepítjüksikerült működésre bírni. A hiba oka [http://redmine.lighttpd.net/issues/show/322 egy '''lighttpd bug'''], melyről a fejlesztők is tudnak, ám kijavítása nem szerepel a napirenden, mivel hivatalosan a patch megjavítja, ám a gyakorlat ezt cáfolja. Az egyszerűség érthetőség kedvéért mindkét összetevő csomagját a debian oldaláról letölthető forrásból állítjuk elő, majd már hibajelenség pontos leírása a generált csomagból telepítjüktelepítési folyamat leírása után található.
}}  ==== Lighttpd ==== A figyelmeztetésben is emlegetett, és az alább részletezett patch-elés miatt nem a legfrissebb, hanem az 1.4.15-ös lighttpd-t használjuk.
Beszerzés
dget wget http://ftpwww.delighttpd.debian.org/debian/poolnet/main/ldownload/lighttpd/lighttpd_1-1.4.19-515.tar.dscgz dpkgtar -source xf http://www.lighttpd.net/download/lighttpd-x *1.4.15.tar.dscgz
Egy ismert bug miatt, amely javítása későbbi lighttpd változatban már szerepel, de a debian csomagban lévőben még nem, emiatt A szükséges patch-elni kell. Patch letöltése:
wget http://redmine.lighttpd.net/attachments/download/91/fastcgi-authorizer-fixes.diff
patch -p0 < fastcgi-authorizer-fixes.diff
Konfigurálnunk Majd a patchelés kiegészítéseként be kell szúrnunk egy sort a fordítás paramétereit vim debian<code lang="xml">src/mod_fastcgi.c</rulescode> fájlba.
Melynek nyomán az alábbi részbe be kell illesztenünk az ssl con-es direktívákat tartalmazó sort. DEB_CONFIGURE_EXTRA_FLAGS +>http_status = --libdir=0)) { /usr/lib* * If we are here in AUTHORIZER mode then a request for autorizer * was proceeded already, and status 200 has been returned. We need * now to handle autorized request. */lighttpd --with-openssl \ --with-kerberos5 --with-pcre --with-bz2 \ --with-ldap --with-mysql --with-memcache \ -+++ con-with-lua>http_status =lua5.1 --with0; if ( ! buffer_is_empty(host-gdbm --with-attr \>docroot) ) { --with-openssl --with-openssl-libs= /usr/lib \* * Serve local file if they specified --with-webdav-locks --with-webdav-props \ * a docroot --with-fam */
Fordítás és telepítés ([http://redmine.lighttpd.net/projects/lighttpd/wiki/InstallFromSource|a <code lang=xml>configure</code> paraméterei természetesen tovább finomíthatók])
Csomagok elkészítése, majd telepítése debuild ./configure -b-libdir=/usr/lib/lighttpd --with-openssl --with-openssl-libs=/usr/lib cd ..make dpkg -i lighttpd_1.4.19-5_i386.debmake install
'''Telepítés utáni beállítás:'''
server.document-root = "/var/www/"
$SERVER["socket"] == "10.0.0.8:443" {// a host ip-címe
ssl.engine = "enable"
ssl.pemfile = "/etc/lighttpd/certs/lighttpd.pem" // ahol a domain-re vonatkozó tanusítványunk található
}
 
=== Shibboleth ===
"mode" => "authorizer"
)),
 
=== A HIBAJELENSÉG ===
 
Amennyiben használni akarunk "authorizer" modult (a shibbolethnél ez ugye kell, a másik modul, a "responder" típusú mellett), akkor ehhez a fastcgi beállításoknál meg kell adni egy gyökér pontot, amelyhez viszonyítva az összes vele egy szinten lévő, ill. alatta lévő hivatkozás esetén lefut az authorizer, és megmondja, hogy jogosult, tehát mehet tovább, vagy sem. Ez a gyökérpont a shibbolethes beállításoknál a "/" kell, hogy legyen, tehát minden esetben átfut az authorizer-en egy-egy kérés. Ez nem is lenne rossz, de a bug miatt, amennyiben a fastcgi beállításoknál az authorizer megadása után bármilyen (pl. php) respondert beállítunk, akkor az az authorizer által lefedett környezetben (esetünkben a "/" miatt mindenhol) a webszerver 403 hibát dob.

Navigációs menü