RADIUS - Guida rapida
Prima di iniziare a conoscere Radius, è importante capire:
- Cos'è AAA?
- Cos'è il NAS?
Quindi cerchiamo prima di avere un'idea di base su questi due argomenti.
Cos'è AAA?
AAA sta per autenticazione, autorizzazione e contabilità.
Autenticazione
Si riferisce alla conferma che un utente che richiede un servizio è un utente valido.
Ottenuto tramite la presentazione di identità e credenziali.
Esempi di credenziali includono password, token una tantum, certificati digitali e numeri di telefono (chiamanti / chiamati).
Autorizzazione
Si riferisce alla concessione di specifiche tipologie di servizio (incluso "nessun servizio") agli utenti in base alla loro autenticazione.
Può essere basato su restrizioni, ad esempio, restrizioni sull'ora del giorno o restrizioni sulla posizione fisica o restrizioni contro più accessi da parte dello stesso utente.
Esempi di servizi includono, filtro indirizzo IP, assegnazione indirizzo, assegnazione percorso, crittografia, QoS / servizi differenziali, controllo della larghezza di banda / gestione del traffico, ecc.
Contabilità
Si riferisce al monitoraggio del consumo di risorse di rete da parte degli utenti.
Le informazioni tipiche raccolte nella contabilità includono l'identità dell'utente, la natura del servizio fornito, quando il servizio è iniziato e quando è terminato.
Può essere utilizzato per la gestione, la pianificazione, la fatturazione, ecc.
Il server AAA fornisce tutti i servizi di cui sopra ai propri clienti.
Protocolli AAA
Radius è un protocollo AAA per applicazioni come Network Access o IP Mobility. Oltre a Radius, abbiamo i seguenti protocolli in AAA:
Terminal Access Controller Access Control System (TACACS)
TACACS è un protocollo di autenticazione remota utilizzato per comunicare con un server di autenticazione comunemente utilizzato nelle reti Unix. TACACS consente a un server di accesso remoto di comunicare con un server di autenticazione per determinare se l'utente ha accesso alla rete.
TACACS +
TACACS + fornisce il controllo degli accessi per router, server di accesso alla rete e altri dispositivi di elaborazione in rete tramite uno o più server centralizzati. Utilizza TCP e fornisce servizi di autenticazione, autorizzazione e contabilità separati. Funziona sulla porta 49.
DIAMETRO
Il diametro è una sostituzione pianificata di Radius.
Cos'è il server di accesso alla rete?
Il Network Access Server (NAS) è un elemento di servizio che i client compongono per avere accesso alla rete. Un NAS è un dispositivo dotato di interfacce sia per il backbone che per POTS o ISDN e riceve chiamate da host che desiderano accedere al backbone tramite servizi di dialup. Il NAS si trova nel punto di presenza di un provider Internet per fornire l'accesso a Internet ai suoi clienti.
Un server di accesso alla rete è:
Un unico punto di accesso a una risorsa remota.
Un server di accesso remoto, perché consente l'accesso remoto a una rete.
Un punto di ingresso iniziale a una rete.
Un gateway per proteggere le risorse protette.
Esempi inclusi:
Verifica dell'accesso a Internet tramite ID utente e password.
VoIP, FoIP e VMoIP richiedono un numero di telefono o un indirizzo IP valido.
La carta prepagata telefonica utilizza il numero della carta prepagata.
La figura seguente mostra un'architettura di base di Radius.
RADIUS è un protocollo per il trasporto di informazioni relative all'autenticazione, autorizzazione e configurazione tra un server di accesso alla rete che desidera autenticare i suoi collegamenti e un server di autenticazione condiviso.
RADIUS è l'acronimo di Remote Authentication Dial In User Service.
RADIUS è un protocollo AAA per applicazioni come Network Access o IP Mobility
Funziona in entrambe le situazioni, locale e mobile.
Utilizza i protocolli PAP (Password Authentication Protocol), CHAP (Challenge Handshake Authentication Protocol) o EAP (Extensible Authentication Protocol) per autenticare gli utenti.
Cerca in file di testo, server LDAP, database per l'autenticazione.
Dopo che i parametri dei servizi di autenticazione sono stati restituiti al NAS.
Notifica l'inizio e l'arresto di una sessione. Questi dati vengono utilizzati per scopi di fatturazione o statistiche.
SNMP viene utilizzato per il monitoraggio remoto.
Può essere utilizzato come proxy.
Ecco un diagramma reticolare semplice del raggio:
Ecco un elenco di tutte le caratteristiche principali di Radius:
Modello client / server
Il NAS funziona come client per il server Radius.
Il server Radius è responsabile di ricevere le richieste di connessione dell'utente, autenticare l'utente e quindi restituire tutte le informazioni di configurazione necessarie al client per fornire il servizio all'utente.
Un server Radius può fungere da client proxy per altri server Radius.
Sicurezza della rete
Le transazioni tra un client e un server vengono autenticate tramite l'uso di una chiave condivisa. Questa chiave non viene mai inviata sulla rete.
La password viene crittografata prima di inviarla sulla rete.
Meccanismi di autenticazione flessibili
Radius supporta i seguenti protocolli a scopo di autenticazione:
Protocollo punto a punto - PPP
Protocollo di autenticazione con password - PAP
Challenge Handshake Authentication Protocol - CHAP
Accesso UNIX semplice
Protocollo estensibile
Il raggio è estensibile; la maggior parte dei fornitori di hardware e software Radius implementano i propri dialetti.
Il protocollo senza stato, che utilizza UDP, viene eseguito sulla porta 1812.
Prima che il client inizi a comunicare con il server Radius, è necessario che la chiave segreta sia condivisa tra il client e il server e il client deve essere configurato per utilizzare il server Radius per ottenere il servizio.
Una volta configurato correttamente il client, allora:
Il client inizia con la richiesta di accesso.
Il server invia Access-Accept, Access-Reject o Access-Challenge.
Access-Accept conserva tutti gli attributi richiesti per fornire il servizio all'utente.
I codici raggio (decimali) vengono assegnati come segue:
- 1 Richiesta di accesso
- 2 Accesso-Accetta
- 3 Accesso-Rifiuto
- 4 Contabilità-richiesta
- 5 Accounting-Response
- 11 Sfida all'accesso
- 12 Status-Server (sperimentale)
- 13 Status-Client (sperimentale)
- 255 Riservato
- Nessun concetto Keep Alive - buono o cattivo ??
I codici 4 e 5 sono relativi alla funzionalità di contabilità Radius. I codici 12 e 13 sono riservati per un possibile utilizzo.
Il formato del pacchetto di Radius è come mostrato di seguito:
Code:È lungo 1 ottetto (1 byte) e identifica vari tipi di pacchetti. Normalmente 1 ottetto significa 1 byte.
Identifier: Anche questo è lungo 1 ottetto e aiuta a far corrispondere le risposte alle richieste.
Length:Questo è lungo 2 ottetti e specifica la lunghezza del pacchetto incluso codice, identificatore, lunghezza e autenticatore. (Il pacchetto minimo è 20 ottetti e il massimo è 4096 ottetti).
Authenticator: Questo è lungo 16 ottetti e riempito in caso di alcune richieste e risposte.
List of Attributes: C'è un elenco di 63+ attributi e anche un attributo Radius avrà un formato definito, descritto nel prossimo capitolo.
Un attributo Raggio è costituito dalle seguenti tre parti:
Type:1 ottetto lungo, identifica vari tipi di attributi. È un codice attributo elencato di seguito.
Length: 1 ottetto lungo, lunghezza dell'attributo incluso il tipo.
Value: 0 o più ottetti, contiene informazioni specifiche per l'attributo.
Elenco attributi RADIUS
Codice | Attributi |
---|---|
1 | Nome utente |
2 | Password utente |
3 | CHAP-Password |
4 | Indirizzo IP NAS |
5 | Porta NAS |
6 | Tipo di servizio |
7 | Protocollo con cornice |
8 | Indirizzo IP con cornice |
9 | Maschera di rete IP con cornice |
10 | Routing con cornice |
11 | Filter-Id |
12 | Frame-MTU |
13 | Compressione incorniciata |
14 | Login-IP-Host |
15 | Servizio di accesso |
16 | Porta TCP di accesso |
17 | (non assegnato) |
18 | Messaggio di risposta |
19 | Numero di richiamata |
20 | Callback-Id |
21 | (non assegnato) |
22 | Percorso incorniciato |
23 | Rete IPX con cornice |
24 | Stato |
25 | Classe |
26 | Specifico del fornitore |
27 | Timeout della sessione |
28 | Timeout di inattività |
29 | Risoluzione-azione |
30 | Called-Station-Id |
31 | Calling-Station-Id |
32 | Identificatore NAS |
33 | Stato proxy |
34 | Login-LAT-Service |
35 | Login-LAT-Node 3 |
36 | Login-LAT-Group |
37 | Collegamento AppleTalk con cornice |
38 | Rete AppleTalk con cornice |
39 | Zona AppleTalk con cornice |
40-59 | (riservato alla contabilità) |
60 | CHAP-Challenge |
61 | Tipo di porta NAS |
62 | Port-Limit |
63 | Login-LAT-Port |
Esempio di richiesta di raggio
Diamo uno sguardo a un esempio di richiesta di raggio:
Il NAS all'indirizzo 192.168.1.16 invia un pacchetto UDP di richiesta di accesso al server RADIUS per un utente chiamato Nemo che accede alla porta 3 con la password "arctangent".
Il Request Authenticator è un numero casuale di 16 ottetti generato dal NAS.
La password utente è di 16 ottetti riempiti alla fine con valori nulli, XORed con D5 (segreto condiviso | Autenticatore richiesta).
01 00 00 38 0f 40 3f 94 73 97 80 57 bd 83 d5 cb 98 f4 22 7a 01 06 6e 65 6d 6f 02 12 0d be 70 8d 93 d4 13 ce 31 96 e4 3f 78 2a 0a ee 04 06 c0 a8 01 10 05 06 00 00 00 03
1 codice = richiesta di accesso (1)
1 Identificatore = 0
2 Lunghezza = 56
16 Richiedi autenticatore
Elenco attributi
6 Nome utente = "Nemo"
18 Password utente
6 Indirizzo IP NAS = 192.168.1.16
6 Porta NAS = 3
Esempio di risposta del raggio
Ecco un esempio di pacchetti di risposta:
Il server Radius autentica Nemo e invia un pacchetto UDP Access-Accept al NAS dicendogli di telnet Nemo di ospitare 192.168.1.3
L'autenticatore di risposta è un checksum MD5 a 16 ottetti del codice (2), id (0), lunghezza (38), l'autenticatore di richiesta dall'alto, gli attributi in questa risposta e il segreto condiviso.
02 00 00 26 86 fe 22 0e 76 24 ba 2a 10 05 f6 bf 9b 55 e0 b2 06 06 00 00 00 01 0f 06 00 00 00 00 0e 06 c0 a8 01 03
1 codice = accesso-accettazione (2)
1 identificatore = 0 (come nella richiesta di accesso)
2 Lunghezza = 38
16 Autenticatore di risposta
Elenco attributi:
6 Service-Type (6) = Login (1)
6 Servizio di accesso (15) = Telnet (0)
6 Login-IP-Host (14) = 192.168.1.3
Il diametro è una sostituzione pianificata di RADIUS. È un protocollo AAA per applicazioni come l'accesso alla rete e la mobilità IP. Di seguito sono elencati alcuni punti che è necessario conoscere sul diametro:
È progettato per funzionare sia in situazioni AAA locali che in roaming.
Il diametro è solo il doppio del protocollo precedente Radius.
Utilizza TCP o SCTP e non UDP.
Utilizza la sicurezza a livello di trasporto (IPSEC o TLS).
Ha un identificatore a 32 bit invece di 8 bit.
Supporta la modalità stateless e stateful.
Supporta il riconoscimento del livello dell'applicazione, definisce il failover.
Offre un migliore supporto per il roaming.
Utilizza AVP.
Il diametro consente di definire nuovi comandi e attributi. È facile da estendere.
Cosa c'è dopo?
Ora hai una conoscenza di base di raggio e diametro. Per acquisire maggiori conoscenze su questi protocolli, è necessario passare attraverso varie RFC e altre risorse menzionate nella sezione Risorse.