cs:spravce:pripojovani:radius:freeradius_playbook

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
cs:spravce:pripojovani:radius:freeradius_playbook [2017/11/08 14:23]
machv@cesnet.cz
cs:spravce:pripojovani:radius:freeradius_playbook [2024/02/28 15:41]
Jan Čáslavský
Řádek 1: Řádek 1:
 ====== Instalace FreeRADIUSu 3 pro eduroam pomocí Ansible ====== ====== Instalace FreeRADIUSu 3 pro eduroam pomocí Ansible ======
 +
 +<WRAP center round important 60%>
 +Tento návod není udržovaný.
 +</​WRAP>​
 +
  
 Pro snažší instalaci můžete využít tento návod a instalaci pomocí nástroje Ansible. **Tato metoda je určena pouze pro zkušené uživatele.** Pokud nemáte dostatečné zkušenosti,​ s tímto postupem pravděpodobně strávíte mnohem více času než s manuální instalací! V případě, že nemáte dostatečné zkušenosti,​ využijte prosím návod pro manuální instalaci [[cs:​spravce:​pripojovani:​radius:​freeradius3|zde]]. Pro snažší instalaci můžete využít tento návod a instalaci pomocí nástroje Ansible. **Tato metoda je určena pouze pro zkušené uživatele.** Pokud nemáte dostatečné zkušenosti,​ s tímto postupem pravděpodobně strávíte mnohem více času než s manuální instalací! V případě, že nemáte dostatečné zkušenosti,​ využijte prosím návod pro manuální instalaci [[cs:​spravce:​pripojovani:​radius:​freeradius3|zde]].
Řádek 33: Řádek 38:
 cp roles/​freeradius/​examples/​ansible.cfg . cp roles/​freeradius/​examples/​ansible.cfg .
 cp roles/​freeradius/​examples/​chain_TERENA_SSL_CA_3.pem files/​certs/​ cp roles/​freeradius/​examples/​chain_TERENA_SSL_CA_3.pem files/​certs/​
-cp roles/​freeradius/​examples/​chain_CESNET_CA3.pem files/​certs/​+cp roles/​freeradius/​examples/​chain_CESNET_CA4.pem files/​certs/​
 read -p '​zadejte plne kvalifikovane jmeno (FQDN) vaseho RADIUS serveru: ' radius read -p '​zadejte plne kvalifikovane jmeno (FQDN) vaseho RADIUS serveru: ' radius
 </​file>​ </​file>​
Řádek 44: Řádek 49:
 </​file>​ </​file>​
  
-CESNET ​[[https://caas.cesnet.cz/caas|CAAS]] si dohledejte sdílené heslo pro monitoring. Dále vložte do terminálu následující příkazy: ​+V [[https://admin.eduroam.cz/|administrativní aplikaci]] si dohledejte sdílené heslo pro monitoring. Dále vložte do terminálu následující příkazy: ​
 <​file>​ <​file>​
 read -p '​zadejte sdilene heslo pro monitoring: ' ermon  read -p '​zadejte sdilene heslo pro monitoring: ' ermon 
Řádek 68: Řádek 73:
  
 Dále pokračujte na stránku, která vás provede zbytkem návodu. Stránku si vyberte podle role, která je pro vás adekvátní:​ Dále pokračujte na stránku, která vás provede zbytkem návodu. Stránku si vyberte podle role, která je pro vás adekvátní:​
-  * Role IdP + SP Tuto roli použijte v případě, že máte vlastní správu uživatelů. +  * [[cs:​spravce:​pripojovani:​radius:​freeradius_playbook_idpsp|Role IdP + SP]] Tuto roli použijte v případě, že máte vlastní správu uživatelů. 
-  * Role IdP + SP Tuto roli použijte v případě, že **NEmáte** vlastní správu uživatelů. +  * [[cs:​spravce:​pripojovani:​radius:​freeradius_playbook_sp|Role SP]] Tuto roli použijte v případě, že **NEmáte** vlastní správu uživatelů. 
-  * Role proxy Tuto roli použijte v případě, že pouze připojujete další serveru do eduroam infrastruktury. +  * [[cs:spravce:pripojovani:radius:freeradius_playbook_proxy|Role proxy]] ​Tuto roli použijte v případě, že pouze připojujete ​další servery ​do eduroam ​infrastruktury.
- +
- +
- +
-===== Role IdP + SP ===== +
- +
-Tato role představuje realm v tom smyslu, že: +
-  * ověřuje vlastní uživatele (IdP - Identity provider) +
-  * poskytuje službu (SP - Service provider) +
- +
-Tuto roli použijte v případě, že máte vlastní správu uživatelů. +
- +
-Vložte do terminálu následující příkazy +
-<​file>​ +
-read -p '​zadejte heslo pro ldap' ldap  +
-read -p '​zadejte heslo k privatnimu klici pro eap: ' eap  +
-</​file>​ +
- +
-Dále vložte do terminálu následující příkazy:​ +
-<​file>​ +
-echo " ​ ermon_secret:​ $ermon"​ >> group_vars/​idp_vault.yml +
-echo " ​ ldap_passwd:​ $ldap" >> group_vars/​idp_vault.yml +
-echo " ​ radsec_key_password:​ $radsec"​ >> group_vars/​idp_vault.yml +
-echo " ​ eap_key_password:​ $eap" >> group_vars/​idp_vault.yml +
-cp roles/​freeradius/​examples/​semik-dev.cesnet.cz-IdPSP.yml host_vars/$radius.yml +
-</​file>​ +
- +
-Pokud používáte pro RadSec i EAP stejný certifikát,​ vložte následující příkazy: +
-<​file>​ +
-sed -i "/​semik2-dev.cesnet.cz/​d"​ host_vars/​$radius.yml +
-sed -i "​s/​semik-dev.cesnet.cz/​$radius/"​ host_vars/​$radius.yml +
-sed -i "​s/​semik_dev_cesnet_cz/​$radius_/"​ host_vars/​$radius.yml +
-</​file>​ +
- +
-Pokud používáte pro RadSec a EAP **jiný** certifikát,​ vložte následující příkazy:​ +
-<​file>​ +
-sed -i "/​semik2-dev.cesnet.cz/​d"​ host_vars/​$radius.yml +
-sed -i ':​a;​$!{N;​ba};​s/​certificate:​ files\/​certs\/​semik-dev.cesnet.cz.crt/​certificate:​ files\/​certs\/'"​${radius}_eap.crt"'/​2'​ host_vars/​$radius.yml +
-sed -i ':​a;​$!{N;​ba};​s/​certificate:​ files\/​certs\/​semik-dev.cesnet.cz.key/​certificate:​ files\/​certs\/'"​${radius}_eap.key"'/​2'​ host_vars/​$radius.yml +
-</​file>​ +
- +
-==== Úprava LDAPu ==== +
- +
-Definici vašeho LDAP serveru musíte uvést do souboru ''​host_vars/​$radius.yml''​. Otevřete soubor v textovém editoru a upravte hodnotu hodnotu klíče ''​URL''​. +
- +
-Pokud chcete použít zabezpečené spojení, taktéž musíte adekvátně specifikovat hodnotu klíče ''​CAChain''​. +
- +
-Konkrétní DN, kam se bude hlásit daný uživatel použitý pro ověřování požadavků specifikujte v klíči ''​bindDN''​. +
- +
-Část stromu, ve které jsou umístěni uživatelé a bude v ní probíhat vyhledávání specifikujte v klíči ''​peopleDN''​. +
- +
-LDAP Atribut, ve kterém je uvedeno uživatelské heslo pro eduroam specifikujte v klíči ''​eduroamPassword''​  +
- +
-TODO - peopleSubSearch:​ - neni v playbooku pouzito +
-TODO - uid: - neni v playbooku pouzito +
-==== Více realmů ==== +
- +
-TODO +
- +
-==== Definice AP ==== +
- +
-Dále je třeba doplnit konfiguraci přístupových bodů. V textovém editoru otevřete soubor ''​host_vars/​$radius.yml''​. Lze to například pomocí příkazu:​ +
-<​file>​ +
-vim host_vars/​$radius.yml +
-</​file>​ +
- +
-Upravte sekci ''​NAS:''​. Pro každý přístupový bod musí být uvedena IP adresa, sdílené tajemství a krátké jméno. Můžete uvést libovolný počet přístupových bodů. Pro ermon není třeba vytvářet záznam, ten je již předdefinován ve výsledné konfiguraci. +
- +
- +
-===== Role SP ===== +
- +
-Tato role představuje realm v tom smyslu, že pouze poskytuje službu (SP - Service provider). +
- +
-Tuto roli použijte v případě, že **NEmáte** vlastní správu uživatelů. +
- +
-Provedeme další úpravy repozitáře. Následující příkazy vložte do terminálu:​ +
-<​file>​ +
-cp roles/​freeradius/​examples/​semik-dev.cesnet.cz-SP.yml host_vars/​$radius.yml +
-sed -i "​s/​semik-dev.cesnet.cz/​$radius/"​ host_vars/​$radius.yml +
-sed -i "​s/​semik_dev_cesnet_cz/​$radius_/"​ host_vars/​$radius.yml +
-echo " ​ ermon_secret:​ $ermon"​ >> group_vars/​idp_vault.yml +
-echo " ​ radsec_key_password:​ $radsec"​ >> group_vars/​idp_vault.yml +
-</​file>​ +
- +
-==== Definice AP ==== +
- +
-Dále je třeba doplnit konfiguraci přístupových bodů. V textovém editoru otevřete soubor ''​host_vars/​$radius.yml''​. Lze to například pomocí příkazu:​ +
-<​file>​ +
-vim host_vars/​$radius.yml +
-</​file>​ +
- +
-Upravte sekci ''​NAS:''​. Pro každý přístupový bod musí být uvedena IP adresa, sdílené tajemství a krátké jméno. Můžete uvést libovolný počet přístupových bodů. Pro ermon není třeba vytvářet záznam, ten je již předdefinován ve výsledné konfiguraci. +
- +
-===== Role proxy ===== +
- +
-Tato role představuje realm v tom smyslu, že pouze zprostředkovává ​ipojení ​dalších serverů ​do celé infrastruktury. +
- +
-Vložte do terminálu následující příkazy:  +
-<​file>​ +
-cp roles/​freeradius/​examples/​semik-dev.cesnet.cz-SP.yml host_vars/​$radius.yml +
-sed -i "​s/​semik-dev.cesnet.cz/​$radius/"​ host_vars/​$radius.yml +
-sed -i "​s/​semik_dev_cesnet_cz/​$radius_/"​ host_vars/​$radius.yml +
-echo " ​ ermon_secret:​ $ermon"​ >> group_vars/​idp_vault.yml +
-echo " ​ radsec_key_password:​ $radsec"​ >> group_vars/​idp_vault.yml +
-</​file>​ +
- +
-==== Definice podřízených RADIUS serverů ==== +
- +
-Dále je třeba doplnit konfiguraci podřízených RADIUS serverů. V textovém editoru otevřete soubor ''​host_vars/​$radius.yml''​. Lze to například pomocí příkazu:​ +
-<​file>​ +
-vim host_vars/​$radius.yml +
-</​file>​ +
- +
-Upravte sekci ''​downRADIUS::''​. Pro každý RADIUS server musí být uvedeno hostname, IP adresa a sdílené tajemství. +
- +
-==== Definice AP ==== +
- +
-Dále je třeba doplnit konfiguraci přístupových bodů. V textovém editoru otevřete soubor ''​host_vars/​$radius.yml''​. Lze to například pomocí příkazu:​ +
-<​file>​ +
-vim host_vars/​$radius.yml +
-</​file>​ +
- +
-Upravte sekci ''​NAS:''​. Pro každý přístupový bod musí být uvedena IP adresa, sdílené tajemství a krátké jméno. Můžete uvést libovolný počet přístupových bodů. Pro ermon není třeba vytvářet záznam, ten je již předdefinován ve výsledné konfiguraci. +
- +
- +
-===== Ansible vault ===== +
- +
-Ansible vault slouží k šifrování uchovaných informací. Hesla k privátním klíčům by se vám rozhodně neměly válet na disku v nešifrované podobě. +
- +
-Pro zašifrování důvěrných informací použijte příkaz: +
-<​file>​ +
-ansible-vault encrypt group_vars/​idp_vault.yml +
-</​file>​ +
- +
-**Použité heslo nesmíte zapomenout!** Heslo si můžete uložit pro pozdější použití do souboru (To však značně oslabuje bezpečnost). Korektní správu hesla pro vault ponecháváme na správci. +
- +
-===== Spuštění ===== +
- +
-Vložte do terminálu následující příkazy:  +
-<​file>​ +
-ansible-playbook -i inventory.conf --ask-vault-pass playbook-freeradius.yml +
-</​file>​ +
- +
-Alternativně můžete použít, pokud máte heslo k vaultu uložené v souboru:  +
-<​file>​ +
-ansible-playbook -i inventory.conf --vault-password-file ~/​heslo_k_vaultu.txt playbook-freeradius.yml +
-</​file>​+
  
-V případě, že všechno proběhlo hladce, měli byste mít správně nakonfigurován váš RADIUS server. 
Poslední úprava:: 2024/02/28 15:41