FreeRADIUS

De Guifi.net - Wiki Català

Icona d'esboç

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·lem el freeRADIUS
# apt-get install freeradius freeradius-ldap
  • Editem els arxius de configuració
/etc/freeradius/radiusd.conf
<tbody width="424"> </tbody>
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/
Eines de l'usuari