cs:spravce:pripojovani:radius:freeradius3

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
Následující verze Obě strany příští revize
cs:spravce:pripojovani:radius:freeradius3 [2018/06/26 15:58]
jan.tomasek@cesnet.cz
cs:spravce:pripojovani:radius:freeradius3 [2018/09/23 08:48]
jan.tomasek@cesnet.cz [Konfigurace RadSecu]
Řádek 172: Řádek 172:
 filter_inner_identity { filter_inner_identity {
 ... ...
-                ​if (&​outer.request:​User-Name =~ /​@([^@]+)$/​) { + if (&​outer.request:​User-Name != &​User-Name) { 
-                        update request { +
-                                Outer-Realm-Name = "​%{1}"​ + #  Get the outer realm. 
-                        }+
 + if (&​outer.request:​User-Name =~ /​@([^@]+)$/​) { 
 + update request { 
 + Outer-Realm-Name = "​%{1}"​ 
 + }
  
-                        ​+
-                        #  When we have an outer realm name, the user portion + #  When we have an outer realm name, the user portion 
-                        #  MUST either be empty, or begin with "​anon"​. + #  MUST either be empty, or begin with "​anon"​. 
-                        +
-                        #  We don't check for the full "​anonymous",​ because + #  We don't check for the full "​anonymous",​ because 
-                        #  some vendors don't follow the standards. + #  some vendors don't follow the standards. 
-                        +
-                         + if (&​outer.request:​User-Name !~ /​^anonymous@/​) { 
-                        # eduroam.cz: What vendors? + update request { 
- + Module-Failure-Message = "​User-Name is not anonymized"​ 
-                        ​if (&​outer.request:​User-Name !~ /​^anonymous@/​) { +
-                                update request { + reject 
-                                        Module-Failure-Message = "​User-Name is not anonymized"​ +
-                                + }
-                                reject +
-                        }+
 ... ...
 </​file>​ </​file>​
Řádek 226: Řádek 228:
 ==== Zamítání chybných realmů ==== ==== Zamítání chybných realmů ====
  
-Často se objevují realmy myabc.com, 3gppnetwork.org,​ ... také se objevuje mezera za realmem (androidí klávesnice a doplňování). Uživatele kteří udělají takovou chybu není možné ověřit a je lepší je odfiltrovat co nejdříve. Stáhněte si soubor [[https://​github.com/​CESNET/​ansible-freeradius/​blob/​master/​files/​eduroam-realm-checks|eduroam-realm-checks]] do ''/​etc/​freeradius/​policy.d/''​ a potom v ''/​etc/​freeradius/​sites-enabled/​defaults'':​+Často se objevují realmy myabc.com, 3gppnetwork.org,​ ... také se objevuje mezera za realmem (androidí klávesnice a doplňování). Uživatele kteří udělají takovou chybu není možné ověřit a je lepší je odfiltrovat co nejdříve. Stáhněte si soubor [[https://​github.com/​CESNET/​ansible-freeradius/​blob/​master/​files/​eduroam-realm-checks|eduroam-realm-checks]] do ''/​etc/​freeradius/​policy.d/''​ a potom v ''/​etc/​freeradius/​sites-enabled/​default'':​
  
 <​file>​ <​file>​
Řádek 305: Řádek 307:
 </​file>​ </​file>​
  
-V této konfiguraci se historicky může vyskytovat sdílené tajemství ''​secret = mysecret''​. Veškeré nové instalace používají ''​secret = radsec''​. Správné tajemství pro váš server naleznete v [[https://​caas.cesnet.cz/​caas|CAAS]]. V případě, že provádíte rekonfiguraci starší instalace RADIUS serveru se sdíleným tajemstvím ''​secret = mysecret'',​ požádejte o změnu sdíleného tajemství v naší konfiguraci na novější variantu.+V této konfiguraci se historicky může vyskytovat sdílené tajemství ''​secret = mysecret''​. Veškeré nové instalace používají ''​secret = radsec''​. Správné tajemství pro váš server naleznete v [[https://​caas.cesnet.cz/​caas|CAAS]] ​(položka "Inf. RADIUS1 secret"​). V případě, že provádíte rekonfiguraci starší instalace RADIUS serveru se sdíleným tajemstvím ''​secret = mysecret'',​ požádejte o změnu sdíleného tajemství v naší konfiguraci na novější variantu.
  
 Definice certifikátů pro klienta národního RADIUS serveru, kterého přiřaďte k RadSec tunelu (podruhé použití zmíněných klíčů a ca_file) a upravte parametry tak aby nadřazený RADIUS nemohl být označen jako nefunkční:​ Definice certifikátů pro klienta národního RADIUS serveru, kterého přiřaďte k RadSec tunelu (podruhé použití zmíněných klíčů a ca_file) a upravte parametry tak aby nadřazený RADIUS nemohl být označen jako nefunkční:​
Řádek 339: Řádek 341:
 Správným řešením je nasazení patchnuté verze ({{:​cs:​spravce:​pripojovani:​radius:​read-multiple-packet-from-radsec.patch.zip|}}). Správným řešením je nasazení patchnuté verze ({{:​cs:​spravce:​pripojovani:​radius:​read-multiple-packet-from-radsec.patch.zip|}}).
  
-Malé instituce mohou vystačit se snížením [[https://​github.com/​CESNET/​ansible-freeradius/​blob/​master/​templates/​tls.j2#​L49|lifetime]] z nekonečna na 600s v souboru ''​tls.conf''​.+Malé instituce mohou vystačit se snížením [[https://​github.com/​CESNET/​ansible-freeradius/​blob/​master/​templates/​tls.j2#​L49|lifetime]] z nekonečna na 600s v souboru ''​sites-enabled/​tls.conf''​.
  
 **Debian Stretch**: Vyplněný [[https://​bugs.debian.org/​cgi-bin/​bugreport.cgi?​bug=880913|bugreport #880913]], čeká na vydání verze 3.0.16. ​ **Debian Stretch**: Vyplněný [[https://​bugs.debian.org/​cgi-bin/​bugreport.cgi?​bug=880913|bugreport #880913]], čeká na vydání verze 3.0.16. ​
Řádek 345: Řádek 347:
 **Debian Jessie**: CESNETem provozovaný [[https://​aaiwiki.cesnet.cz/​deb/​jessie/​|repositář]] obsahuje opravenu verzi. **Debian Jessie**: CESNETem provozovaný [[https://​aaiwiki.cesnet.cz/​deb/​jessie/​|repositář]] obsahuje opravenu verzi.
  
-**RHEL**: Je k dispozici balíček od Petra Vaníčka: 2e4897aabc0cce34f8ad5bda53f974149c08bc3d1ea6c9c8b05c9e59143a0878 [[http://​pva.utia.cas.cz/​freeradius-3.0.13tlspatch.tar.gz|freeradius-3.0.13tlspatch.tar.gz]]+**RHEL**: ​Vyplněný [[https://​bugzilla.redhat.com/​show_bug.cgi?​id=1630684|bug 1630684]]. ​Je k dispozici balíček od Petra Vaníčka: 2e4897aabc0cce34f8ad5bda53f974149c08bc3d1ea6c9c8b05c9e59143a0878 [[http://​pva.utia.cas.cz/​freeradius-3.0.13tlspatch.tar.gz|freeradius-3.0.13tlspatch.tar.gz]]
  
 Diskuze v listu [[https://​random.cesnet.cz/​pipermail/​eduroam-admin/​2017-November/​001382.html|eduroam-admin]]. Diskuze v listu [[https://​random.cesnet.cz/​pipermail/​eduroam-admin/​2017-November/​001382.html|eduroam-admin]].
 +
 +=== Bug: inbound RADIUS/TLS connection stalls === 
 +
 +**Nepoužívejte verzi 3.0.17** má chybu [[https://​github.com/​FreeRADIUS/​freeradius-server/​issues/​2270|inbound RADIUS/TLS connection stalls]] projevuje se to hláškami v logu:
 +
 +<​code>​
 +(0) Failed writing 0 bytes to SSL BIO: -1
 +(0) Application data status 4
 +</​code>​
 ==== Přiřazení konkrétní VLAN návštěvníkům ==== ==== Přiřazení konkrétní VLAN návštěvníkům ====
  
Řádek 438: Řádek 449:
 ==== Normalizace MAC adres ====  ==== Normalizace MAC adres ==== 
  
-Formáty adres můžou být různé - pro zjednodušení můžeme využít normalizaci MAC adres na jediný formát, se kterým budeme následně adresy porovnávat. Přidáme definici normalizace do souboru ''/​etc/​freeradius/​sites-enabled/​default''​ do sekcí authorize a preacct:+Formáty adres můžou být různé - pro zjednodušení můžeme využít normalizaci MAC adres na jediný formát, se kterým budeme následně adresy porovnávat. Přidáme definici normalizace ​(volání fce ''​rewrite_calling_station_id''​) ​do souboru ''/​etc/​freeradius/​sites-enabled/​default''​ do sekcí authorize a preacct:
  
 <​file>​ <​file>​
Řádek 483: Řádek 494:
 </​file>​ </​file>​
  
-A začněte ho používat v ''/​etc/​freeradius/​sites-available/​default'' ​+A začněte ho používat v ''/​etc/​freeradius/​sites-available/​default''​, pokud budete chtít odfiltrovat monitoring tak volejte ''​reply_log''​ a ''​f_ticks''​ podmíněně,​ viz následující sekce.
  
 <​file>​ <​file>​
Řádek 558: Řádek 569:
 Vždy uveďte znak ''​1''​ před vaším realmem, více informací viz [[https://​tools.ietf.org/​html/​rfc5580#​page-12|RFC5580]]. Uvádějte váš realm, ermon simuluje další z AP ve vaší WiFi síti. Vždy uveďte znak ''​1''​ před vaším realmem, více informací viz [[https://​tools.ietf.org/​html/​rfc5580#​page-12|RFC5580]]. Uvádějte váš realm, ermon simuluje další z AP ve vaší WiFi síti.
  
-Správce instituce získá ''​sdilene_heslo''​ po přihlášení do [[https://​caas2.cesnet.cz/​caas/​hradmin|CAAS:​hradmin]] vyhledáním svého RADIUS serveru.+Správce instituce získá ''​sdilene_heslo''​ po přihlášení do [[https://​caas2.cesnet.cz/​caas/​hradmin|CAAS:​hradmin]] vyhledáním svého RADIUS serveru ​(položka "Mon. RADIUS1 secret"​).
  
 V souboru ''/​etc/​freeradius/​users''​ vytvořte lokální testovací účet. U tohoto účtu nastavte atributy tak, aby síťový prvek (bezdrátový bod, přepínač) nasměroval klienta do VLAN 666. Ta by v české části eduroam neměla nikam vést, tudíž nejsou testovací účty zneužitelné pro běžné připojení:​ V souboru ''/​etc/​freeradius/​users''​ vytvořte lokální testovací účet. U tohoto účtu nastavte atributy tak, aby síťový prvek (bezdrátový bod, přepínač) nasměroval klienta do VLAN 666. Ta by v české části eduroam neměla nikam vést, tudíž nejsou testovací účty zneužitelné pro běžné připojení:​
Řádek 648: Řádek 659:
           ok = return           ok = return
   }   }
-</​file>​ 
- 
-Formáty adres můžou být různé - pro zjednodušení můžeme využít normalizaci MAC adres na jediný formát, se kterým budeme následně adresy porovnávat. Přidáme definici normalizace do souboru ''/​etc/​freeradius/​sites-enabled/​default''​ do sekcí authorize a preacct: 
- 
-<​file>​ 
-authorize { 
-        filter_eduroam_realms 
-        filter_username 
-        rewrite_calling_station_id 
-        ... 
-} 
- 
-... 
- 
-preacct { 
-        preprocess 
-        rewrite_calling_station_id 
-        ... 
-} 
 </​file>​ </​file>​
  
Poslední úprava:: 2024/02/16 08:58