Módosítások

Shib2IdpInstall

4 187 bájt hozzáadva, 2013. március 14., 11:09
maxrefreshdelay HREF föderációs metadata beállítása az IdP-ben
{{INFO|Amennyiben a Tomcat önállóan fut, szükség van a Shibboleth Security Provider telepítésére!}}
[https://spaceswiki.internet2shibboleth.edunet/confluence/display/SHIB2/IdPApacheTomcatPrepare További információ angolul]
== Apache beállítás ==
<source lang="apache">
<VirtualHost _default_:443>
ServerName aai-logon.example.org :443
SSLEngine On
SSLCertificateFile /etc/ssl/certs/aai-logon.example.org.crt SSLCertificateKeyFile /etc/ssl/private/aai-logon.example.org.key SSLCertificateChainFile /etc/ssl/certs/aai-logon.example.org.crt
ProxyRequests Off
<Proxy ajp://localhost:8009>
<source lang="apache">
<VirtualHost _default_:8443>
ServerName aai-logon.example.org :8443
SSLEngine On
SSLCipherSuite ALL:!ADH:!EXPORT56:!EXPORT40:RC4+RSA:!SSLv2:+HIGH:+MEDIUM:+LOW:+EXP
</VirtualHost>
</source>
Ezek után engedélyezni kell a virtuális hosztokat
a2ensite aai-logon a2ensite aai-aa apache2ctl -t <font color="#999999">Syntax OK</font> Majd A virtuális hoszt engedélyezése után be kell tölteni az ssl modult  a2enmod ssl <font color="#999999"code>Module ssl installed; run /etc/init.d/apache2 force-reload to enable.</fontcodeVégül a proxy_ajp modult  a2enmod proxy_ajp és <font color="#999999"code>Enabling proxy as a dependency Module proxy installed; run /etc/init.d/apache2 force-reload to enable. Module proxy_ajp installed; run /etc/init.d/apache2 force-reload to enable. </fontcodeVégezetül modulokat, majd újra kell indítani az apache-ot  apache2ctl -k restart.
== Shibboleth 2.x IdP servlet telepítés ==
A hivatalos IdP kiadás innen [http://shibboleth.internet2.edu/downloads/shibboleth/idp/latest/ innen tölthető le]
Alternatívaként az NIIF által patchelt, ezáltal SLO képes IdP kiadást ajánljuk, ami a [httpshttp://www.aaisoftware.niif.hu/software NIIF AAI oldalról] érhető el. A Single Logout-képes IdP-ről további [[Single_Logout_in_Shibboleth_IdP|információ itt]].
====Kicsomagolás====
mv $IDP_HOME/logs /var/log/`basename $IDP_HOME`
ln -s /var/log/`basename $IDP_HOME` $IDP_HOME/logs
mkdir /var/runlib/`basename $IDP_HOME` mv $IDP_HOME/metadata /var/runlib/`basename $IDP_HOME`/metadata ln -s /var/runlib/`basename $IDP_HOME`/metadata $IDP_HOME/metadata
'''Jogosultságok beállítása''' - hogy a <code>tomcat6</code> felhasználó hozzáférhessen az alábbi könyvtárakhoz
chown -R tomcat6 /var/log/`basename $IDP_HOME` /var/runlib/`basename $IDP_HOME`
'''További, már telepített IdP-től függő tomcat beállítás'''
unpackWAR="false" />
</source>
 
==== Naplófájlok rotálása ====
Az alapértelmezett logging.xml nem törli a régi állományokat, ezért ezek egy idő után megtöltik a diszket.
 
Erre a korrekt megoldás az (lenne), ha a Logback alrendszert utasítjuk, hogy az N (a példában 90) napnál régebbi fájlokat rotálja ki. Ehhez a <code>logging.xml</code>-ben adjuk meg a <code>maxHistory</code> paramétert az ''összes'' <code>rollingPolic</code>y-nál, valahogy így:
<source lang="xml">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>/usr/local/shibboleth-idp/logs/idp-access-%d{yyyy-MM-dd}.log</FileNamePattern>
<maxHistory>4</maxHistory>
</rollingPolicy>
</source>
 
 
Sajnos azonban jelenleg a logback [http://jira.qos.ch/browse/LBCORE-147 csak egy állományt töröl], a régi file-okat megtartja (pl. akkor is, ha több, mint egy napig nem futott az IdP. Amíg ez nincs megoldva, addig kerülő megoldás lehet cron-ból törölni a régi file-okat
sudo crontab -u tomcat6 -e
MAILTO=mail@example.com
#m h dom mon dow command
52 18 * * * find /var/log/shibboleth-idp/ -mtime +90 -delete
== Teszt ==
id="shibboleth.MetadataTrustEngine" xsi:type="security:StaticExplicitKeySignature">
<security:Credential id="HREFSigner" xsi:type="security:X509Filesystem">
<security:Certificate>/path/to/idp/credentials/href_signerhref-metadata-signer-2011.crt</security:Certificate>
</security:Credential>
</security:TrustEngine>
A konfigurációban hivatkozott <code>href_signerhref-metadata-signer-2011.crt</code> elérhető innen: https://idpmetadata.niifeduid.hu/href_signerhref-metadata-signer-2011.crt, SHA-1 lenyomata a következő: <code>DFFE:4FAE:7F0B:B2E8:C8FB:3E59:D9ED:D8F7:33CB:387F:7969:C7DF:2B19:274F:FB8B:556D:42C7:97F6:3696:7466</code>
==== HREF föderációs metadata beállítása az IdP-ben ====
A HREF metadata állomány elérhetősége:
* httpshttp://rr.aaimetadata.niifeduid.hu/metadatacurrent/href-metadata.xml
A Shibboleth IdP <code>relying-party.xml</code> konfigurációban a következőképpen lehet beállítani a HREF metaadatot (fontos hogy az előző pontban leírt <code>TrustEngine</code> is be legyen állítva):
<MetadataProvider id="HREF-Metadata"
xsi:type="FileBackedHTTPMetadataProvider" xmlns="urn:mace:shibboleth:2.0:metadata"
metadataURL="httpshttp://rrmetadata.aai.niifeduid.hu/metadatacurrent/href-metadata.xml" backingFile="/path/to/idp/metadata/href-metadata.xml" maxRefreshDelay="PT1H" >
<MetadataFilter xsi:type="SignatureValidation" trustEngineRef="shibboleth.MetadataTrustEngine" />
</MetadataProvider>
 
====Tovább a föderációba====
Amennyiben a telepítendő IdP-t szeretnénk a HREF-be integrálni, úgy ennél a pontnál küldjünk egy levelet az [mailto:aai@niif.hu aai@niif.hu] címre, amely nyomán, ha minden rendben van, az IdP regisztrálásra kerül a [[Resource_Registry]]-ben, s a válasz e-mail tartalmaz majd két hivatkozást, melyekről letölthetők az <code>attribute-filter.xml</code> és <code>attribute-resolver.xml</code> fájlok. Ezek már testreszabva tartalmazzák az IdP igényeit, az első fájlt elég csak bemásolni, a másodikban pedig - értelemszerűen - az egyes, a helyi erőforrásokra vonatkozó felhasználóineveket és jelszavakat kell kicserélni a megfelelőre.
 
[[Resource_Registry#IdP_regisztr.C3.A1ci.C3.B3|További információk a Resource Registry-be történő felvételről]]
 
;Attribútum filter automatikus frissítése
A Resource Registry automatikusan generálja minden egyes föderációban szereplő IdP számára a saját, testre szabott attribútum filterét, így célszerű úgy beállítani az IdP-t, hogy ezt a fájlt automatikusan töltse le. Ehhez hozzunk létre egy <code>confcache</code> nevű könyvtárat, adjunk rá írásjogot a <code>tomcat6</code> felhasználónak, majd szerkesszük a <code>conf/service.xml</code>fájlt. Az XML felső harmadában kerül megadásra az <code>AttributeFilterEngine</code>, melyet az alábbiak alapján kell átírni.
 
<Service id="shibboleth.AttributeFilterEngine"
xsi:type="attribute-afp:ShibbolethAttributeFilteringEngine"
configurationResourcePollingFrequency="3600000"
configurationResourcePollingRetryAttempts="128">
<ConfigurationResource url="https://rr.aai.niif.hu/gen_attribute-filter.php/href/IDP_NEVE_AZ_RRBEN/attribute-filter.xml"
file="/path/to/shibboleth-idp/confcache/attribute-filter.xml" xsi:type="resource:FileBackedHttpResource" />
</Service>
 
;Több attribútum filter használata
Hasznos lehet, ha a föderációs szűrőkön kívül további irányokba kívánunk IdP-nkből attribútumokat kiadni. Elterjedt, hogy pl. különböző google szolgáltatásokhoz lehet az intézményen keresztül autentikálni, amely beállítási részleteket értelemszerűen a Resource Registry nem tartalmazza, így a letöltött friss, és a régi, helyi adatokat is tartalmazó fájlok egyesítése bosszantó plusz munka lehet. Ezt elkerülendd dolgozhatunk több attribútum filterfájlból. Ehhez ismét a <code>conf/service.xml</code> fájlt kell szerkeszteni. Alább a fenti kódrészlet kiegészítése.
 
<Service id="shibboleth.AttributeFilterEngine"
xsi:type="attribute-afp:ShibbolethAttributeFilteringEngine"
configurationResourcePollingFrequency="3600000"
configurationResourcePollingRetryAttempts="128">
<ConfigurationResource url="https://rr.aai.niif.hu/gen_attribute-filter.php/href/IDP_NEVE_AZ_RRBEN/attribute-filter.xml"
file="/path/to/shibboleth-idp/confcache/attribute-filter.xml" xsi:type="resource:FileBackedHttpResource" />
<ConfigurationResource file="/path/to/shibboleth-idp/conf/attribute-filter-local.xml" xsi:type="resource:FilesystemResource" />
</Service>
 
Ezek a lépések természetesen kihagyhatók, ha nincs szándékunkban a föderáció tagjaivá válni, ekkor érdemes az alább részletezett attribútumokhoz kapcsolódó tudnivalókkal folytatni.
 
;[[EduidFedStats|Statisztika küldés]]
=== [[Shib2IdpAuth | Autentikáció beállítása]] ===

Navigációs menü