Autenticazione degli accessi Wireless tramite server Radius: differenze tra le versioni
Riga 21: | Riga 21: | ||
# cp /usr/share/doc/freeradius/examples/openldap.schema /usr/share/doc/freeradius/examples/ | # cp /usr/share/doc/freeradius/examples/openldap.schema /usr/share/doc/freeradius/examples/ | ||
# /etc/init.d/openldap restart | # /etc/init.d/openldap restart | ||
</pre> | |||
I passaggi successivi sono diversi a seconda della versione di Debian che stiamo utilizzando. | |||
=== Fino a Debian Lenny === | |||
Aggiungiamo al file <tt>/etc/ldap/slapd.conf</tt> la riga che definisce lo schema Radius: | |||
<pre> | |||
include /etc/ldap/schema/radius.schema | |||
</pre> | |||
=== Da Debian Squeeze in poi=== | |||
La nuova versione di OpenLDAP presente nei repository Debian a partire da Squeeze supporta un nuovo metodo di configurazione dinamico, non più basato sul file di configurazione statico <tt>/etc/ldap/slapd.conf</tt>.<br/> | |||
Creiamo il file <tt>schema_convert.conf</tt>: | |||
<pre> | |||
# touch /tmp/schema_convert.conf | |||
# nano /tmp/schema_convert.conf | |||
</pre> | |||
e editiamolo in questa maniera: | |||
<pre> | |||
include /etc/ldap/schema/core.schema | |||
include /etc/ldap/schema/collective.schema | |||
include /etc/ldap/schema/corba.schema | |||
include /etc/ldap/schema/cosine.schema | |||
include /etc/ldap/schema/duaconf.schema | |||
include /etc/ldap/schema/dyngroup.schema | |||
include /etc/ldap/schema/inetorgperson.schema | |||
include /etc/ldap/schema/java.schema | |||
include /etc/ldap/schema/misc.schema | |||
include /etc/ldap/schema/nis.schema | |||
include /etc/ldap/schema/openldap.schema | |||
include /etc/ldap/schema/ppolicy.schema | |||
include /etc/ldap/schema/samba.schema | |||
</pre> | |||
Salviamo il file e creiamo una directory temporanea per gli output di slapcat: | |||
<pre> | |||
# mkdir /tmp/ldif_output | |||
# slapcat -f schema_convert.conf -F /tmp/ldif_output -n0 -s "cn={10}openldap,cn=schema,cn=config" > /tmp/openldap.ldif | |||
# nano /tmp/openldap.ldif | |||
</pre> | |||
e modifichiamo il file come segue: | |||
<pre> | |||
dn: cn=openldap,cn=schema,cn=config | |||
... | |||
cn: openldap | |||
</pre> | |||
Rimuoviamo le stringhe a fondo pagina: | |||
<pre> | |||
structuralObjectClass: olcSchemaConfig | |||
entryUUID: b53b75ca-083f-102d-9fff-2f64fd123c95 | |||
creatorsName: cn=config | |||
createTimestamp: 20080827045234Z | |||
entryCSN: 20080827045234.341425Z#000000#000#000000 | |||
modifiersName: cn=config | |||
modifyTimestamp: 20080827045234Z | |||
</pre> | |||
Salviamo tutto e copiamolo in <tt>/etc/ldap/schema</tt>: | |||
<pre> | |||
# cp /tmp/openldap.ldif /etc/ldap/schema | |||
</pre> | |||
Infine importiamolo in OpenLDAP e riavviamo il demone: | |||
<pre> | |||
# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/openldap.ldif | |||
# /etc/init.d/slapd restart | |||
</pre> | </pre> |
Versione delle 20:54, 31 ago 2012
Introduzione
Se si prevede di installare una rete wireless, è consigliabile configurarla in modo che possano accedervi solo gli utenti specificati.
I metodi di protezione più comunemente adottati sono il sistema WPA e il sistema WPA2. Questi due protocolli supportano sia l'autenticazione attraverso una chiave segreta condivisa (PSK = Pre Shared Key) e conosciuta da tutti i client della rete, sia l'autenticazione attraverso un server specifico. Wi-Fi Alliance ha introdotto i termini WPA(2)-Personal e WPA(2)-Enterprise per differenziare le due classi di sicurezza fornite dai prodotti. I WPA(2)-Personal utilizzeranno il metodo PSK a chiave condivisa mentre i WPA(2)-Enterprise utilizzeranno un server di autenticazione.
In questa guida vedremo la configurazione di un server Radius su Debian, per fornire ai protocolli WPA e WPA2 un server di autenticazione in grado di fornire una coppia di credenziali (nome utente / password) diverse per ogni utente della rete wireless.
Prerequisiti
- Debian Lenny/Squeeze/Wheezy o superiori
- Un ambiente LAMP: Installare un ambiente LAMP: Linux, Apache2, SSL, MySQL, PHP5
- Un database LDAP configurato e funzionante, come descritto ad esempio in queste guide:
- Uno o più Access Point che supportino il protocollo WPA(2) 802.1x
Riconfigurazione di OpenLDAP
Il server OpenLDAP va riconfigurato e modificato per potersi integrare con FreeRadius, l'implementazione LInux più comune di un server Radius.
Occorre innanzitutto includere al file di configurazione di LDAP il file che contiene lo schema Radius:
# cp /usr/share/doc/freeradius/examples/openldap.schema /usr/share/doc/freeradius/examples/ # /etc/init.d/openldap restart
I passaggi successivi sono diversi a seconda della versione di Debian che stiamo utilizzando.
Fino a Debian Lenny
Aggiungiamo al file /etc/ldap/slapd.conf la riga che definisce lo schema Radius:
include /etc/ldap/schema/radius.schema
Da Debian Squeeze in poi
La nuova versione di OpenLDAP presente nei repository Debian a partire da Squeeze supporta un nuovo metodo di configurazione dinamico, non più basato sul file di configurazione statico /etc/ldap/slapd.conf.
Creiamo il file schema_convert.conf:
# touch /tmp/schema_convert.conf # nano /tmp/schema_convert.conf
e editiamolo in questa maniera:
include /etc/ldap/schema/core.schema include /etc/ldap/schema/collective.schema include /etc/ldap/schema/corba.schema include /etc/ldap/schema/cosine.schema include /etc/ldap/schema/duaconf.schema include /etc/ldap/schema/dyngroup.schema include /etc/ldap/schema/inetorgperson.schema include /etc/ldap/schema/java.schema include /etc/ldap/schema/misc.schema include /etc/ldap/schema/nis.schema include /etc/ldap/schema/openldap.schema include /etc/ldap/schema/ppolicy.schema include /etc/ldap/schema/samba.schema
Salviamo il file e creiamo una directory temporanea per gli output di slapcat:
# mkdir /tmp/ldif_output # slapcat -f schema_convert.conf -F /tmp/ldif_output -n0 -s "cn={10}openldap,cn=schema,cn=config" > /tmp/openldap.ldif # nano /tmp/openldap.ldif
e modifichiamo il file come segue:
dn: cn=openldap,cn=schema,cn=config ... cn: openldap
Rimuoviamo le stringhe a fondo pagina:
structuralObjectClass: olcSchemaConfig entryUUID: b53b75ca-083f-102d-9fff-2f64fd123c95 creatorsName: cn=config createTimestamp: 20080827045234Z entryCSN: 20080827045234.341425Z#000000#000#000000 modifiersName: cn=config modifyTimestamp: 20080827045234Z
Salviamo tutto e copiamolo in /etc/ldap/schema:
# cp /tmp/openldap.ldif /etc/ldap/schema
Infine importiamolo in OpenLDAP e riavviamo il demone:
# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/openldap.ldif # /etc/init.d/slapd restart