Návod je zastaralý a neduržovaný - aktuální verze je [[:cs:spravce:pripojovani:radsec:uvod|zde]]. ===== Konfigurace radsecproxy ===== //[[http://software.uninett.no/radsecproxy/index.php?page=download|radsecproxy]]// je software vyvíjený [[http://domen.uninett.no/~venaas/|Stigem Venaasem]] z UNINETT. Jde o software, který umožnuje překlad UDP RADIUS protokolu na TCP RadSec. Díky tomu je možné nasadit //radsecproxy// před jakýkoliv RADIUS server a použít ji místo IPsec pro zabezpečené připojení k národnímu RADIUS serveru. Schematické znázornění konfigurace RADIUS serveru při použítí IPsec je na následujícím obrázku. Zabezpečení komunikačního kanálu je z pohledu RADIUS serverů transparentní. {{:cs:spravce:pripojovani:radsec:klasicky-radius.png|Klasické propojení RADIUSů}} Pokud chceme komunikaci zabezpečit RadSecem, je nutné pro RADIUS servery, které ho nepodporují, použít //radsecproxy//. Schéma propojení je v tom případě následující: {{:cs:spravce:pripojovani:radsec:radsec-a-radsecproxy.png|Propojení prostřednictvím radsecproxy}} RADIUS server organizace je nutné upravit tak, aby dotazy na cizí realmy neposílal na ''radius1.eduroam.cz'', ale na //radsecproxy// poslouchající na ''localhost:11812''. RADIUS pakety jsou přijímány //radsecproxy// na ''localhost:11812'' a dále přeposílány po TCP na ''radius1.eduroam.cz:2083''. Odpovědi přicházejí na TCP/2083, kde je //radsecproxy// opět převede na RADIUS pakety a předá je RADIUS serveru na UDP/1812. ==== Příklad konfigurace ==== Nejprve je třeba nastavit parametry TLS. **Národní RADIUS používá certifikát vydaný [[https://pki.cesnet.cz/cs/ch-cca-crt-crl.html#cesnet_ca_4|CESNET CA4]]**. tls default { CACertificatePath /etc/ssl/certs CertificateFile /etc/ssl/certs/ipsec_certifikat.crt.pem CertificateKeyFile /etc/ssl/private/ipsec_certifikat.key.pem # CertificateKeyPassword password } Následuje definice UDP RADIUS serveru, na který budou posílány dotazy, které přijme //radsecproxy// po RadSec z //eduroam//u. server localhost { port 1812 type udp secret radsec statusserver on } Definice UDP portu, na kterém bude //radsecproxy// poslouchat, a také definice klienta, od kterého bude akceptovat data. ListenUDP localhost:11812 client localhost { type udp secret radsec } Definice národního RADIUS serveru v rolích klient a server pro RadSec. client radius1.eduroam.cz { type tls secret radsec } server radius1.eduroam.cz { type tls secret radsec statusserver on } Definice lokálního realmu, který bude předáván RADIUS serveru ''localhost'' (tj. původnímu RADIUS serveru). realm lokalni-realm.cz { server localhost } Všechny ostatní realmy budou předávány na národní RADIUS server. realm * { server radius1.eduroam.cz } ==== Příklad úprav konfigurace FreeRADIUSu 1.x.x ==== Je třeba upravit ''realm DEFAULT'' v souboru ''proxy.conf''. Místo ''radius1.eduroam.cz:1812'' zadejte ''localhost:11812''. realm DEFAULT { type = radius authhost = localhost:11812 secret = radsec nostrip } Dále je třeba upravit soubor ''clients.conf'' a přidat do něj sekci definující //radsecproxy// jako lokálního klienta. client localhost { secret = radsec shortname = radsecproxy } ==== Ladění ==== Pro ladění je vhodné spustit //radsecproxy// s přepínačem ''-f'', aby zůstala v popředí a bylo snadné sledovat výstup. Ten by měl vypada zhruba takto: radius:~# radsecproxy -f -d 3 radsecproxy revision $Rev: 217 $ starting listening for incoming TCP on *:2083 udpserverrd: listening for UDP on *:11812 tlsconnect: trying to open TLS connection to radius1.eduroam.cz port 2083 tlsconnect: TLS connection to radius1.eduroam.cz port 2083 up incoming TLS connection from 195.113.187.22 replyh: got status server response from radius1.eduroam.cz Ve výpisu je vidět, že //radsecproxy// navázala spojení na národní RADIUS server a také že přijala spojení z národního RADIUS serveru. Dále je možné ověřit navázaná spojení: radius:~# netstat -n |grep 2083 tcp 0 0 195.113.233.105:43611 195.113.187.22:2083 ESTABLISHED tcp 0 0 195.113.233.105:2083 195.113.187.22:38105 ESTABLISHED ==== Poznámky ==== 11/2015: Změna na sdílené tajemství 'radsec' které je i v RFC. 09/2009: Na FreeBSD je nutné potřeba použít verzi 1.3.1, jinak proxy nepřijímá příchozí spojení. 03/2008: Stabilní verze //radsecproxy// je 1.0. Vývojová verze podporuje navíc direktivu ''statusserver'', díky níž dokáže detekovat stav svých protějšků v komunikaci a v případě, že je definován záložní server, dokáže přepnout na zálohu dříve než klasický RADIUS, který závadu zjistí až v okamžiku, kdy potřebuje se svým protějškem komunikovat. 03/2008: Sdílené tajemství je vzhledem k použití TLS zbytečné, musí ale být na všech koncích nastaveno stejně. Budeme používat ''mysecret''. 03/2008: Na FW je nutné povolit příchozí TCP komunikaci na portu 2083 a odchozí TCP komunikaci na port 2083. 03/2008: Pokud provádíte přechod z IPsec na RadSec, je nutné zastavit ''racoon'' a odstranit IPsec politiky z kernelu pomocí ''setkey -F; setkey -FP''. ====== ====== --- //[[http://staff.cesnet.cz/~semik|Jan Tomášek]] 09.09.2009 09:12// přidal jsem info o minimální verzi na FreeBSD\\ --- //[[http://staff.cesnet.cz/~semik|Jan Tomášek]] 17. 03. 2008 16:46// vytvoření dokumentu