5.4  Bezpečnost páteřní sítě TEN-155 CZ

Centrální autentizační a autorizační systém TEN-155 CZ

Požadavky na řešení

Cílem projektu bylo vytvořit jednotný systém autentizace a autorizace použitelný pro co nejširší spektrum služeb v rámci sítě TEN-155 CZ. Tento systém měl zahrnovat také správu a evidenci uživatelů a jednotlivých služeb.

Systém měl poskytnout autentizační a autorizační služby i aplikacím, které byly doposud spravovány izolovaně a umožnit zajištění jednotného standardu zabezpečení přístupu ke službám.

Systém nebylo možno vázat na autentizaci uživatelů a služeb prostřednictvím X509 certifikátů, protože ne všechny služby mohou tento mechanismus využít. Měl by umožnit autentizaci různými protokoly od prostého hesla přes jednorázová hesla až k využití X509 certifikátů podle potřeb a možností jednotlivých navazujících systémů při zachování jednotné správy uživatelů sítě.

Aby bylo možné navázat na centrální autentizační a autorizační systém co nejvíce aplikací a služeb provozovaných na různých platformách, bylo nutné zvolit pro komunikaci standardizovaný, dostupný a zabezpečený protokol.

Principy řešení

Pro přístup k Centrálnímu autentizačnímu a autorizačnímu systému TEN-155 CZ byl zvolen Lightweight Directory Access Protocol (LDAP) verze 3 [Wah97] po kanálech zabezpečených SSL. Protokol umožňuje ověřovat autentizační informace různými mechanismy, navíc je možné další mechanismy doplnit pomocí Simple Authentication and Security Layer (SASL) [Mye97] rozšíření. Klientské knihovny s jednotným API jsou volně dostupné pro všechny běžné platformy a operační systémy (UNIXové klony, Win32, MacOS).

Správu systému vystavěného na LDAP serverech lze podle potřeby distribuovat mezi pověřené správce. Není například problém umožnit vedoucímu skupiny, aby nastavil heslo členu svého pracovního týmu. Stejně snadno lze systém konfigurovat tak, že veškerá práva (a odpovědnosti) budou v rukou jednoho administrátora. Lze zajistit třeba i to, že technický správce aplikace nebude vůbec řešit otázky přístupových práv k aplikaci a bude se zabývat pouze jejím provozem. Tak lze oddělit správu provozní od bezpečnostní. V centrálním autentizačním systému odpadají problémy s vyřazováním uživatelů z mnoha nezávislých systémů po ukončení jejich vztahu k instituci.

Jako vedlejší efekt lze využít části CAAS obsahující data o uživatelích k zpřístupnění kontaktních informací pro potřeby řešitelů, případně i uživatelů sítě TEN-155 CZ.

Implementace

Pro realizaci systému byl vybrán Netscape Directory Server jako robustní rychlý systém podporující všechny významné vlastnosti LDAP protokolu verze 3. Volně šiřitelná implementace LDAP serveru OpenLDAP prozatím podporuje pouze LDAPv2 a není pro CAAS vhodná. Pro tvorbu autentizačních a autorizačních modulů byla zvolena knihovna Netscape Directory SDK for C, která byla firmou Netscape uvolněna do oblasti volně šiřitelného programového vybavení. Vytvoření zabezpečeného kanálu na klientské straně realizujeme integrací volně šiřitelné knihovny OpenSSL do Netscape Directory SDK. Nástroje pro správu systému jsou vytvořeny v jazyce PHP verze 4. Interpret PHP byl rozšířen o upravené LDAP/OpenSSL rozhraní a je provozován jako modul HTTP serveru Apache verze 1.3.9.

Centrální autentizační a autorizační systém (CAAS) je tvořen dvojicí LDAP serverů, obsahujících provozní informace jednotlivých uživatelů (uživatelské jméno a heslo) a služeb. Hlavní server je umístěn na páteřní síti TEN-155 CZ v Praze, sekundární uzel bude po ukončení pilotního projektu přenesen do Brna. Hlavní server je provozován v režimu master a slouží jako místo vzniku a modifikace dat. Všechny změny jsou on-line přenášeny na sekundární server provozovaný v režimu replika. Zdvojením serveru zabezpečujeme rozložení zátěže, on-line zálohování a zrychlení doby odezvy. V případě potřeby je možné systém rozšířit o servery v dalších uzlech sítě.

V pilotním projektu jsou podporovány dva autentizační protokoly: prosté heslo a One Time Password (OTP) [Hal96]. Prosté heslo využívají k autorizaci služby s WWW rozhraním vzhledem k omezením daným dostupným programovým vybavením. Autorizační modul do nejrozšířenějšího HTTP serveru Apache, který by dokázal ověřovat X509 certifikáty uložené v LDAP serveru, zatím není k dispozici. Připravili jsme autorizační modul do Apache, který umožňuje správci serveru použitím standardních konfiguračních metod nadefinovat přístupová práva jednotlivých uživatelů a jejich skupin. Ověření identity uživatele a příslušnosti ke skupině provádí dotazem autorizační modul v LDAP serveru. Předpokladem bezpečného použití tohoto řešení je komunikace po SSL zabezpečeném kanálu jak mezi WWW klientem a WWW serverem, tak mezi WWW serverem a LDAP serverem.

OTP byl vybrán jako standardní protokol pro přenos autentizačních informací běžný v aplikacích provozovaných v terminálovém režimu. Na rozdíl od prostého hesla zajišťuje OTP vyšší ochranu autentizačních informací, vlastní heslo totiž nikdy neopouští počítač uživatele. Toto řešení nevyžaduje pro zabezpečení přenosu autentizačních informací kryptovaný kanál, vzhledem k riziku převzetí spojení je vhodné tam, kde je to možné, zabezpečit přenosovou cestu proti odposlechu. Připravili jsme modifikovaný program login, který ověřuje identitu uživatele proti LDAP serveru pomocí OTP SASL mechanismu. Podporu OTP SASL na straně serveru zajišťujeme plug-in knihovnou vyvinutou v rámci projektu. Pro správu uživatelských účtů v LDAP serveru byl interpret PHP rozšířen o OTP knihovnu. V budoucnu předpokládáme využití OTP také pro přístup k páteřním aktivním prvkům.

Správa Centrálního autentizačního a autorizačního systému TEN-155 CZ probíhá prostřednictvím WWW aplikací napsaných v jazyce PHP. Jelikož očekáváme další rozvoj systému a víme, že požadavky na jeho správu i na datový obsah se budou dále vyvíjet, vytvořili jsme univerzální knihovnu pro prezentaci a modifikaci dat v LDAP serveru. Knihovna poskytuje autorům uživatelského rozhraní moduly zprostředkující autorizaci k systému, vyhledávání údajů, jejich prezentaci a modifikaci. Knihovna také zprostředkuje přístup k seznamům přístupových práv (ACL) LDAP serveru, takže aplikace, která ji využívá, může nabízet uživatelům pouze ty funkce a vlastnosti, které jim server povolí využít.

Závěry a výhled na rok 2000

V rámci pilotního projektu byla vytvořena databáze řešitelů TEN-155 CZ - uživatelů pilotního projektu. Byla připravena nová verze HTTP serveru www.ten.cz využívající CAAS. Připravuje se nasazení stejného software na prezentační WWW servery projektu Statistické vyhodnocení provozu.

Centrální autentizační a autorizační systém TEN-155 CZ je připraven poskytovat autentizační a autorizační služby všem WWW aplikacím v rámci sítě. Stačí nasadit Apache server s příslušným autorizačním modulem a nadefinovat standardním způsobem přístupová práva. Správce CAAS může uživateli jeho zařazením do příslušné skupiny umožnit využívání libovolného WWW zdroje. V následujícím roce očekáváme rozšíření této služby na všechny WWW servery TEN-155 CZ. Pro zjednodušení přístupu k WWW aplikacím chceme CAAS doplnit o autentizaci pomocí uživatelských X509 certifikátů.

V příštím roce bychom chtěli využít CAAS i k autorizaci přístupu k centrálním aktivním prvkům páteře TEN-155 CZ. Předpokládáme využití CAAS jako databáze pro TACACS+ nebo RADIUS server. To bude vyžadovat rozšíření LDAP schematu o další atributy a třídy a modifikaci software TACACS+ nebo RADIUS serveru.

Autorizace přístupu ke službám sítě TEN-155 CZ není jediným využitím databáze CAAS. Poskytuje centrální místo pro zpřístupnění kontaktních informací o řešitelích. Po uložení informací o aktivních prvcích a uzlech páteřní sítě předpokládáme také v příštím roce její využití pro práci projektů Statistického vyhodnocení provozu a Podpora řešení provozních problémů a konfiguračních požadavků.

Certifikační autorita TEN-155 CZ

Služby sítě TEN-155 CZ využívají na mnoha místech komunikaci zabezpečenou protokolem SSL. Používání tohoto protokolu vyžaduje existenci infrastruktury pro tvorbu, distribuci a správu X509 certifikátů. Systém dosud v TEN-155 CZ užívaný již nevyhovuje, bylo tedy rozhodnuto nahradit jej novým.

Výběr software

V rámci projektu jsme testovali několik systémů určených pro správu X509 certifikátů:

Netscape Certificate Management System

Komplexní systém správy certifikátů úzce spolupracující s ostatními produkty firmy, zejména s Netscape Directory Serverem. Umožňuje variabilitu konfigurací pro různá použití, nabízí grafické uživatelské rozhraní.

Pro použití v prostředí TEN-155 CZ je systém až příliš komplikovaný, k jeho nevýhodám patří i licenční politika firmy Netscape, pro vývoz mimo USA a Kanadu jsou v produktu omezeny délky šifrovacích klíčů, některé šifrovací mechanismy nejsou v exportní verzi dostupné vůbec. Jistou nevýhodou je i nedostupnost zdrojových kódů systému.

OSCAR (Open Secure Certificate ARchitechture)

Produkt australské firmy DSTC je tvořen C++ knihovnou pro správu X509 certifikátů a několika programy volanými z příkazové řádky. Je dodáván ve zdrojovém kódu, testovali jsme na Linuxu. Je volně použitelný pro nekomerční účely. Nemá žádná omezení šifrovacích algoritmů. Podporuje LDAP protokol pro publikování certifikátů.

Systém vyhovuje požadavkům pro využití v síti TEN-155 CZ. Omezením je pouze licenční politika DSTC.

OpenCA

Volně šiřitelný systém postavený na knihovně OpenSSL byl v době testování ještě v raném stadiu vývoje a nevyhověl potřebám řešitelů.

OpenSSL

Volně šiřitelná implementace protokolu SSL/TLS není primárně určena ke správě X509 certifikátů, ale poskytuje nástroje, s jejichž pomocí lze systém infrastruktury pro jejich tvorbu, distribuci a správu vystavět. Je dostupná ve zdrojovém kódu, podporuje bez omezení všechny běžné kryptografické algoritmy. Velkou výhodou je i to, že řešitelé tento produkt znají (používáme jej i v dalších subsystémech jako SSL modul pro server Apache, SSL rozšíření pro Netscape Directory Server SDK for C, SSL rozšíření pro PHP, stávající certifikační systém TEN-155 CZ jej také používal).

Po vyhodnocení testů bylo rozhodnuto vytvořit vlastní systém správy X509 certifikátů na základě knihovny OpenSSL.

Implementace

Vytvořili jsme sadu programů pro vytváření a podepisování X509 certifikátů a jejich publikaci do LDAP serveru. Programy jsou napsány v jazyce Perl, pro práci s certifikáty volají jednoúčelové programy napsané v jazyce C s použitím knihovny OpenSSL, přístup k LDAP serveru je řešen pomocí modulu PerLDAP (volně šiřitelné rozšíření Perlu o funkce knihovny Netscape Directory Server SDK for C). Součástí systému jsou i nástroje pro tvorbu a pravidelné publikování revokačních seznamů. Programy se ovládají z příkazové řádky.

Vlastní strukturu certifikačního stromu Certifikační autority TEN-155 CZ (CA) jsme vybudovali jako dvouúrovňovou. V kořeni stromu je hlavní certifikát CA TEN-155 CZ, který je určen pouze k podepisování specializovaných certifikátů. Klíč k hlavnímu certifikátu CA TEN-155 CZ je uložen na zálohovaném výměnném mediu a není nikdy používán na počítači připojeném k síti. Certifikát je platný 3 roky. Hlavním certifikátem CA TEN-155 CZ jsou podepsány dva certifikáty druhé úrovně, jeden určený k podepisování certifikátů síťových serverů, druhý k podepisování certifikátů uživatelů. Cílem rozdělení funkcí jednotlivých certifikátů je zajistit možnost případné revokace některého z certifikátů druhé úrovně a umožnit v případě potřeby distribuci funkcí Certifikační autority TEN-155 CZ bez nutnosti kompletní rekonfigurace všech systémů, které certifikáty používají. Certifikáty druhé úrovně jsou platné 3 roky.

Závěry a výhled na rok 2000

V pilotním projektu jsme vygenerovali certifikáty pro servery sítě TEN-155 CZ tak, aby mohly poskytovat služby po zabezpečených SSL kanálech. Prozatím jsme upustili od využití X509 certifikátů k autentizaci uživatelů. V příštím roce chceme rozšířit funkce CAAS o verifikaci certifikátů a nabídnout tak jednotlivým službám tento způsob autentizace uživatelů. K tomu bude nutné upravit autentizační moduly pro aplikace a organizačně vyřešit generování uživatelských certifikátů.

Konfigurace virtuální privátní sítě se vzdáleným přístupem

V laboratorních podmínkách jsme ověřili testovací konfiguraci virtuální privátní sítě se vzdáleným přístupem (VPDN) přes komutované linky využívající technologii IPSec firmy Cisco Systems: IOS verze 12 s podporou IPSec pro směrovače Cisco 7206 a IPSec klienta CiscoSecure VPN Client v1 pro MS Windows. Testovací konfigurace VPDN odpovídala prostředí, které demonstruje obrázek 5.12.

[obrázek]

Obrázek 5.12: Testovací konfigurace VPDN

Privátnost vzdáleného přístupu do testovacího intranetu 10.0.0.0/8 prostřednictvím veřejné telefonní sítě je tedy zabezpečena následujícím způsobem:

  1. Komunikace je zahájena voláním na příslušné telefonní číslo přístupového serveru Cisco 3620 protokolem PPP s primární kryptografickou autentizací CHAP (MD5) nebo MS-CHAP (MD4). Ta musí odpovídat příslušné úrovni autentizace/autorizace aktivní konfigurace TACACS+ serveru pro přihlašujícího se vzdáleného uživatele, resp. jeho skupinu.
  2. Pokud je autentizace/autorizace vzdáleného uživatele na TACACS+ serveru úspěšná, inicializuje se zpětně volání. Konfigurace TACACS+ serveru určuje, zda vzdálený uživatel smí dynamicky změnit volané číslo nebo zda je pevně dáno.
  3. Po úspěšné realizaci zpětného volání je provedena sekundární autentizace/autorizace na úrovni PPP opět kryptografickými protokoly CHAP (MD5) nebo MS-CHAP (MD4). Opět musí odpovídat příslušné úrovni autentizace/autorizace aktivní konfigurace TACACS+ serveru pro přihlašujícího se uživatele, resp. jeho skupinu.
  4. Vstupní ACL na telefonních/asynchronních vstupech přístupového serveru Cisco 3620 jsou nastaveny tak, že na úrovni IP je povolena pouze komunikace pro protokoly IPSec (tedy čísla IP protokolů 50 a 51) a IKE (port 500 protokolu UDP). Tím je vynuceno povinné použití protokolu IPSec pro přístup do testovacího intranetu.

Konfigurační parametry přístupu kryptografickými protokoly IPSec/IKE jsme zvolili optimálně z metod podporovaných serverem (směrovač Cisco 7206) a klientem (CiscoSecure VPN Client pro Windows NT/98 verze 1):

předchozí
obsah
následující
další weby:fond rozvojemetacentrumCzechLightpřenosyvideoservereduroameduID.cz