FreeRADIUS: Diferència entre les revisions
De Guifi.net - Wiki Català
| Línia 15: | Línia 15: | ||
# apt-get update | # apt-get update | ||
# apt-get upgrade | # apt-get upgrade | ||
| + | === Instal·lació de freeradius === | ||
* Instal·lem el paquet freeRADIUS i les dependencies | * Instal·lem el paquet freeRADIUS i les dependencies | ||
# apt-get install freeradius | # apt-get install freeradius | ||
| − | * Instal·lem el | + | * Instal·lem el mòdul ldap |
# apt-get install freeradius-ldap | # apt-get install freeradius-ldap | ||
| + | === Configuració === | ||
* Editem l'arxiu de configuració '''/etc/freeradius/radiusd.conf''' | * Editem l'arxiu de configuració '''/etc/freeradius/radiusd.conf''' | ||
No s'utilitza EAP, eliminem la linea "$INCLUDE eap.conf".Excepte això, la resta de l'arxiu '''radiusd.conf''' queda per defecte. | No s'utilitza EAP, eliminem la linea "$INCLUDE eap.conf".Excepte això, la resta de l'arxiu '''radiusd.conf''' queda per defecte. | ||
| Línia 109: | Línia 111: | ||
$INCLUDE sites-enabled/ | $INCLUDE sites-enabled/ | ||
* Editem l'arxiu de configuració '''/etc/freeradius/clients.conf''' | * Editem l'arxiu de configuració '''/etc/freeradius/clients.conf''' | ||
| − | + | Definim la clau d'accés al servidor freeradius i les subxarxes que hi tindràn accés. Per defecte és "testing1234", és recomanable canviar-la. | |
client localhost { | client localhost { | ||
ipaddr = 127.0.0.1 | ipaddr = 127.0.0.1 | ||
| Línia 126: | Línia 128: | ||
} | } | ||
* Editem l'arxiu de configuració '''/etc/freeradius/modules/ldap''' | * Editem l'arxiu de configuració '''/etc/freeradius/modules/ldap''' | ||
| − | Adaptem els paràmetres perquè coincideixin amb el domini guifi.net. Afegim “set_auth_type = yes” dins la | + | Adaptem els paràmetres perquè coincideixin amb el domini guifi.net. Afegim “set_auth_type = yes” dins la secció '''ldap''' |
ldap { | ldap { | ||
server = "ldap.guifi.net" | server = "ldap.guifi.net" | ||
| Línia 144: | Línia 146: | ||
} | } | ||
* Editem l'arxiu de configuració '''/etc/freeradius/sites-available/default''' | * Editem l'arxiu de configuració '''/etc/freeradius/sites-available/default''' | ||
| − | + | Editem l'arxiu '''default''', assegurant-nos que '''ldap''' queda inclòs a les seccions "authorize" i "authenticate". Suprimim altres opcions com ara "unix" dins d'aquestes seccions. | |
authorize { | authorize { | ||
ldap | ldap | ||
| Línia 170: | Línia 172: | ||
post-proxy { | post-proxy { | ||
} | } | ||
| + | * Editem l'arxiu de configuració '''/etc/freeradius/sites-available/inner-tunnel''' | ||
| + | Fem el mateix amb l'arxiu '''inner-tunnel''' | ||
| + | server inner-tunnel { | ||
| + | authorize { | ||
| + | ldap | ||
| + | } | ||
| + | authenticate { | ||
| + | Auth-Type LDAP { | ||
| + | ldap | ||
| + | } | ||
| + | } | ||
| + | session { | ||
| + | radutmp | ||
| + | } | ||
| + | post-auth { | ||
| + | Post-Auth-Type REJECT { | ||
| + | attr_filter.access_reject | ||
| + | } | ||
| + | } | ||
| + | pre-proxy { | ||
| + | } | ||
| + | post-proxy { | ||
| + | } | ||
| + | } | ||
| + | == Prova de funcionament == | ||
Revisió de 20:11, 16 març 2014
Aquest article està en desenvolupament. Pràcticament totes les pàgines del Wiki de Guifi.net són editables, però en aquesta falta informació essencial. Ampliant-ho ajudaràs a millorar Guifi.net.
Potser puguis ajudar-te amb els wikis castellà i anglès si tenen una pàgina equivalent.
FreeRADIUS
Introducció
Intenció: disposar d'un mecanisme d'autenticació federat compatible amb serveis (pptp, openvpn, squid, hotspots,..) per ampliar la capacitat dels servidors proxy o hotspot, per validar usuaris de guifi.net.
Es tria Radius perquè permet extendre la validació que ja s'ofereix via LDAP_SSL, i poder federar directament trastos Mikrotik, o serveis no compatibles amb LDAP com ara PPTP.
Requisits
Es parteix d'un servidor Debian/Ubuntu configurat amb guifi-proxy3.
Instal·lació i configuració
Entrem per ssh a la màquina:
- Actualitzem els paquets
# apt-get update # apt-get upgrade
Instal·lació de freeradius
- Instal·lem el paquet freeRADIUS i les dependencies
# apt-get install freeradius
- Instal·lem el mòdul ldap
# apt-get install freeradius-ldap
Configuració
- Editem l'arxiu de configuració /etc/freeradius/radiusd.conf
No s'utilitza EAP, eliminem la linea "$INCLUDE eap.conf".Excepte això, la resta de l'arxiu radiusd.conf queda per defecte.
prefix = /usr
exec_prefix = /usr
sysconfdir = /etc
localstatedir = /var
sbindir = ${exec_prefix}/sbin
logdir = /var/log/freeradius
raddbdir = /etc/freeradius
radacctdir = ${logdir}/radacct
name = freeradius
confdir = ${raddbdir}
run_dir = ${localstatedir}/run/${name}
db_dir = ${raddbdir}
libdir = /usr/lib/freeradius
pidfile = ${run_dir}/${name}.pid
user = freerad
group = freerad
max_request_time = 30
cleanup_delay = 5
max_requests = 1024
listen {
type = auth
ipaddr = *
port = 0
}
listen {
ipaddr = *
port = 0
type = acct
}
hostname_lookups = no
allow_core_dumps = no
regular_expressions = yes
extended_expressions = yes
log {
destination = files
file = ${logdir}/radius.log
syslog_facility = daemon
stripped_names = no
auth = no
auth_badpass = no
auth_goodpass = no
}
checkrad = ${sbindir}/checkrad
security {
max_attributes = 200
reject_delay = 1
status_server = yes
}
proxy_requests = yes
$INCLUDE proxy.conf
$INCLUDE clients.conf
thread pool {
start_servers = 5
max_servers = 32
min_spare_servers = 3
max_spare_servers = 10
max_requests_per_server = 0
}
modules {
$INCLUDE ${confdir}/modules/
}
instantiate {
exec
expr
expiration
logintime
}
$INCLUDE policy.conf
$INCLUDE sites-enabled/
- Editem l'arxiu de configuració /etc/freeradius/clients.conf
Definim la clau d'accés al servidor freeradius i les subxarxes que hi tindràn accés. Per defecte és "testing1234", és recomanable canviar-la.
client localhost {
ipaddr = 127.0.0.1
secret = testing1234
nastype = other
}
client 192.168.0.0/16 {
secret = testing1234
nastype = other
}
client 10.0.0.0/8 {
secret = testing1234
nastype = other
}
- Editem l'arxiu de configuració /etc/freeradius/modules/ldap
Adaptem els paràmetres perquè coincideixin amb el domini guifi.net. Afegim “set_auth_type = yes” dins la secció ldap
ldap {
server = "ldap.guifi.net"
server = "ldap2.guifi.net"
port = "636"
identity = "uid=proxyldap2011,o=proxyusers,dc=guifi,dc=net"
password = proxyaproxy2011
basedn = "o=proxyusers,dc=guifi,dc=net"
filter = "(uid=%{%{Stripped-User-Name}:-%{User-Name}})"
ldap_connections_number = 5
timeout = 4
timelimit = 3
net_timeout = 1
dictionary_mapping = ${confdir}/ldap.attrmap
edir_account_policy_check = no
set_auth_type = yes
}
- Editem l'arxiu de configuració /etc/freeradius/sites-available/default
Editem l'arxiu default, assegurant-nos que ldap queda inclòs a les seccions "authorize" i "authenticate". Suprimim altres opcions com ara "unix" dins d'aquestes seccions.
authorize {
ldap
}
authenticate {
Auth-Type LDAP {
ldap
}
}
preacct {
}
accounting {
}
session {
radutmp
}
post-auth {
exec
Post-Auth-Type REJECT {
attr_filter.access_reject
}
}
pre-proxy {
}
post-proxy {
}
- Editem l'arxiu de configuració /etc/freeradius/sites-available/inner-tunnel
Fem el mateix amb l'arxiu inner-tunnel
server inner-tunnel {
authorize {
ldap
}
authenticate {
Auth-Type LDAP {
ldap
}
}
session {
radutmp
}
post-auth {
Post-Auth-Type REJECT {
attr_filter.access_reject
}
}
pre-proxy {
}
post-proxy {
}
}