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