Come configurare smartphone e PC. Portale informativo
  • casa
  • Windows 10
  • Configurazione di EAP-TLS su Android - Muzio the Cat. Come installare a livello di codice il certificato CA (per la configurazione WiFi EAP) in Android

Configurazione di EAP-TLS su Android - Muzio the Cat. Come installare a livello di codice il certificato CA (per la configurazione WiFi EAP) in Android

Il mio obiettivo: creare la configurazione EAP WiFi incluso il certificato CA nel programma Android.

Problema: come posso installare a livello di codice un certificato CA (e quindi fare riferimento a tale certificato nella configurazione EAP WiFi)?

Tuttavia, ciò presuppone che tu abbia già installato il certificato CA sul dispositivo. Vorrei installare un certificato nella mia applicazione, dalle risorse nell'applicazione o inviato dal server.

È possibile? (Radice in in questo caso non è un'opzione). Se é cosi, come?

Informazioni aggiuntive...

Ho anche trovato un modo per aggiungere il certificato al KeyStore:

Tuttavia, questo viene utilizzato specificamente per creare un socket sicuro e connettersi tramite HTTPS. Voglio usare un certificato per il WiFi.

Sfortunatamente, devo ancora trovare un modo per installare il certificato CA a livello di codice, dall'applicazione.

Tuttavia, è possibile installare il certificato tramite un browser Web in Android. Quindi, la soluzione (on questo momento) è il seguente: eseguire un intent per aprire un URL in un browser Web inviato direttamente al certificato CA.

Funziona, ma ci sono alcuni problemi:

  • L'utente deve fornire un certificato. Questo è un problema perché stiamo aggiungendo la configurazione WiFi a livello di codice. Pertanto, dobbiamo chiedere all'utente di fornire un certificato con lo stesso nome.
  • L'utente deve inserire una password. Se non hanno una password, l'utente ne creerà una e la immetterà due volte. Se hanno impostato una password di sicurezza, l'utente dovrà ricordare la stessa password e inserirla.
  • Supponendo che l'utente abbia completato con successo questi passaggi, rimane bloccato nel browser.

Questo porta a diverse domande:

  • Dalla mia applicazione, c'è un modo per forzare il nome del certificato installato dall'utente tramite il browser?
  • Dalla mia app, c'è un modo per scoprire quando l'installazione del certificato è completa e quindi riportare lo stato attivo sulla mia app?

Fammi solo sapere se hai bisogno di chiarimenti.

3 risposte

Non è possibile installarlo direttamente poiché le applicazioni non di sistema non hanno accesso al keystore. C'è un'API in ICS per questo KeyChain.createInstallIntent() che avvierà una finestra di dialogo di sistema chiedendo all'utente se desidera installare un certificato. Su pre-ICS, puoi ottenere lo stesso eseguendo l'intento di installazione direttamente utilizzando il nome del componente (questo potrebbe o meno funzionare su tutti i dispositivi). Passare attraverso il browser è in realtà una soluzione alternativa per fare lo stesso.

Riguardo alle tue domande:

  • non puoi specificare/forzare un nome. Perché ti interessa il nome vero?
  • Non proprio tramite il browser. Se usi l'intento del sistema, puoi tornare alla tua attività e ottenere richiama se stai usando startActivityForResult().

Attualmente sto cercando soluzioni agli stessi problemi. Il migliore che ho trovato è KeyChain.choosePrivateKeyAlias ​​​​() che consente all'utente di scegliere quale certificato utilizzare per SSL. Da lì puoi ottenere il nome dell'alias e passarlo alla configurazione wifi aziendale.

Nella prima parte, abbiamo appreso perché le aziende dovrebbero utilizzare la modalità Enterprise Wi-Fi Protected Access (WPA o WPA2) anziché la modalità Personal (PSK). Abbiamo appreso che l'autenticazione 802.1X in modalità Enterprise richiede l'utilizzo di un server RADIUS incluso in Windows Server.

Abbiamo già installato e configurato il servizio certificati in Windows Server 2008. In questa parte, continueremo con l'installazione e la configurazione dei criteri di rete e dei servizi di accesso. Quindi configureremo i controller wireless e/o i punti di accesso (AP) per utilizzare la crittografia e le impostazioni RADIUS. Quindi configureremo i computer client. Finalmente possiamo connetterci.

Installazione dei ruoli dei criteri di rete e dei servizi di accesso

V versione precedente Windows Server ha fornito la funzionalità RADIUS con Internet Authenticate Service (IAS). A partire da Windows Server 2008, è supportato da Criteri di rete e Servizi di accesso. Ciò include i servizi IAS legacy insieme al nuovo componente NAP.

Nella finestra configurazione iniziale (Attività di configurazione iniziale) scorri verso il basso e seleziona Aggiungi ruoli... Se questa finestra è stata chiusa e ridotta a icona, fare clic su Start > Server Manager, selezionare Ruoli e fare clic su Aggiungi ruoli.

Si prega di selezionare Criteri di rete e servizi di accesso(immagine 1) e premere Ulteriore.

Figura 1: Selezione dell'installazione dei criteri di rete e dei ruoli dei servizi di accesso

Selezionare quanto segue (Figura 2):

  • Server criteri di rete
  • Server di routing e accesso remoto
  • Servizi accesso remoto(Servizi di accesso remoto)
  • Instradamento

Figura 2: scelta di installare le prime quattro opzioni

Ora puoi iniziare a configurare NPS per la funzione RADIUS: fai clic su Inizio, accedere nps.msc e premere accedere.

Per opzione Configurazione standard(Configurazione standard) seleziona l'opzione Server RADIUS per 802.1X Wireless o connessioni cablate(Server RADIUS per connessioni wireless o cablate 802.1X)(Figura 3) dal menu a tendina.

Figura 3: Selezione di un server RADIUS per 802.1X

Clicca su Configura 802.1X.

Per il tipo di connessione 802.1X, selezionare Connessioni wireless sicure(immagine 4) e premere Ulteriore.

Figura 4: Selezione della sicurezza wireless

Per ogni controller wireless e/o punto di accesso, fare clic su Aggiungere, creare Nuovo arrivato cliente RADIUS. Come mostrato nella Figura 5, è necessario fornire nomi descrittivi per aiutarti a identificarli, tra gli altri, indirizzi IP o DNS e segreto condiviso.

Figura 5: Inserimento di informazioni per un controller wireless o un punto di accesso

Questi segreti condivisi sono essenziali per l'autenticazione e la crittografia. Rendili lunghi e complessi come le password. Devono essere univoci per ogni controller/AP. Successivamente, sarà necessario inserire gli stessi segreti condivisi per i rispettivi controller/AP. Ricordati di tenerli segreti, conservali in un luogo sicuro.

Per Metodo di autenticazione, selezionare EAP protetto da Microsoft (PEAP) poiché utilizzeremo PEAP.

Fare clic sul pulsante Sintonizzare", selezionare il certificato generato in precedenza e fare clic su ok.

Nella finestra per specificare i gruppi di utenti (Figura 6), fare clic su Aggiungere.

Figura 6: aggiunta di gruppi di utenti che potranno connettersi

Nelle finestre di dialogo di selezione dei gruppi, inserisci i gruppi o fai clic su Avanzate per cercare i gruppi disponibili. Se non hai creato gruppi aggiuntivi, potresti dover selezionare Utenti di dominio per il permesso dell'utente e Computer di dominio per autenticare le macchine se i tuoi controller/AP le supportano. Se ricevi un errore che indica che il dominio non esiste, riavvia il server Active Directory Servizi di dominio e riprova.

Dopo aver aggiunto i gruppi giusti clic Ulteriore continuare.

Nella finestra Impostazioni VLAN(Figura 7) se la rete (switch e controller/AP) supporta le VLAN e sono configurate, fare clic su Sintonizzare" per impostare la funzione VLAN.

Figura 7: fare clic sul pulsante Configura per definire i parametri VLAN

Rivedere le opzioni e fare clic su Pronto.

Configurazione di controller wireless e/o access point

È il momento di configurare i controller wireless o i punti di accesso (AP). Apri l'interfaccia web inserendo l'indirizzo IP dei punti di accesso o dei controller nel browser. Quindi vai alle impostazioni wireless.

Si prega di selezionare WPA-Enterprise o WPA2-Impresa... Per il tipo di crittografia, selezionare TKIP se si utilizza WPA o AES se si utilizza WPA2... Quindi inserisci l'indirizzo IP del server RADIUS, che dovrebbe essere quello appena configurato macchina Windows Sever. Inserisci il segreto condiviso creato in precedenza per questo controller/AP. Salva i parametri.

Installazione del certificato CA sui computer client

Nella prima parte di questa serie, hai creato la tua autorità di certificazione (CA) e il certificato del server. Pertanto, è necessario installare la CA su tutti i computer client. In questo caso, il client può convalidare il server prima di eseguire l'autenticazione.

Se stai utilizzando una rete di dominio Active Directory, potrebbe essere necessario distribuire questo certificato utilizzando politica di gruppo... Tuttavia, puoi anche installarlo manualmente.

Per visualizzare e gestire i certificati in Windows Server 2008, richiamare Gestione certificati. Se hai salvato questa MMC sul tuo computer nella prima parte, aprila. Altrimenti, segui nuovamente questi passaggi:

  1. Clicca su Inizio, accedere mmc e premere accedere.
  2. Nella finestra della console MMC, selezionare File>Aggiungi o rimuovi snap-in.
  3. Si prega di selezionare Certificati e premere Aggiungere.
  4. Si prega di selezionare Conto computer e premere Ulteriore.
  5. Si prega di selezionare Computer locale, clicca Pronto e ok.

Ora espandi Certificati (locali) Account computer (Account computer locale)), espandere Personale e premere Certificati.

Come mostrato in Figura 8, fare clic su tasto destro su un certificato il cui valore Rilasciato a termina con circa, vai alla voce Tutti i compiti e scegli Esportare"... Quindi seguire le istruzioni nella procedura guidata di esportazione. Quando la procedura guidata ti chiede di non esportare chiave privata piuttosto usa il formato DER. Potrebbe essere necessario esportarlo su una chiavetta USB in modo da poterlo portare con sé sui computer client.

Ora sui computer client, fai doppio clic sul certificato e fai clic sul pulsante Installa certificato(Figura 9). Usa la procedura guidata per importare il certificato nel negozio Autorità di certificazione radice attendibili.

Figura 9: Installazione del certificato CA sul client.

Configurazione delle impostazioni di rete sui computer client

Ora puoi configurare i parametri di rete. Come per l'installazione dei certificati, puoi inviare le impostazioni di rete ai client utilizzando Criteri di gruppo se sei su una rete di dominio Active Directory. Tuttavia, puoi anche configurare i client manualmente, come nel nostro caso per Windows XP, Vista e 7.

Innanzitutto, crea manualmente un profilo di rete o una voce di rete preferita. Per Tipo di protezione scegliere WPA-Enterprise o WPA2-Impresa... Per Tipo di crittografia scegliere TKIP se si utilizza WPA o AES se si utilizza WPA2.

Apri il profilo di rete e seleziona il segnalibro Sicurezza(su Vista e 7) oppure Autenticazione(in XP). In XP, seleziona l'opzione Abilita l'autenticazione IEEE 802.1x per questa rete.

Per Metodo di autenticazione di rete(su Vista e 7, come mostrato in Figura 10) o Tipo EAP(in XP), selezionare EAP protetto (PEAP)... In XP, deseleziona anche le caselle nella parte inferiore della finestra.

Figura 10: selezione di PEAP per il metodo di autenticazione

In Windows 7 (solo), fare clic su Impostazioni avanzate nella scheda Sicurezza. Poi nella finestra parametri aggiuntivi controlla l'opzione Specifica la modalità di autenticazione, Selezionare Autenticazione utente e premere ok per tornare alla scheda sicurezza.

Fare clic sul pulsante Parametri(su Vista e 7) oppure Proprietà(in XP).

Nella finestra di dialogo Proprietà EAP protette, seguire questi passaggi (Figura 11):

  • Controlla la prima opzione, Convalida server.
  • Controlla la seconda opzione, Connettiti a questi server, e inserisci nomi completi computer server. Se necessario, fai doppio clic su Windows Server scegliendo Start> Server Manager.
  • Nella casella di riepilogo Autorità di certificazione Fidata seleziona il certificato CA che hai importato.
  • Si prega di selezionare Password protetta (EAP-MSCHAP v2) per il metodo di autenticazione.

Figura 11: Configurazione delle proprietà PEAP

  • Fare clic sul pulsante Sintonizzare... Se stai lavorando su una rete di domini con Active Directory, è meglio selezionare questa opzione. Altrimenti, deseleziona questa opzione in modo da poter inserire nome utente e password quando ti connetti alla rete.

Infine, fai clic su OK nella finestra di dialogo di Windows per salvare le impostazioni.

Infine, collega ed entra!

Quando il server, gli AP e i client sono configurati, è necessario provare a connettersi.

Sul computer client, selezionare una rete dall'elenco di disponibili le connessioni di rete... Se non hai configurato il client per utilizzare automaticamente l'accesso a Windows, dovrai inserire le tue credenziali di accesso, come mostrato nella Figura 12. Utilizzare un account su Windows Server che appartiene al gruppo configurato in precedenza nella sezione Installazione dei criteri di rete e dei servizi di accesso . Se hai selezionato un gruppo di utenti di dominio, l'account amministratore dovrebbe essere consentito per impostazione predefinita.

Figura 12: Finestra di accesso.

Conclusione

Ora dovresti avere una rete autenticata 802.1X e Protezione aziendale crittografia, grazie a Windows Server 2008 e alle funzionalità RADIUS che fornisce. Abbiamo configurato il server, gli AP wireless e i client per utilizzare l'autenticazione PEAP. Gli utenti finali potranno accedere utilizzando i propri account.

Per gestire le impostazioni del server RADIUS come l'aggiunta o la rimozione di AP, utilizzare l'utilità Network Policy Server: fare clic su Inizio>Tutti i programmi> Strumenti di amministrazione>Server criteri di rete.

Versione RoS 6.39rc27

Per Protezione Wi-Fi Le reti Mikrotik rispondono a tre schede: Elenco di accesso(/ interfaccia wireless access-list), Elenco connessioni(/ lista di connessione wireless dell'interfaccia), Profili di sicurezza(/ interfaccia profili di sicurezza wireless).

Elenco di accesso - elenco di regole che limitano le connessioni altri dispositivi al tuo punto, e servono anche a gestire i parametri di connessione. (modalità ap).

Esempio: vuoi limitare la connessione al tuo punto di accesso tramite indirizzi MAC.
Elenco connessioni- un elenco di regole che limitano la connessione il tuo dispositivo ad altri punti di accesso(modalità stazione).

Esempio: vuoi connettere automaticamente la tua stazione client al punto di accesso con la potenza massima del segnale (se hai più stazioni base).

Profili di sicurezza - vengono configurati i profili dei metodi di protezione e, direttamente, le chiavi di sicurezza della rete wireless.

Profili di sicurezza

Iniziamo con la parte divertente: i profili di sicurezza. Qui è dove impostiamo la crittografia per il nostro punti wireless... L'impostazione verrà eseguita per un punto di accesso a casa o in ufficio. Il profilo di sicurezza è impostato direttamente sulle proprietà dell'interfaccia wireless.

Quando vai alla scheda / interfaccia senza fili profili di sicurezza vediamo la seguente immagine.

Puoi aggiungere il tuo profilo, io uso sempre quello standard - perché non sparisci =).

Scheda Generale.

Nome- nome del profilo.

Se usiamo profilo standard- lo lasciamo di default.

Modalità- Modalità di crittografia.

  • nessuno- non viene utilizzata alcuna crittografia. I frame crittografati non sono accettati. Ampiamente usato nei sistemi accesso ospite come fornire Internet in un bar o in un hotel. Per connetterti, devi solo conoscere il nome della rete wireless.
  • chiavi-statiche-necessarie- Modalità WEP. Non ricevere o inviare frame non crittografati. Protocollo compromesso. Non può essere utilizzato, o in casi estremi (per i dispositivi più vecchi). L'articolo principale è.
  • static-keys-opzionale- Modalità WEP. Supporta la crittografia e la decrittografia, ma consente anche di ricevere e inviare frame non crittografati. Non può essere utilizzato, o in casi estremi (per i dispositivi più vecchi). L'articolo principale è.
  • tasti dinamici- Modalità WPA.

Per proteggere la tua rete wireless SEMPRE usa la modalità chiavi-dinamiche.


Tipi di autenticazione è un insieme di tipi di autenticazione supportati. Il client sarà in grado di connettersi al punto di accesso solo se supporta dato tipo autenticazione. Le opzioni sono WPA-PSK, WPA2-PSK, WPA-EAP e WPA2-EAP. Differenza tecnica WPA da WPA2 consiste nella tecnologia di crittografia, in particolare nei protocolli utilizzati. WPA utilizza TKIP, WPA2 utilizza AES. In pratica, ciò significa che il più moderno WPA2 offre un grado più elevato di sicurezza della rete. Ad esempio, il protocollo TKIP consente di creare una chiave di autenticazione fino a 128 bit, AES - fino a 256 bit. In effetti, WPA2 è un WPA migliorato; WPA2 utilizza il protocollo AES, WPA utilizza il protocollo TKIP; WPA2 è supportato da tutti i moderni dispositivi wireless; WPA2 potrebbe non essere supportato dai sistemi operativi legacy.

La differenza tra WPA2-PSK e WPA2-EAP è da dove provengono le chiavi di crittografia utilizzate nella meccanica dell'algoritmo AES. Per le applicazioni private (domestiche, piccole), viene utilizzata una chiave statica (password, codeword, PSK (Pre-Shared Key)) con una lunghezza minima di 8 caratteri, che è specificata nelle impostazioni del punto di accesso ed è la stessa per tutti client di questa rete wireless. La compromissione di una tale chiave (lasciare sfuggire un vicino, licenziare un dipendente, rubare un laptop) richiede un cambio immediato della password per tutti gli utenti rimanenti, il che è realistico solo nel caso di un piccolo numero di essi. Per le applicazioni aziendali, come suggerisce il nome, viene utilizzata una chiave dinamica che è individuale per ogni cliente che lavora al momento. Questa chiave può essere periodicamente aggiornata durante il funzionamento senza interrompere la connessione e un componente aggiuntivo è responsabile della sua generazione: un server di autorizzazione e quasi sempre questo è un server RADIUS.

Non utilizziamo un server RADIUS, i nostri dipendenti sono loquaci, ma cambiamo spesso anche le password, quindi la nostra scelta è WPA2-PSK. Lasciamo un segno di spunta solo su di esso, tutti gli altri protocolli "non sicuri" sono disabilitati.

Cifrari unicast- selezione del tipo di crittografia. I client saranno in grado di connettersi al tuo punto se supportano questo tipo di crittografia. Due tipi supportati tkip e aes-ccm... AES è un algoritmo moderno e più sicuro. È conforme allo standard 802.11n e fornisce velocità di trasferimento dati elevate. TKIP è deprecato. Possiede di più basso livello sicurezza e supporta velocità di trasferimento dati fino a 54 Mbps. Inoltre, lo standard dell'algoritmo CCM richiede l'uso di nuove chiavi temporanee per ogni sessione appena creata, il che è un vantaggio per la sicurezza.

Usiamo solo aes-ccm.

Cifrari di gruppo- selezione del tipo di crittografia. La tua stazione proverà a connettersi solo a quei punti di accesso che supportano questo tipo di crittografia. La descrizione non è diversa dal parametro precedente.

Usiamo solo aes-ccm.


Chiave pre-condivisa WPA, chiave pre-condivisa WPA2 - valore chiave. Per impostare la password, utilizzare numeri, lettere maiuscole E minuscolo, Simboli speciali(%, *, @, #, $, ~). Ricordati di cambiare la tua password regolarmente (ad esempio, ogni 15 giorni). Mikrotik è autorizzato a farlo con uno script, la mia password cambia in 10 uffici contemporaneamente, se interessato, posso descriverlo in un articolo separato.

Usiamo una password complessa.

Identità del richiedente- Identificatore EAP inviato dal client all'inizio dell'autenticazione EAP. Questo valore viene utilizzato come valore per l'attributo User-Name nei messaggi RADIUS.

Non usiamo WPA2-EAP - ignoriamo il valore.

Aggiornamento chiave di gruppo- l'ora e la frequenza con cui aggiornare la chiave di crittografia. La funzione non è operativa in modalità stazione. È infatti possibile modificare il valore in caso di dump incomprensibili di dispositivi (ad esempio smartphone Android quando si va in modalità standby).

Lascia il valore predefinito - 5 minuti.

Protezione della gestione- protezione contro la deautenticazione e gli attacchi di clonazione dell'indirizzo MAC. L'algoritmo di protezione della rete wireless di Mikrotik.

  • Disabilitato- la protezione del controllo è disabilitata.
  • consentito- consentire l'utilizzo della protezione, se supportata dal lato remoto.
  • necessario- necessario. Per la stazione base, stabilire la comunicazione solo con i client che supportano la protezione della gestione. Per i client: stabilire la comunicazione solo con i punti di accesso che supportano la protezione della gestione.
Non utilizziamo la protezione della gestione: la lasciamo disabilitata.

Chiave di protezione della gestione- Protezione gestione chiave di protezione.

Il campo non è attivo se non viene utilizzata la protezione di gestione.


scheda RAGGIO.

Autenticazione MAC- autorizzazione tramite indirizzo mac. Questa impostazione si applica ai client che non sono nell'elenco di accesso. Il server RADIUS utilizzerà l'indirizzo MAC del client come nome utente.

Non spuntare la casella.

Contabilità MAC- abilitare le statistiche MAC.

Non selezioniamo la casella.

Contabilità EAP- abilitare le statistiche EAP.

Non selezioniamo la casella.


Aggiornamento intermedio- l'intervallo di tempo dopo il quale il punto di accesso richiede nuovamente le informazioni sull'account dal server Radius.

Il parametro non è modificabile.


Formato MAC- il formato in cui scriviamo gli indirizzi MAC. Formati disponibili:

XX: XX: XX: XX: XX: XX

XXXX: XXXX: XXXX

XXXXXX: XXXXXX

XX-XX-XX-XX-XX-XX

XXXXXX-XXXXXX

XXXXXXXXXXXX

XX XX XX XX XX XX

Specifica come l'indirizzo MAC del client è codificato dal punto di accesso nell'attributo User-Name del server RADIUS.

Il parametro non è modificabile.

Modalità MAC- i valori:

  • as-username- utilizzare solo il nome durante l'autenticazione al server RADIUS.
  • come-nome-utente-e-password- utilizzare il nome e la password per l'autenticazione nel server RADIUS (come attributo User-Name).

Il parametro non è modificabile.


Tempo di memorizzazione nella cache MAC- l'intervallo di tempo dopo il quale il punto di accesso memorizzerà nella cache le risposte di autenticazione. Il valore disabilitato disabilita la cache, tutte le risposte vengono inviate direttamente al server RADIUS.

Il parametro non è modificabile.

scheda EAP.


Metodi EAP- Metodo di autenticazione EAP. I valori:
  • eap-tls- utilizzando l'autenticazione EAP TLS integrata. Certificati di supporto client e server.
  • eap ttls mschapv2- Autenticazione EAP con username e password.
  • passante- il punto di accesso trasmetterà il processo di autenticazione al server RADIUS.
Modalità TLS- Modalità di controllo TLS. I valori:
  • verifica il certificato- controllare il certificato.
  • non verificare il certificato- non controllare i certificati dal client.
  • nessun certificato- non utilizzare il certificato, utilizzare il metodo della chiave anonima Diffie-Hellman a 2048 bit.
  • verifica il certificato con crl- confronta il certificato con i CRL (elenco dei certificati SSL revocati).
Certificato TLS- qui specifichiamo direttamente il certificato TLS.

Nome utente MSCHAPv2- nome utente per l'autenticazione eap ttls mschapv2.

MSCHAPv2 Password- password per l'autenticazione eap ttls mschapv2.

Scheda Chiavi statiche.

Questa sezione è attiva se nella scheda "Generale" vengono utilizzate "chiavi statiche opzionali" e "tasti statiche richieste". Serve per inserire le chiavi.


Tasto 0, Tasto-1, Tasto-2, Tasto-3- rappresentazione esadecimale della chiave. La lunghezza della chiave deve corrispondere all'algoritmo selezionato (40bit-wep, 104bit-wep, tkip o aes-ccm).

Tasto di trasmissione- il punto di accesso utilizzerà la chiave specificata per crittografare i frame per i client, verrà utilizzato anche per crittografare i frame broadcast e multicast.

S. Chiave privata- da utilizzare solo in modalità "stazione". Il punto di accesso utilizzerà la chiave corrispondente dell'algoritmo selezionato (in chiave esadecimale).

Elenco di accesso

Per abilitare l'accesso secondo le regole dell'elenco di accesso, nella scheda Interfacce, aprire le proprietà dell'interfaccia wireless, dove nella scheda Wireless, deselezionare il parametro Autenticazione predefinita.

Dopo aver deselezionato la casella di controllo, vai all'elenco di accesso e crea una regola. Può essere diverso per ogni cliente o può essere comune per tutti.


Indirizzo MAC- Indirizzo MAC del dispositivo che si collegherà al router. Se deselezioni la casella di controllo Autenticazione predefinita e imposti qui l'indirizzo MAC, solo questo dispositivo sarà in grado di connettersi alla rete. Questa è la limitazione della connessione tramite indirizzi MAC in Mikrotik. Affinché un altro dispositivo possa connettersi al tuo punto, devi aggiungere il suo MAC all'elenco delle regole.

Interfaccia
- l'interfaccia alla quale verrà effettuata la connessione. Se specifichi "all", la regola verrà applicata a tutte le interfacce wireless del tuo dispositivo.

Gamma di intensità del segnale- l'intervallo del livello di segnale al quale è possibile il collegamento. L'impostazione viene applicata nelle reti con roaming senza soluzione di continuità tra i punti. Serve in modo che il dispositivo non mantenga l'attuale punto di accesso a un livello di segnale estremamente debole, ma si registri nuovamente a nuovo punto(con lo stesso SSID).

In genere, viene impostato un intervallo come "-75..120" se sono presenti più punti di accesso nella normale disponibilità.


Limite TX AP- limitare la velocità di trasferimento dei dati a questo client. Il valore "0" è illimitato.


Limite Tx cliente- superare il limite di velocità del cliente. Supportato solo su client RouterOS.

Autenticazione- la possibilità di autorizzazione. Se deselezioni la casella, un dispositivo con questo indirizzo MAC non sarà in grado di connettersi alla tua rete.

inoltro- la capacità di scambiare informazioni con altri partecipanti alla rete wireless. Se deselezioni questa casella, l'utente di questo dispositivo non avrà accesso ad altri client della rete wifi.

Di solito, su un punto di accesso pubblico, la casella di controllo è deselezionata per salvare traffico e sicurezza.

Modalità VLAN- Utilizzando VLAN Tagging, è possibile separare il traffico dei punti di accesso wireless virtuali dai client locali (ad esempio, per separare la rete ospite dalla rete di lavoro). I valori:

  • no-tag- non utilizzare il tagging VLAN sull'interfaccia wireless;
  • use-service-tag- utilizzare la codifica 802.1ad;
  • use-tag- usa la codifica 802.1q.
ID VLAN- Identificatore VLAN.
Non utilizziamo la VLAN, la lasciamo per impostazione predefinita - "1". Chiave privata- la possibilità di impostare una chiave di crittografia personale per un dispositivo con Dati MAC indirizzo. Solo per modalità WEP.

Chiave pre-condivisa privata- chiave di crittografia personale. Utilizzato in modalità WPA PSK.

Chiave di protezione della gestione- Protezione gestione chiave di protezione. Protezione della gestione: protezione contro la deautenticazione e gli attacchi di clonazione dell'indirizzo MAC. Esposto nella scheda "Generale" in Profili di sicurezza.

Volta- in questa sezione è possibile specificare l'intervallo di tempo entro il quale sarà possibile connettere questo dispositivo.

Elenco connessioni

Interfaccia- una regola nell'elenco delle connessioni può essere applicata solo a un'interfaccia wireless. Qui lo scegliamo.

Indirizzo MAC- specificare il MAC AP a cui ci collegheremo.

Collegare- se la casella è spuntata, si collegheranno al punto di accesso che corrisponde a questa regola, in caso contrario non si connetteranno.

SSID- si connetterà solo ai punti di accesso che hanno l'SSID specificato, se non attivo - a qualsiasi SSID.

Prefisso dell'area- la regola è valida per l'interfaccia con il prefisso specificato. Area: consente di creare un gruppo e includere dispositivi wireless al suo interno, quindi utilizzare certe regole per questo gruppo e tutti i dispositivi inclusi in esso, invece di creare regole separate per ciascun dispositivo. Questo valore viene inserito nelle impostazioni del punto di accesso e può essere confrontato con le regole nell'elenco dei collegamenti.

Gamma di intensità del segnale- si connetterà solo ai punti di accesso all'interno dell'intervallo di livello del segnale specificato.

Protocollo wireless- protocollo di comunicazione senza fili. I valori:

  • qualunque- qualsiasi supportato (selezione automatica);
  • 802.11 - solo protocolli standard 802.11abgn. Solitamente utilizzato per la compatibilità con apparecchiature di altri produttori;
  • nstreme- protocollo Mikrotik "proprietario", caratterizzato da ad alta velocità flusso di dati in una direzione (RX o TX);
  • 7) nascondi l'SSID della tua rete.

    8) modificare il MAC dell'interfaccia wireless - per complicare l'identificazione del dispositivo.

    Bonus

    Uno script che analizza i log di Mikrotik. Se viene visualizzato un messaggio sulla connessione con una password errata, viene aggiunta una regola all'elenco di accesso, che vieta questo cliente(tramite MAC) si collegherà a tutte le nostre interfacce wireless. L'autore è EdkiyGluk, per il quale grazie a lui.

    : pop locale 4
    : mac locale
    : wifi locale foreach i in = $ wifi do = (
    : set mac [: scegli 0 ([: len] -50)]
    #: avviso di registro $ mac
    if ([: len]> = $ pop) do = (
    if (= "") fare = (
    / interfaccia wireless access-list aggiungi indirizzo mac = $ autenticazione mac = no
    interfaccia = tutto
    }
    }
    }
    #: avviso di registro "FINISH"

    Script per l'utilità di pianificazione che viene eseguito ogni N minuti. Per evitare che i dispositivi consentiti vengano bannati, aggiungerli in anticipo all'elenco di accesso.

Un altro post sul computer.

Recentemente costruita una rete WiFi con autenticazione 802.1x utilizzando certificati per identificare gli utenti. Tra le altre cose, ho dovuto configurare dispositivi Android - smartphone e tablet - per poterci lavorare. Fu allora che si scoprì che era impossibile trovare un normale howto, come farlo - quelli che erano, riguardavano script con password e volevo sbarazzarmene. Pertanto, ho deciso di riassumere le informazioni sulla questione in un post.


Che cos'è 802.1xe come usarlo su Windows e Linux è stato scritto abbastanza, quindi qui si tratterà solo di configurare il client su Android.

Allora qual è l'obiettivo? È necessario creare una griglia con una crittografia decente e un'autenticazione affidabile, mentre è necessario che l'autenticazione sia il più conveniente possibile per l'utente, ma allo stesso tempo sia protetta dall'utente. Cioè, come amministratore, non voglio che l'utente possa trasferire la sua password o un file con una chiave segreta a qualcun altro, o connettersi da un dispositivo dal quale non voglio consentirgli di connettersi, ad esempio , un portatile personale. In generale, oscurità e dittatura.

Per fare ciò, facciamo quanto segue: un certificato con una chiave segreta viene posizionato sul dispositivo (telefono, tablet) (una chiave separata per ciascun dispositivo). La gestione delle chiavi in ​​Android è molto primitiva, ma fornisce esattamente il minimo di cui abbiamo bisogno: ci consente di importare la chiave e usarla, ma non di recuperarla (tramite almeno, senza password, che non divulgheremo). Tali chiavi verranno rilasciate al punto di accesso in risposta a una richiesta di presentazione.

L'intera procedura si articola in 4 passaggi:

1. Preparazione dell'"archiviazione delle credenziali":
Prima di inserire chiavi segrete nel dispositivo, è necessario preparare un archivio per esse, in cui le chiavi verranno archiviate in forma crittografata. La crittografia sarà basata su una password che viene immessa solo durante la creazione di un archivio. Per utilizzare la chiave segreta, non è necessario inserire una password, ma solo esportarla (cosa che, inoltre, non può essere eseguita tramite la consueta interfaccia utente di Android). Pertanto, terremo questa password con noi stessi e non la daremo affatto all'utente. La risata malvagia è inclusa.

[Aggiornare: ahimè, non funzionerà. Quando spegni il dispositivo, la password è sparita e devi reinserirla per utilizzare i tasti. Questo ha lati positivi e negativi:
* Mantenere la password segreta per l'utente non funzionerà, altrimenti dovrai inserirla ogni volta che la accendi.
* Ciò significa che teoricamente l'utente può copiare la chiave segreta dal dispositivo, il che è dannoso dal punto di vista dell'amministratore. Ma, per quanto ho capito, richiede l'accesso root per questo. Ottenere tale accesso è problematico, ma possibile.
* Lato positivo il fatto che la password stessa non viene salvata nella memoria flash e le chiavi crittografate salvate sono crittografate con questa password utilizzando AES.
* Bene, inoltre, se la password non è stata ancora inserita all'accensione, questo fornisce protezione da qualcuno esterno che tenterà di utilizzare la chiave senza conoscere la password.
]

La password può essere modificata in seguito, ma solo conoscendo quella attuale. Puoi anche ripristinare l'intero spazio di archiviazione: in questo caso, la password scomparirà e l'utente sarà in grado di impostarne una propria, ma con essa anche la chiave segreta perirà irrevocabilmente, proprio come il segreto del miele di erica.

Il processo stesso: Impostazioni -> Posizione e sicurezza -> Imposta password... Inserisci la tua password due volte. Quindi la casella di controllo "Usa credenziali sicure" si attiverà automaticamente.

Per modificare la password: "Imposta password" di nuovo.

Per ripristinare tutte le nafig: "Cancella memoria" nella stessa posizione.

2. Importazione del certificato radice:
È necessario inserire nel dispositivo un file con estensione .crt (.cer non è accettato) e in formato PEM, noto anche come Base-64. Puoi farlo tramite USB o tramite Bluetooth. Il file deve essere copiato nella directory / sdcard, quella visibile come root quando si collega il dispositivo tramite USB o quando si visualizzano i file tramite "My Files".

Poi: Impostazioni -> Posizione e sicurezza ->(sebbene in questo caso il certificato non sia cifrato). Il certificato verrà aggiunto all'elenco di fiducia e il file in / sdcard verrà cancellato.

Un modo più conveniente è pubblicare il certificato su qualche sito web e basta aprire il suo URL nel tuo browser Android nativo (per una maggiore affidabilità, usa un noto servizio web tramite https o un sito web puramente interno). Chiederà immediatamente se aggiungere o meno il certificato all'elenco di fiducia. Per non riempire l'URL con le mani, puoi generare un codice QR con esso e quindi scansionarlo.

3. Importare un certificato utente con una chiave privata:
Un file di chiave privata in formato PKCS # 12 e con estensione .p12 viene inserito in / sdcard (.pfx, ancora una volta, viene ignorato). Esistono molti modi per creare un file di questo tipo: non li elencherò, ma prendo atto che dovresti assolutamente impostare una password monouso per esso, che crittografa la chiave.
Poi nuovamente, Impostazioni -> Posizione e sicurezza -> Installa certificati crittografati... Questa volta ti verrà richiesta una password. Questo non è quello che è stato chiesto durante la creazione dell'archivio, ma quello necessario per decrittografare la chiave dal file. Dopo aver inserito la password, la chiave verrà decifrata e salvata nuovamente crittografata, questa volta con la password del caveau. Il file verrà cancellato da / sdcard, il che va bene per noi.

Puoi anche lanciare il file .p12 attraverso l'URL, ma non lo farei - a differenza dei certificati, la proliferazione delle chiavi, sebbene crittografata, dovrebbe essere evitata.

4. Connessione alla rete stessa:
Dopo aver impostato la chiave, rimangono solo le impostazioni della rete WiFi. Non c'è nulla di segreto in questa fase, puoi lasciarlo agli utenti inviando istruzioni.
Così: Impostazioni -> Wireless e rete -> Impostazioni Wi-Fi... Trova una rete nell'elenco o, se l'SSID è nascosto, fai clic su "Aggiungi rete Wi-Fi".
Poi:



Sui dispositivi più avanzati, puoi anche impostare le impostazioni proxy per ciascuna rete, il che è molto comodo.

Qualunque cosa. Successivamente, l'utente dovrà solo fare clic sul nome della griglia e connettersi. Se, per sconsideratezza, in qualche modo fa clic su "Dimentica rete" e cancella le impostazioni, per ripristinarlo è sufficiente ripetere nuovamente il passaggio 4: la procedura non è classificata, l'utente può farlo da solo.

Appunti:
Fondamentalmente, c'è anche un'opzione PEAP. Il protocollo PEAP-EAP-TLS è considerato un po' più sicuro: ad esempio, il certificato dell'utente viene inviato al suo interno in forma crittografata sul tunnel TLS stabilito. Tuttavia, i miei sforzi per far funzionare Android in questa modalità non hanno portato da nessuna parte. Sospetto che il fatto sia che il campo "Autenticazione fase 2" non contenga un'opzione per l'utilizzo di un certificato utente, quindi devi accontentarti di EAP-TLS, che non richiede alcuna fase 2. Ma la differenza è minima e insignificante.

Non ho idea del motivo per cui ne ho bisogno. In linea di principio, l'utente dovrebbe essere identificato dal campo CN nel certificato.

  • Tutorial

Dal punto di vista pratico, sarebbe conveniente gestire le reti Wi-Fi rilasciando una password a ciascun utente. Ciò semplifica l'accesso alla rete wireless. Utilizzando la cosiddetta autorizzazione WPA2 PSK, per impedire l'accesso a un utente casuale, è necessario modificare la chiave e anche ripetere il processo di autorizzazione su ciascun separato Dispositivo Wi-Fi... Inoltre, se si dispone di più punti di accesso, la chiave deve essere cambiata su tutti. E se hai bisogno di nascondere la password a qualcuno, dovrai distribuirne una nuova a tutti i dipendenti.

Immagina una situazione: un estraneo (un cliente, un appaltatore?) è entrato nel tuo ufficio e devi dargli accesso a Internet. Invece di dargli una chiave WPA2, puoi creare un account separato per lui, che poi, dopo che se ne va, puoi bloccarlo. Questo ti darà la flessibilità di gestire i tuoi account e i tuoi utenti saranno molto felici.

Faremo uno schema conveniente utilizzato in reti aziendali, ma completamente dagli strumenti disponibili con investimenti finanziari e hardware minimi. Sarà approvato dal servizio di sicurezza e dalla direzione.

Un po' di teoria

C'era una volta, gli ingegneri IEEE coniarono lo standard 802.1x. Questo standard è responsabile della capacità di autorizzare l'utente immediatamente al momento della connessione al supporto di trasmissione dati. In altre parole, se per una connessione, ad esempio PPPoE, ci si connette a un supporto (switch), e si possono già trasferire dati, è necessaria l'autorizzazione per accedere a Internet. Nel caso di 802.1x, non sarai in grado di fare nulla fino a quando non effettuerai l'accesso. Il dispositivo finale stesso non te lo consentirà. Una situazione simile con i punti di accesso Wi-Fi. La decisione di ammetterti viene presa sul server di autorizzazione esterno. Questo potrebbe essere RADIUS, TACACS, TACACS +, ecc.

Terminologia

In generale, l'autorizzazione dell'utente in un punto può essere dei seguenti tipi:
  • Aperto - disponibile per tutti
  • WEP è una vecchia crittografia. Già la calvizie di tutti è stata divorata che non dovrebbe essere usata affatto
  • WPA - Utilizzato da TKIP come protocollo di crittografia
  • WPA2 - Crittografia AES utilizzata

E ora consideriamo le opzioni su come il punto di accesso sa se è possibile fornire all'utente l'accesso alla rete o meno:

  • WPA-PSK, WPA2-PSK: la chiave di accesso si trova proprio nel punto.
  • WPA-EAP, WPA2-EAP: la chiave di accesso viene verificata rispetto a un database remoto su un server di terze parti

Ci sono anche abbastanza un gran numero di modalità di connessione del terminale al server di autorizzazione (PEAP, TLS, TTLS...). Non li descriverò qui.

Schema di rete generale

Per una comprensione visiva, diamo schema generale il lavoro del nostro futuro schema:

In altre parole, al client viene richiesto di inserire login e password quando si connette a un punto Wi-Fi. Dopo aver ricevuto un login e password wifi il punto invia questi dati al server RADIUS, al quale il server risponde, cosa si può fare con questo client. A seconda della risposta, il punto decide se concedergli l'accesso, ridurre la velocità o qualcos'altro.
Il nostro server con installato freeradius sarà responsabile dell'autorizzazione dell'utente. Freeradius è un'implementazione del protocollo RADIUS, che a sua volta è un'implementazione del protocollo generale AAA. AAA è un insieme di strumenti per fare quanto segue:
Autenticazione: verifica la validità del nome utente e della password.
Autorizzazione: verifica i diritti per eseguire determinate azioni.
Contabilità: tiene conto delle tue azioni nel sistema.
Il protocollo stesso gli passa il nome utente, un elenco di attributi e i loro valori. Cioè, ad esempio, l'attributo Auth-Type: = Reject è rifiutare questo client e Client-Password == "password" è confrontare l'attributo nella richiesta con il valore della password.
In generale, la base degli account e dei diritti per loro non deve essere archiviata sul server RADIUS e la base può essere qualsiasi cosa - nix utenti, utenti Dominio Windows... ma almeno un file di testo. Ma nel nostro caso, tutto sarà in un unico posto.

Configurazione di base

In questo articolo, saremo principalmente interessati al metodo di autorizzazione WPA2-EAP/TLS.
Quasi tutti i moderni punti di accesso Wi-Fi che costano più di 3 mila rubli supportano la tecnologia di cui abbiamo bisogno. I dispositivi client supportano ancora di più.
Nell'articolo utilizzerò i seguenti hardware e software:
  • Punto di accesso Ubiquiti NanoStation M2
  • Server Gentoo e Freeradius
  • Equipaggiamento client con software installato Windows 7, Android, iOS

Impostazione del punto di accesso

La cosa principale è che il punto supporta il metodo di autenticazione richiesto. Può essere chiamato in modo diverso in diversi dispositivi: WPA-EAP, WPA2 Enterprise, ecc. In ogni caso selezioniamo l'autenticazione, impostiamo l'indirizzo IP e la porta del server RADIUS e la chiave che abbiamo inserito in clients.conf durante la configurazione di Freeradius.
Darò una foto dal punto Ubiquiti configurato. Contrassegnato con una daw è ciò che deve essere cambiato.

server RADIUS

Vai al nostro computer Linux e installa il server RADIUS. Ho preso freeradius e l'ho messo su gentoo. Con mia grande sorpresa, non ci sono materiali su runet relativi alla configurazione di Freeradius 2 per i nostri scopi. Tutti gli articoli sono piuttosto vecchi, si riferiscono a vecchie versioni di questo software.
[e-mail protetta]~ # emerge -v raggio libero
Questo è tutto :) Il server RADIUS può essere già in esecuzione :) Puoi verificarlo in questo modo:
Questa è la modalità debug. Tutte le informazioni vengono scaricate sulla console. Iniziamo a configurarlo.
Come di consueto in Linux, la configurazione avviene tramite file di configurazione. I file di configurazione sono memorizzati in /etc/raddb. Facciamo azioni preparatorie- copia le configurazioni originali, ripulisci la configurazione da qualsiasi spazzatura.
[e-mail protetta]~ # cp -r / etc / raddb /etc/raddb.olg [e-mail protetta]~ # trova / etc / raddb -type f -exec file () \; | grep "testo" | cut -d ":" -f1 | xargs sed -i "/ ^ * \ t * * # / d; / ^ $ / d"
Quindi, aggiungiamo un client: un punto di accesso. Aggiungi al file / etc / raddb / clients seguenti righe:
[e-mail protetta]~ # cat /etc/raddb/clients.conf | sed "/ client test-wifi /, /) /! d" client test-wifi (ipaddr = 192.168.0.1 #indirizzo IP del punto che accederà al raggio secret = secret_key # Chiave segreta. La stessa deve essere messa su Wi - Fi point.require_message_authenticator = no # È meglio così, con qualche D-Link non potrei fare diversamente)
Quindi, aggiungi un dominio per gli utenti. Facciamo l'impostazione predefinita.
[e-mail protetta]~ # cat /etc/raddb/proxy.conf | sed "/ realm DEFAULT /, / ^) /! d" realm DEFAULT (tipo = raggio authhost = LOCALE acchost = LOCALE)

Domini in RADIUS

Va notato qui che è possibile dividere gli utenti per domini. Vale a dire, il formato del nome utente può essere un dominio (ad esempio [e-mail protetta]). DEFAULT indica qualsiasi dominio non definito. NULL - nessun dominio. A seconda del dominio (puoi pronunciare il prefisso nel nome utente), puoi eseguire varie azioni, come dare il diritto di autenticazione a un altro host, se separare il nome dal dominio durante la verifica del login, ecc.


Infine, aggiungi gli utenti al file /etc/raddb/users:
[e-mail protetta]~ # cat / etc / raddb / utenti | sed "10, $! d" user1 Password di testo in chiaro: = "password1" user2 Password di testo in chiaro: = "password2" user3 Password di testo in chiaro: = "password3"
Wow, puoi iniziare!
[e-mail protetta]~ # raggio -fX
Il nostro server è in esecuzione e in attesa di connessioni!

Configurazione dei client

Andiamo oltre la configurazione di base dispositivi dell'utente... I nostri dipendenti hanno clienti che lavorano su Android, iOS e Windows 7. Facciamo subito una prenotazione: poiché utilizziamo certificati autogenerati, dobbiamo fare tutti i tipi di eccezioni e confermare più volte le azioni. Se usassimo i certificati acquistati, forse sarebbe tutto più semplice.

La situazione è più semplice per tutti su dispositivi iOS. Inserisci il tuo nome utente e password, fai clic su "Accetta certificato" e vai.

Screenshot da IOS


Sembra un po' più complicato, ma in pratica tutto è semplice anche su Android. Ci sono un po' più di campi di input.

Screenshot da Android


Bene, su Windows 7 dovrai modificare un po'. Eseguiamo i seguenti passaggi:
Andiamo al centro delle connessioni wireless.

  1. Impostiamo i parametri necessari nelle proprietà della tua connessione wireless
  2. Impostiamo i parametri necessari nelle impostazioni EAP avanzate
  3. Impostiamo i parametri necessari nelle impostazioni avanzate Parametri aggiuntivi
  4. Ci colleghiamo alla rete Wi-Fi nella barra delle applicazioni e inseriamo la password di accesso, godiamo dell'accesso al Wi-Fi

Screenshot di Windows

Passo 1


Passo 2

Passaggio 3


Passaggio 4

Passaggio 5


Minifatturazione propria

Ora c'è un problema: se vuoi aggiungere/rimuovere un nuovo utente, devi cambiare gli utenti e riavviare il raggio. Per evitare ciò, colleghiamo il database e facciamo la nostra mini-fatturazione per gli utenti. Utilizzando il database, puoi sempre disegnare un semplice script per aggiungere, bloccare, modificare la password di un utente. E tutto questo avverrà senza fermare l'intero sistema.

Per me, ho usato Postgres, ma puoi scegliere come preferisci. Sto presentando una configurazione di base di Postgres senza approfondire vari permessi, password e altri trucchi e comodità.

Innanzitutto, creiamo il database stesso:

[e-mail protetta]~ # psql -U postgres radius_wifi => crea un utente radius_wifi con password 1111; radius_wifi => crea database radius_wifi con proprietario = radius_wifi; raggio_wifi => \ q

Successivamente, è necessario creare le tabelle necessarie. In generale, Freeradius viene fornito con la documentazione sugli schemi delle tabelle per basi diverse dati, sebbene in distribuzioni diverse si trovino in luoghi diversi. Personalmente ce l'ho in /etc/raddb/sql/postgresql/schema.sql. Basta incollare queste righe in psql o semplicemente eseguire

[e-mail protetta]~ # cat /etc/raddb/sql/postgresql/schema.sql | psql -U raggio_wifi raggio_wifi

Per ogni evenienza, aggiungerò uno schema per Postgres qui:

Schema per Postgres

[e-mail protetta] ~ # cat /etc/raddb/sql/postgresql/schema.sql | sed "/ ^ - / d; / \ / \ * / d; / \ * / d; / ^ $ / d;" CREATE TABLE radacct (RadAcctId BIGSERIAL PRIMARY KEY, AcctSessionId VARCHAR (64) NOT NULL, AcctUniqueId VARCHAR (32) NOT NULL UNIQUE, UserName VARCHAR (253), GroupName VARCHAR (253), Realm VARCHAR (64) NOT NULL VARCHAR (15) NASPortType VARCHAR (32) AcctStartTime TIMESTAMP con fuso orario AcctStopTime TIMESTAMP con fuso orario AcctSessionTime BIGINT CalledStationId VARCHAR (50), CallingStationId VARCHAR (50), AcctTerminateCause VARCHAR (32), ServiceType VARCHAR (32), XAscendSessionSvrKey (frameworkSvrKey VARCHAR (10), protocollo ), FramedIPEGAddress, ActopDay INTEGERct CREATE INDEX radacct_active_user_idx ON radacct (UserName, NASIPAddress, AcctSessionId) DOVE AcctStopTime IS NULL; CREA INDICE radacct_start_user_idx ON radacct (AcctStartTime, UserName); CREATE TABLE radcheck (id SERIAL PRIMARY KEY, UserName VARCHAR (64) NOT NULL DEFAULT "", Attributo VARCHAR (64) NOT NULL DEFAULT "", op CHAR (2) NOT NULL DEFAULT "==", Valore VARCHAR (253) NOT NULL PREDEFINITO ""); creare l'indice radcheck_UserName su radcheck (UserName, Attribute); CREATE TABLE radgroupcheck (id SERIAL PRIMARY KEY, GroupName VARCHAR (64) NOT NULL DEFAULT "", Attribute VARCHAR (64) NOT NULL DEFAULT "", op CHAR (2) NOT NULL DEFAULT "==", Valore VARCHAR (253) NOT NULL PREDEFINITO ""); creare l'indice radgroupcheck_GroupName su radgroupcheck (GroupName, Attribute); CREATE TABLE radgroupreply (id SERIAL PRIMARY KEY, GroupName VARCHAR (64) NOT NULL DEFAULT "", Attributo VARCHAR (64) NOT NULL DEFAULT "", op CHAR (2) NOT NULL DEFAULT "=", Valore VARCHAR (253) NOT NULL PREDEFINITO ""); creare l'indice radgroupreply_GroupName su radgroupreply (GroupName, Attribute); CREATE TABLE radreply (id SERIAL PRIMARY KEY, UserName VARCHAR (64) NOT NULL DEFAULT "", Attributo VARCHAR (64) NOT NULL DEFAULT "", op CHAR (2) NOT NULL DEFAULT "=", Valore VARCHAR (253) NOT NULL PREDEFINITO ""); creare l'indice radreply_UserName su radreply (UserName, Attribute); CREATE TABLE radusergroup (UserName VARCHAR (64) NOT NULL DEFAULT "", GroupName VARCHAR (64) NOT NULL DEFAULT "", priorità INTEGER NOT NULL DEFAULT 0); creare l'indice radusergroup_UserName su radusergroup (UserName); CREATE TABLE radpostauth (id BIGSERIAL PRIMARY KEY, nome utente VARCHAR (253) NOT NULL, passare VARCHAR (128), risposta VARCHAR (32), CalledStationId VARCHAR (50), CallingStationId VARCHAR (50), authdate TIMESTAMP "con fuso orario predefinito NOT NULL Ora () ");

Ottimo, la base è pronta. Ora scopriamo Freeradius.
Se non è presente, aggiungi la riga a /etc/raddb/radiusd.conf

$ INCLUDE sql.conf

Ora modifica /etc/raddb/sql.conf per adattarlo alla tua realtà. Mi sembra questo:

Il mio sql.conf

[e-mail protetta]~ # cat /etc/raddb/sql.conf sql (database = "postgresql" driver = "rlm_sql _ $ (database)" server = "localhost" login = "radius_wifi" password = "1111" radius_db = "radius_wifi" acct_table1 = " radacct "acct_table2 =" radacct "postauth_table =" radpostauth "authcheck_table =" radcheck "authreply_table =" radreply "groupcheck_table =" radgroupcheck "groupreply_table =" radgroupreply "usergroup_table =" radusergroup yes "delayfasradsession_socks. 60 durata = 0 max_queries = 0 nas_table = "nas" $ INCLUDE sql / $ (database) /dialup.conf)


Aggiungi diversi nuovi utenti test1, test2, test3 e ... block test3

[e-mail protetta]~ # psql -U postgres radius_wifi => inserisci in radcheck (nome utente, attributo, op, valore) i valori ("test1", "Cleartext-Password", ": =", "1111"); raggio_wifi => inserire in radcheck (nome utente, attributo, op, valore) i valori ("test2", "Cleartext-Password", ": =", "1111"); raggio_wifi => inserire in radcheck (nome utente, attributo, op, valore) i valori ("test3", "Cleartext-Password", ": =", "1111"); raggio_wifi => inserire in radcheck (nome utente, attributo, op, valore) i valori ("test3", "Auth-Type", ": =", "Reject");

Bene, riavvia freeradius e prova a connetterti. Dovrebbe funzionare tutto!

Naturalmente, la fatturazione si è rivelata imperfetta: non memorizziamo informazioni sulla contabilità (contabilità delle azioni dell'utente) da nessuna parte, ma non ne abbiamo bisogno nemmeno qui. Per condurre la contabilità, hai anche bisogno di punti Wi-Fi che sono più costosi di 3 mila rubli. Ma già, possiamo gestire facilmente gli utenti.
raggio Aggiungi etichette

Principali articoli correlati