Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Obě strany předchozí revize Předchozí verze Následující verze | Předchozí verze | ||
cs:spravce:pripojovani:radius:radiator [2018/09/20 17:14] jan.tomasek@cesnet.cz [Požadavky bez realmu] |
cs:spravce:pripojovani:radius:radiator [2024/05/13 11:01] (aktuální) Jan Čáslavský |
||
---|---|---|---|
Řádek 141: | Řádek 141: | ||
byli schopni uživatele identifikovat na základě IP adresy která mu byla přidělena. | byli schopni uživatele identifikovat na základě IP adresy která mu byla přidělena. | ||
- | <xterm> | + | <code> |
<Handler Request-Type=Accounting-Request, | <Handler Request-Type=Accounting-Request, | ||
Realm=/^**cesnet\.cz**$|^**radius1\.cesnet\.cz**$/i> | Realm=/^**cesnet\.cz**$|^**radius1\.cesnet\.cz**$/i> | ||
Řádek 158: | Řádek 158: | ||
#AccountingHandled | #AccountingHandled | ||
</Handler> | </Handler> | ||
- | </xterm> | + | </code> |
Ověření identity a hesla uživatelů s realmem **cesnet.cz**, případně | Ověření identity a hesla uživatelů s realmem **cesnet.cz**, případně | ||
Řádek 166: | Řádek 166: | ||
uživatelů. | uživatelů. | ||
- | <xterm> | + | <code> |
<Handler Realm=/^**cesnet\.cz**$|^**radius1\.cesnet\.cz**$/i> | <Handler Realm=/^**cesnet\.cz**$|^**radius1\.cesnet\.cz**$/i> | ||
AuthBy CheckLDAP | AuthBy CheckLDAP | ||
Řádek 172: | Řádek 172: | ||
PostProcessingHook sub { CUI::add(@_); }; | PostProcessingHook sub { CUI::add(@_); }; | ||
</Realm> | </Realm> | ||
- | </xterm> | + | </code> |
Následující dva handlery jsou pro požadavky tunelované skrz TTLS | Následující dva handlery jsou pro požadavky tunelované skrz TTLS | ||
respektive PEAP, tato konstrukce je vynucena vnitřní architekturou | respektive PEAP, tato konstrukce je vynucena vnitřní architekturou | ||
- | Radiatoru. Volání skriptu [[cs:spravce:pripojovani:radius:radiator:eap_acct_username.pl|eap_acct_username.pl]], | + | Radiatoru. Volání skriptu [[https://gitlab.cesnet.cz/708/public/eduroam/-/blob/main/radiator/old/eap_acct_username.pl|eap_acct_username.pl]], |
slouží k tomu, aby se v ''Access-Accept'' paketech | slouží k tomu, aby se v ''Access-Accept'' paketech | ||
neobjevovala vnější anonymní identita. | neobjevovala vnější anonymní identita. | ||
- | <xterm> | + | <code> |
<Handler TunnelledByTTLS=1> | <Handler TunnelledByTTLS=1> | ||
AuthBy CheckLDAP | AuthBy CheckLDAP | ||
Řádek 197: | Řádek 197: | ||
</Handler> | </Handler> | ||
- | </xterm> | + | </code> |
==== Požadavky návštěvníků ==== | ==== Požadavky návštěvníků ==== | ||
Řádek 205: | Řádek 205: | ||
AP. Opět ho ukládáme lokálně, jen do jiného souboru: | AP. Opět ho ukládáme lokálně, jen do jiného souboru: | ||
- | <xterm> | + | <code> |
<Handler Request-Type=Accounting-Request> | <Handler Request-Type=Accounting-Request> | ||
AcctLogFileName /var/log/arch/radiator/radiator.global.%Y_%m_%d.acc | AcctLogFileName /var/log/arch/radiator/radiator.global.%Y_%m_%d.acc | ||
- | </xterm> | + | </code> |
a také ho posíláme našemu centrálnímu accounting systému: | a také ho posíláme našemu centrálnímu accounting systému: | ||
- | <xterm> | + | <code> |
<AuthBy RADIUS> | <AuthBy RADIUS> | ||
<Host **accounting.cesnet.cz**> | <Host **accounting.cesnet.cz**> | ||
Řádek 222: | Řádek 222: | ||
PreProcessingHook sub { CUI::add(@_); }; | PreProcessingHook sub { CUI::add(@_); }; | ||
</Handler> | </Handler> | ||
- | </xterm> | + | </code> |
Než k nám může od našich AP doputovat nějaký accounting o | Než k nám může od našich AP doputovat nějaký accounting o | ||
návštěvníkovi, tak musí předcházet ověření jeho identity. O to se postará národní RADIUS server. Pomocí atributu [[https://tools.ietf.org/html/rfc5580#page-12|Operator-Name]] předáme národnímu RADIUSu a domovské organizaci informaci o tom kterou organizaci návštěvník navštívil, znak 1 musí být před realmem uveden, viz syntaxe atributu. | návštěvníkovi, tak musí předcházet ověření jeho identity. O to se postará národní RADIUS server. Pomocí atributu [[https://tools.ietf.org/html/rfc5580#page-12|Operator-Name]] předáme národnímu RADIUSu a domovské organizaci informaci o tom kterou organizaci návštěvník navštívil, znak 1 musí být před realmem uveden, viz syntaxe atributu. | ||
- | <xterm> | + | <code> |
<Handler Realm=/^.+$/> | <Handler Realm=/^.+$/> | ||
<AuthBy RADSEC> | <AuthBy RADSEC> | ||
Řádek 247: | Řádek 247: | ||
TLS_CRLFile /etc/ssl/certs/9b59ecad.r0 | TLS_CRLFile /etc/ssl/certs/9b59ecad.r0 | ||
TLS_ExpectedPeerName radius1.eduroam.cz | TLS_ExpectedPeerName radius1.eduroam.cz | ||
- | </xterm> | + | </code> |
Odpověď na ověření návštěvníkovy identity ale musí být zkontrolována, jestli neobsahuje zakázané | Odpověď na ověření návštěvníkovy identity ale musí být zkontrolována, jestli neobsahuje zakázané | ||
AV páry od návštěvníkova domovského RADIUS serveru, také jestli se | AV páry od návštěvníkova domovského RADIUS serveru, také jestli se | ||
- | nejedná o testovací účet. Jde tedy o kontrolu a úpravu AV párů, o to se stará [[cs:spravce:pripojovani:radius:radiator:check_reply.pl|skript | + | nejedná o testovací účet. Jde tedy o kontrolu a úpravu AV párů, o to se stará skript [[https://gitlab.cesnet.cz/708/public/eduroam/-/blob/main/radiator/old/check_reply.pl|check_reply.pl]]. |
- | check_reply.pl]]. | + | |
- | <xterm> | + | <code> |
ReplyHook file:"/etc/radiator/check_reply.pl" | ReplyHook file:"/etc/radiator/check_reply.pl" | ||
</AuthBy> | </AuthBy> | ||
Řádek 264: | Řádek 263: | ||
AddToRequest Chargeable-User-Identity=\000 | AddToRequest Chargeable-User-Identity=\000 | ||
</Handler> | </Handler> | ||
- | </xterm> | + | </code> |
===== Ověření identity uživatele a jeho oprávnění používat eduroam ===== | ===== Ověření identity uživatele a jeho oprávnění používat eduroam ===== | ||
Řádek 274: | Řádek 273: | ||
oprávnění //eduroam// používat. | oprávnění //eduroam// používat. | ||
- | <xterm> | + | <code> |
<AuthBy LDAP2> | <AuthBy LDAP2> | ||
Identifier CheckLDAP | Identifier CheckLDAP | ||
- | </xterm> | + | </code> |
Radiator má implementovány dva mechanizmy, pomocí kterých se vyrovnává | Radiator má implementovány dva mechanizmy, pomocí kterých se vyrovnává | ||
Řádek 290: | Řádek 289: | ||
jména, ale informace o realmu se neztrácí. Toto je správná funkce pro použití v //eduroam//u. | jména, ale informace o realmu se neztrácí. Toto je správná funkce pro použití v //eduroam//u. | ||
- | <xterm> | + | <code> |
UsernameMatchesWithoutRealm yes | UsernameMatchesWithoutRealm yes | ||
- | </xterm> | + | </code> |
LDAP je provozován na tom samém počítači jako RADIUS server. Má | LDAP je provozován na tom samém počítači jako RADIUS server. Má | ||
Řádek 304: | Řádek 303: | ||
specifické VLAN. Tato funkce se používá pouze pro testovací účty. | specifické VLAN. Tato funkce se používá pouze pro testovací účty. | ||
- | <xterm> | + | <code> |
Host localhost | Host localhost | ||
Řádek 315: | Řádek 314: | ||
AuthAttrDef radiusTunnelPrivateGroupID, \ | AuthAttrDef radiusTunnelPrivateGroupID, \ | ||
Tunnel-Private-Group-ID, reply | Tunnel-Private-Group-ID, reply | ||
- | </xterm> | + | </code> |
Jsou podporovány různé typy EAP metod. S ohledem na chybu v software | Jsou podporovány různé typy EAP metod. S ohledem na chybu v software | ||
Řádek 325: | Řádek 324: | ||
Pokud používáte SureServer EDU, CESNET TCS anebo jinou CA která používá několik mezilehlých CA, tak místo EAPTLS_CertificateFile použijte EAPTLS_CertificateChainFile který musí obsahovat certifikát certifikátu následovaný řetězem mezilehlých CA. Viz diskuze v listu [[https://wiki.eduroam.cz/eduroam-admin/msg00478.html|eduroam-admin]]. | Pokud používáte SureServer EDU, CESNET TCS anebo jinou CA která používá několik mezilehlých CA, tak místo EAPTLS_CertificateFile použijte EAPTLS_CertificateChainFile který musí obsahovat certifikát certifikátu následovaný řetězem mezilehlých CA. Viz diskuze v listu [[https://wiki.eduroam.cz/eduroam-admin/msg00478.html|eduroam-admin]]. | ||
- | <xterm> | + | <code> |
EAPType LEAP,PEAP,TTLS,MSCHAP-V2,MD5,MD5-Challenge | EAPType LEAP,PEAP,TTLS,MSCHAP-V2,MD5,MD5-Challenge | ||
EAPTLS_CAPath /etc/ssl/certs/prazdny-adresar | EAPTLS_CAPath /etc/ssl/certs/prazdny-adresar | ||
Řádek 338: | Řádek 337: | ||
//**EAPAnonymous %n**// | //**EAPAnonymous %n**// | ||
SSLeayTrace 1 | SSLeayTrace 1 | ||
- | </xterm> | + | </code> |
- | [[cs:spravce:pripojovani:radius:radiator:search_hook.pl|Skript search_hook.pl]] zajištuje, aby uživatelé nemohli být příliš kreativní při vymýšlení vnější EAP identity, dovolená hodnota je jen ''anonymous@cesnet.cz''. | + | [[https://gitlab.cesnet.cz/708/public/eduroam/-/blob/main/radiator/old/search_hook.pl|Skript search_hook.pl]] zajištuje, aby uživatelé nemohli být příliš kreativní při vymýšlení vnější EAP identity, dovolená hodnota je jen ''anonymous@cesnet.cz''. |
- | <xterm> | + | <code> |
PostSearchHook file:"/etc/radiator/search_hook.pl" | PostSearchHook file:"/etc/radiator/search_hook.pl" | ||
- | </xterm> | + | </code> |
V případě, že uživatel nemá nadefinován atribut | V případě, že uživatel nemá nadefinován atribut | ||
Řádek 354: | Řádek 353: | ||
Další atributy jsou k odpovědi přidány vždy. | Další atributy jsou k odpovědi přidány vždy. | ||
- | <xterm> | + | <code> |
AddToReplyIfNotExist Tunnel-Private-Group-ID=1:100 | AddToReplyIfNotExist Tunnel-Private-Group-ID=1:100 | ||
AddToReply Tunnel-Type=1:VLAN,\ | AddToReply Tunnel-Type=1:VLAN,\ | ||
Tunnel-Medium-Type=1:Ether_802 | Tunnel-Medium-Type=1:Ether_802 | ||
</AuthBy> | </AuthBy> | ||
- | </xterm> | + | </code> |
===== Konfigurace CUI ===== | ===== Konfigurace CUI ===== | ||
Řádek 371: | Řádek 370: | ||
===== Přílohy ===== | ===== Přílohy ===== | ||
- | Kompletni konfigurace z tohoto clanku pro Raditator: [[cs:spravce:pripojovani:radius:radiator:radius.cfg|radius.cfg]]. | + | Kompletni konfigurace z tohoto clanku pro Raditator: [[https://gitlab.cesnet.cz/708/public/eduroam/-/blob/main/radiator/old/radius.cfg|radius.cfg]]. |
Konfigurace Radiatoru používaná na TUL: {{:cs:spravce:pripojovani:radius:radiator:tul-radius.tgz|tul-radius.tgz}} (27. 3. 2006). Za poskytnutí děkuji Petrovi Adamcovi. | Konfigurace Radiatoru používaná na TUL: {{:cs:spravce:pripojovani:radius:radiator:tul-radius.tgz|tul-radius.tgz}} (27. 3. 2006). Za poskytnutí děkuji Petrovi Adamcovi. | ||
Řádek 377: | Řádek 376: | ||
Implemnetace [[https://github.com/CESNET/radiator-cui/blob/master/cui_definitions_file|CUI na github]]u. | Implemnetace [[https://github.com/CESNET/radiator-cui/blob/master/cui_definitions_file|CUI na github]]u. | ||
- | Skript [[cs:spravce:pripojovani:radius:radiator:search_hook.pl|search_hook.pl]] zajištuje aby uživatelé mohli jako vnější anonymní identitu použít pouze ''anonymous@cesnet.cz''. | + | Skript [[https://gitlab.cesnet.cz/708/public/eduroam/-/blob/main/radiator/old/search_hook.pl|search_hook.pl]] zajištuje aby uživatelé mohli jako vnější anonymní identitu použít pouze ''anonymous@cesnet.cz''. |
- | Skript [[cs:spravce:pripojovani:radius:radiator:check_reply.pl|check_reply.pl]] odstraňuje z odpovědí AV páry které by mohli ovlivnit chování AP. | + | Skript [[https://gitlab.cesnet.cz/708/public/eduroam/-/blob/main/radiator/old/check_reply.pl|check_reply.pl]] odstraňuje z odpovědí AV páry které by mohli ovlivnit chování AP. Odpovědi od národního RADIUS serveru musí být kontrolovány jestli neobsahují AV páry, které by mohly ovlivnit funkci našich AP. Současně také probíhá kontrola, jestli návštěvník není na našem blacklistu. |
- | Skript [[cs:spravce:pripojovani:radius:radiator:eap_acct_username.pl|eap_acct_username.pl]] zajištuje aby v ''Access-Accept'' paketech v ''User-Name'' byla skutečná identita uživatele nikoliv anonymní vnější identita. | + | Skript [[https://gitlab.cesnet.cz/708/public/eduroam/-/blob/main/radiator/old/eap_acct_username.pl|eap_acct_username.pl]] zajištuje aby v ''Access-Accept'' paketech v ''User-Name'' byla skutečná identita uživatele nikoliv anonymní vnější identita. |
- | Skript [[cs:spravce:pripojovani:radius:radiator:patch_accounting.pl]] je další zajímavá ukázka hooku Radiatoru. Slouží na národním serveru k přidávání realmu do ''Access-Accept'' paketů. | + | Skript [[https://gitlab.cesnet.cz/708/public/eduroam/-/blob/main/radiator/old/patch_accounting.pl|patch_accounting.pl]] je další zajímavá ukázka hooku Radiatoru. Slouží na národním serveru k přidávání realmu do ''Access-Accept'' paketů. |