6 999
contributi
m (corretto template autori (numero revisori)) |
S3v (discussione | contributi) mNessun oggetto della modifica |
||
Riga 16: | Riga 16: | ||
== ''(Opzionale)'' Riconfigurazione di OpenLDAP == | == ''(Opzionale)'' Riconfigurazione di OpenLDAP == | ||
Il server OpenLDAP va riconfigurato e modificato per potersi integrare con FreeRadius, l'implementazione | Il server OpenLDAP va riconfigurato e modificato per potersi integrare con FreeRadius, l'implementazione Linux più comune di un server Radius. | ||
<br/> | <br/> | ||
Occorre innanzitutto includere al file di configurazione di LDAP il file che contiene lo schema Radius: | Occorre innanzitutto includere al file di configurazione di LDAP il file che contiene lo schema Radius: | ||
Riga 26: | Riga 26: | ||
=== Fino a Debian Lenny === | === Fino a Debian Lenny === | ||
Aggiungiamo al file < | Aggiungiamo al file <code>/etc/ldap/slapd.conf</code> la riga che definisce lo schema Radius: | ||
<pre> | <pre> | ||
include /etc/ldap/schema/radius.schema | include /etc/ldap/schema/radius.schema | ||
Riga 32: | Riga 32: | ||
=== Da Debian Squeeze in poi=== | === 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 < | 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 <code>/etc/ldap/slapd.conf</code>.<br/> | ||
Creiamo il file < | Creiamo il file <code>schema_convert.conf</code>: | ||
<pre> | <pre> | ||
# touch /tmp/schema_convert.conf | # touch /tmp/schema_convert.conf | ||
Riga 76: | Riga 76: | ||
modifyTimestamp: 20080827045234Z | modifyTimestamp: 20080827045234Z | ||
</pre> | </pre> | ||
Salviamo tutto e copiamolo in < | Salviamo tutto e copiamolo in <code>/etc/ldap/schema</code>: | ||
<pre> | <pre> | ||
# cp /tmp/openldap.ldif /etc/ldap/schema | # cp /tmp/openldap.ldif /etc/ldap/schema | ||
</pre> | </pre> | ||
Infine importiamolo in OpenLDAP e riavviamo il demone: | Infine importiamolo in OpenLDAP e riavviamo il [[demone]]: | ||
<pre> | <pre> | ||
# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/openldap.ldif | # ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/openldap.ldif | ||
Riga 95: | Riga 95: | ||
== Configurazione di FreeRADIUS == | == Configurazione di FreeRADIUS == | ||
=== Test locale === | === Test locale === | ||
Iniziamo con qualcosa di semplice: creiamo un utente locale di test e verifichiamo che il demone faccia il suo dovere. Apriamo prima di tutto il file < | Iniziamo con qualcosa di semplice: creiamo un utente locale di test e verifichiamo che il demone faccia il suo dovere. Apriamo prima di tutto il file <code>/etc/freeradius/clients.conf</code> e cambiamo la chiave che serve per mettere in comunicazione il server Radius con i dispositivi di rete: | ||
<pre> | <pre> | ||
# nano /etc/freeradius/clients.conf | # nano /etc/freeradius/clients.conf | ||
Riga 107: | Riga 107: | ||
} | } | ||
</pre> | </pre> | ||
Quindi creiamo un utente locale aggiungendo le seguenti righe al file <code>/etc/freeradius/users</code>: | |||
<pre> | <pre> | ||
utentetest Cleartext-Password := "testpassword" | utentetest Cleartext-Password := "testpassword" | ||
Riga 125: | Riga 125: | ||
=== Autenticazione via MySQL === | === Autenticazione via MySQL === | ||
Apriamo il file di configurazione < | Apriamo il file di configurazione <code>/etc/freeradius/radiusd.conf</code> e decommentiamo la voce: | ||
<pre> | <pre> | ||
$INCLUDE sql.conf | $INCLUDE sql.conf | ||
</pre> | </pre> | ||
Poi apriamo il file < | Poi apriamo il file <code>/etc/freeradius/sites-available/default</code> e cerchiamo al suo interno tutte le configurazioni seguenti, decommentando l'autenticazione <code>sql</code>: | ||
<pre> | <pre> | ||
bind_address = * | bind_address = * | ||
Riga 151: | Riga 151: | ||
sql | sql | ||
</pre> | </pre> | ||
Aggiungiamo un nuovo utente al file <code>/etc/freeradius/users</code>: | |||
<pre> | <pre> | ||
testsql User-Password == "passwordsql" | testsql User-Password == "passwordsql" | ||
Riga 157: | Riga 157: | ||
Fall-Through := 1 | Fall-Through := 1 | ||
</pre> | </pre> | ||
e stiamo attenti a commentare le seguenti righe, dato che non vogliamo che il nuovo utente si autentichi su < | e stiamo attenti a commentare le seguenti righe, dato che non vogliamo che il nuovo utente si autentichi su <code>/etc/password</code>, ma solo su MySQL: | ||
<pre> | <pre> | ||
#DEFAULT Auth-Type = System | #DEFAULT Auth-Type = System | ||
Riga 175: | Riga 175: | ||
# mysql -u root -p radius < /etc/freeradius/sql/mysql/nas.sql | # mysql -u root -p radius < /etc/freeradius/sql/mysql/nas.sql | ||
</pre> | </pre> | ||
Creiamo un nuovo utente < | Creiamo un nuovo utente <code>radius@localhost</code> e diamogli i privilegi di accesso corretti sul database appena creato. | ||
* Da shell: | * Da [[shell]]: | ||
<pre> | <pre> | ||
# mysql -u root -p | # mysql -u root -p | ||
Riga 183: | Riga 183: | ||
mysql> quit; | mysql> quit; | ||
</pre> | </pre> | ||
* Da phpMyAdmin, inserendo un nuovo record nella tabella < | * Da phpMyAdmin, inserendo un nuovo record nella tabella <code>radcheck</code> | ||
L'unica cosa che resta da fare è istruire FreeRADIUS su come connettersi al database appena predisposto. Apriamo il file < | L'unica cosa che resta da fare è istruire FreeRADIUS su come connettersi al database appena predisposto. Apriamo il file <code>/etc/freeradius/sql.conf</code> e modifichiamo le linee seguenti con le corrette credenziali di accesso: | ||
<pre> | <pre> | ||
# Connect info | # Connect info | ||
Riga 212: | Riga 212: | ||
== Debug == | == Debug == | ||
Per effettuare operazioni di debug nel caso i client avessero difficoltà a connettersi alla rete wireless, può venire utile stoppare il servizio < | Per effettuare operazioni di debug nel caso i client avessero difficoltà a connettersi alla rete wireless, può venire utile stoppare il servizio <code>freeradius</code> e riavviarlo in modalità di debug: | ||
<pre> | <pre> | ||
# /etc/init.d/freeradius stop | # /etc/init.d/freeradius stop | ||
Riga 235: | Riga 235: | ||
# chmod 644 /var/www/daloradius/library/daloradius.conf.php | # chmod 644 /var/www/daloradius/library/daloradius.conf.php | ||
</pre> | </pre> | ||
L'ultimo passo che resta da compiere è aggiungere la tabella < | L'ultimo passo che resta da compiere è aggiungere la tabella <code>daloradius</code> al nostro database MySQL e impostare i corretti parametri di connessione per la nuova applicazione: | ||
<pre> | <pre> | ||
# cd /var/www/daloradius/contrib/db | # cd /var/www/daloradius/contrib/db | ||
Riga 254: | Riga 254: | ||
== Conclusioni == | == Conclusioni == | ||
A questo punto abbiamo un server Radius installato su Debian, in grado di gestire le richieste di autenticazione di tutti i dispositivi che supportano il protocollo di autenticazione Radius. Gli utenti saranno archiviati in un database MySQL; in ogni momento potranno essere aggiunti nuovi utenti tramite la shell < | A questo punto abbiamo un server Radius installato su Debian, in grado di gestire le richieste di autenticazione di tutti i dispositivi che supportano il protocollo di autenticazione Radius. Gli utenti saranno archiviati in un database MySQL; in ogni momento potranno essere aggiunti nuovi utenti tramite la shell <code>mysql</code> o tramite l'interfaccia <code>phpMyAdmin</code>. | ||
<br/> | <br/> | ||
Il passo successivo è decidere come configurare i nostri Access Point Wireless. In sostanza ci troviamo di fronte due possibili strade: | Il passo successivo è decidere come configurare i nostri Access Point Wireless. In sostanza ci troviamo di fronte due possibili strade: |
contributi