====== Identity Provider 4 (IdP) ====== Tento návod popisuje instalaci a konfiguraci //poskytovatele identit// (Identity Provider, IdP). Přestože existují i jiné možnosti (např. SimpleSAMLphp), doporučujeme použít [[https://wiki.shibboleth.net/confluence/display/IDP4/Home|Shibboleth IdP řady 4]], jemuž se tento návod věnuje. **Podpora pro Shibboleth IdP řady 3 byla ukončena k 31. 12. 2020. Tento návod se tedy týká již nové řady 4.** Můžete buď instalovat úplně od začátku anebo **[[.:4:shibboleth:upgrade|aktualizovat z poslední verze řady 3]]**. ===== Požadavky ===== Sdružení [[https://www.cesnet.cz/|CESNET]] doporučuje provozovat Shibboleth IdP na aktuální verzi 64bitové linuxové distribuce [[https://www.debian.org/|Debian]], pro niž je tento návod sepsán. Pro instalaci můžete použít jak dedikovaný hardware, tak virtuální stroj. Systém by však měl splňovat //alespoň// následující výkonové požadavky, které závisí mimo jiné na množství obsluhovaných uživatelů: * **1 jádro CPU**, * **4 GB RAM**, * **15 GB HDD**. Pro správnou funkčnost je velice důležité, aby měl server **přesně nastavený a synchronizovaný čas**. //SAML// zprávy obsahují časové značky, které jsou kontrolovány, a pokud je čas na serveru špatně, autentizace uživatelů nebude fungovat. Z pohledu softwarové výbavy je pro běh potřeba následující: * **Java**, * **servletový kontejner**, * **webový server**, * **databáze**. Shibboleth IdP je webová aplikace naprogramovaná v Javě, která pro svůj běh potřebuje kromě samotné Javy ještě servletový kontejner a samozřejmě i webový server. Pro obojí použijeme [[https://www.eclipse.org/jetty/|Jetty]] z balíčků Debianu. Dále je také potřeba databáze pro ukládání souhlasů s uvolněním uživatelských informací ([[cs:tech:attributes|atributů]]) a ukládání pseudonáhodného řetězce pro atribut [[cs:tech:attributes:edupersontargetedid]] / persistentní NameID. Jako databázi použijeme [[https://mariadb.com|MariaDB]]. ===== Instalace ===== V tomto návodu budeme používat utility, které nejsou součástí minimální instalace Debianu, a proto si je nainstalujeme: # Instalace používaných utilit apt install --no-install-recommends dirmngr gpg less vim Zbývající instalace je rozdělena do třech kroků: - [[.:4:mariadb]], - [[.:4:jetty]], - [[.:4:shibboleth]].