Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Windows 10
  • Postavljanje EAP-TLS-a na Androidu - mačak Mucius. Kako programski instalirati CA certifikat (za EAP WiFi konfiguraciju) u Android

Postavljanje EAP-TLS-a na Androidu - mačak Mucius. Kako programski instalirati CA certifikat (za EAP WiFi konfiguraciju) u Android

Moj cilj: Stvoriti WiFi EAP konfiguraciju uključujući CA certifikat u Android programu.

Problem: Kako programski instalirati CA certifikat (a zatim referencirati taj certifikat u WiFi EAP konfiguraciji)?

Međutim, ovo pretpostavlja da ste već instalirali CA certifikat na uređaj. Želio bih instalirati certifikat u svoju aplikaciju - bilo iz resursa u aplikaciji ili poslan s poslužitelja.

Je li moguće? (Ukorijeniti u ovom slučaju nije opcija). Ako da, kako?

Dodatne informacije...

Također sam pronašao način za dodavanje certifikata u KeyStore:

Međutim, ovo se posebno koristi za stvaranje sigurne utičnice i povezivanje preko HTTPS-a. Želim koristiti certifikat za WiFi.

Nažalost, tek trebam pronaći način da instaliram CA certifikat programski - iz aplikacije.

Međutim, moguće je instalirati certifikat putem web preglednika na Androidu. Dakle, rješenje (at ovaj trenutak) je kako slijedi: Pokrenite namjeru za otvaranje URL-a u web pregledniku, koji se šalje izravno CA certifikatu.

Ovo funkcionira, ali postoje neki problemi:

  • Korisnik mora dostaviti certifikat. To je problem jer WiFi konfiguraciju dodajemo programski. Stoga moramo tražiti od korisnika da dostavi certifikat s istim imenom.
  • Korisnik mora unijeti lozinku. Ako nema lozinku, korisnik će je izraditi i unijeti dvaput. Ako su postavili sigurnosnu lozinku, korisnik će morati zapamtiti istu lozinku i unijeti je.
  • Pod pretpostavkom da je korisnik uspješno dovršio ove korake, preglednik ostaje zaglavljen.

To dovodi do nekoliko pitanja:

  • Iz moje aplikacije, postoji li način da se nametne naziv certifikata koji je korisnik instalirao putem preglednika?
  • Postoji li način da iz moje aplikacije saznam kada je instalacija certifikata dovršena i zatim vratim fokus na svoju aplikaciju?

Samo mi reci ako trebaš pojašnjenje.

3 odgovora

Ne možete ga izravno instalirati jer nesistemske aplikacije nemaju pristup spremištu ključeva. U ICS-u postoji API za to, KeyChain.createInstallIntent(), koji će pokrenuti dijaloški okvir sustava pitajući korisnika želi li instalirati certifikat. Na prethodnim ICS-ovima možete postići istu stvar pokretanjem namjere instalacije izravno pomoću naziva komponente (ovo može, ali ne mora raditi na svim uređajima). Prolazak kroz preglednik zapravo je zaobilazno rješenje za istu stvar.

Vezano za vaša pitanja:

  • ne možete odrediti/nametnuti ime. Zašto vas zanima pravo ime?
  • Zapravo ne putem preglednika. Ako koristite namjeru sustava, možete se vratiti na svoju aktivnost i dobiti uzvratiti poziv ako koristite startActivityForResult() .

Trenutno tražim rješenja za iste probleme. Najbolje što sam pronašao je KeyChain.choosePrivateKeyAlias() koji korisniku omogućuje odabir koji će certifikat koristiti za SSL. Odatle možete dobiti pseudonim i proslijediti ga korporativnoj WiFi konfiguraciji.

U prvom smo dijelu naučili zašto bi tvrtka trebala koristiti način rada Enterprise Wi-Fi Protected Access (WPA ili WPA2) umjesto osobnog (PSK) načina. Saznali smo da 802.1X provjera autentičnosti u načinu rada Enterprise zahtijeva korištenje RADIUS poslužitelja, koji je uključen u Windows Server.

Već smo instalirali i konfigurirali Certificate Service u Windows Server 2008. U ovom dijelu nastavit ćemo s instaliranjem i konfiguriranjem mrežnih pravila i pristupnih usluga. Zatim ćemo konfigurirati bežične kontrolere i/ili pristupne točke (AP) da koriste enkripciju kao i RADIUS postavke. Zatim ćemo konfigurirati klijentska računala. I konačno ćemo se moći povezati.

Instaliranje uloga mrežnih pravila i usluga pristupa

U prethodne verzije Windows Server RADIUS funkcionalnost osigurala je Internet Authenticate Service (IAS). Počevši od sustava Windows Server 2008, to osiguravaju mrežna pravila i usluge pristupa. Ovo uključuje prethodne IAS usluge zajedno s novom NAP komponentom.

U prozoru početno postavljanje (Početni konfiguracijski zadaci) pomaknite se prema dolje i odaberite Dodajte uloge. Ako ste zatvorili i minimizirali ovaj prozor, kliknite Start > Upravitelj poslužitelja, odaberite Uloge i kliknite Dodaj uloge.

Izaberi Mrežna politika i usluge pristupa(Slika 1) i pritisnite Unaprijediti.

Slika 1: Odabir instaliranja mrežnih pravila i uloga usluga pristupa

Odaberite sljedeće (slika 2):

  • Poslužitelj mrežnih pravila
  • Poslužitelji za usmjeravanje i daljinski pristup
  • Usluge daljinski pristup(Usluge daljinskog pristupa)
  • Usmjeravanje

Slika 2: Odabir instalacije prve četiri opcije

Sada možete početi konfigurirati NPS za RADIUS funkciju: kliknite Početak, Unesi nps.msc i pritisnite Unesi.

Za opciju Standardna konfiguracija(Standardna konfiguracija) odaberite opciju RADIUS poslužitelj za 802.1X Wireless ili žičane veze(RADIUS poslužitelj za 802.1X bežične ili žičane veze)(Slika 3) iz padajućeg izbornika.

Slika 3: Odabir RADIUS poslužitelja za 802.1X

Klik Konfigurirajte 802.1X.

Za vrstu veze 802.1X odaberite Sigurne bežične veze(Slika 4) i kliknite Unaprijediti.

Slika 4: Odabir bežične sigurnosti

Kliknite za svaki bežični upravljač i/ili pristupnu točku Dodati, stvoriti novi unos RADIUS klijent. Kao što je prikazano na slici 5, morate navesti prijateljska imena koja će vam pomoći da ih identificirate između ostalih, IP ili DNS adresa i zajedničke tajne (Shared Secret).

Slika 5: Unos podataka za bežični kontroler ili pristupnu točku

Te zajedničke tajne važne su za provjeru autentičnosti i šifriranje. Neka budu složene i duge, poput lozinki. Moraju biti jedinstveni za svaki kontroler/AP. Kasnije ćete morati unijeti iste zajedničke tajne za odgovarajuće kontrolere/AP-ove. Ne zaboravite ih držati u tajnosti, čuvajte ih na sigurnom mjestu.

Za Metodu provjere autentičnosti odaberite Microsoft zaštićen EAP (PEAP) budući da ćemo koristiti PEAP.

Pritisnite gumb naštimaj", odaberite prethodno kreirani certifikat i kliknite u redu.

U prozoru za određivanje korisničkih grupa (slika 6) kliknite Dodati.

Slika 6: Dodavanje grupa korisnika koje se mogu povezati

U dijaloške okvire za odabir grupe unesite grupe ili kliknite Napredno za traženje dostupnih grupa. Ako niste izradili dodatne grupe, možda ćete morati odabrati Korisnici domene omogućiti korisnicima i Domena računala za provjeru autentičnosti strojeva ako ih vaši kontroleri/AP-ovi podržavaju. Ako primite poruku o pogrešci da domena ne postoji, ponovno pokrenite poslužitelj Active Directory Usluge domene i pokušaj ponovno.

Nakon dodavanja prave grupe klik Unaprijediti nastaviti.

U prozoru VLAN postavke(Slika 7), ako vaša mreža (sklopke i kontroleri/AP-ovi) podržava VLAN-ove i oni su konfigurirani, kliknite naštimaj" za postavljanje VLAN funkcije.

Slika 7: Pritisnite gumb za postavljanje za definiranje VLAN postavki

Pregledajte opcije i kliknite Spreman.

Konfiguriranje bežičnih kontrolera i/ili pristupnih točaka

Vrijeme je da konfigurirate svoje bežične kontrolere ili pristupne točke (AP). Pozovite web sučelje unosom IP adrese pristupnih točaka ili kontrolera u preglednik. Zatim idite na bežične postavke.

Izaberi WPA-Enterprise ili WPA2-Enteprise. Odaberite vrstu enkripcije TKIP ako koristite WPA ili AES ako koristite WPA2. Zatim unesite IP adresu RADIUS poslužitelja koji bi trebao biti onaj koji ste upravo konfigurirali. Windows stroj Sever. Unesite zajedničku tajnu koju ste ranije stvorili za ovaj kontroler/AP. Spremite postavke.

Instaliranje CA certifikata na klijentska računala

U prvom dijelu serije stvorili ste vlastito tijelo za izdavanje certifikata (CA) i certifikat poslužitelja. Stoga morate instalirati CA na svim klijentskim računalima. U tom slučaju klijent može provjeriti poslužitelj prije autentifikacije.

Ako koristite domensku mrežu s Active Directoryjem, možda ćete morati implementirati ovaj certifikat pomoću pravila grupe. Međutim, možete ga instalirati i ručno.

Za pregled i upravljanje certifikatima u sustavu Windows Server 2008 pozovite Upravitelja certifikata. Ako ste ovaj MMC spremili na računalo u prvom dijelu, otvorite ga. U suprotnom, ponovno slijedite ove korake:

  1. Klik Početak, Unesi MMC i pritisnite Unesi.
  2. U prozoru MMC konzole odaberite Datoteka>Dodajte ili uklonite dodatak.
  3. Izaberi Certifikati i pritisnite Dodati.
  4. Izaberi Računalni račun i pritisnite Unaprijediti.
  5. Izaberi Lokalno računalo, pritisnite Spreman I u redu.

Sada proširite Certifikati (lokalni Račun računalo (račun lokalnog računala)), proširiti Osobno i pritisnite Certifikati.

Kao što je prikazano na slici 8, kliknite desna tipka na certifikatu čija vrijednost "Issued To" završava s C.A., idite na točku Svi zadaci i odaberite Izvoz". Zatim slijedite čarobnjak za izvoz. Kada vas čarobnjak zatraži, nemojte izvoziti privatni ključ, ali koristite DER format. Možda ćete ga morati izvesti na flash pogon kako biste ga mogli ponijeti sa sobom na klijentska računala.

Sada na klijentskim računalima dvaput kliknite na certifikat i kliknite Instaliraj certifikat(Slika 9). Pomoću čarobnjaka uvezite certifikat u trgovinu Pouzdana tijela za izdavanje korijenskih certifikata.

Slika 9: Instaliranje CA certifikata na klijentu.

Konfiguriranje mrežnih postavki na klijentskim računalima

Sada možete konfigurirati mrežne postavke. Kao i kod instaliranja certifikata, možete promovirati mrežne postavke klijentima pomoću pravila grupe ako radite u mreži domene s aktivnim imenikom. Međutim, klijente možete konfigurirati i ručno, kao u našem slučaju za Windows XP, Vista i 7.

Prvo, ručno stvaramo mrežni profil ili željeni mrežni unos. Za Vrsta sigurnosti Izaberi WPA-Enterprise ili WPA2-Enteprise. Za Vrsta šifriranja Izaberi TKIP ako se koristi WPA ili AES ako se koristi WPA2.

Otvorite svoj mrežni profil i odaberite oznaku Sigurnost(u Visti i 7) ili Ovjera(u XP-u). U XP-u označite opciju Omogući IEEE 802.1x autentifikaciju za ovu mrežu.

Za Metoda mrežne provjere autentičnosti(u Visti i 7, kao što je prikazano na slici 10) ili Vrsta EAP-a(na XP), odaberite Zaštićeni EAP (PEAP). U XP-u također poništite opcije na dnu prozora.

Slika 10: Odabir PEAP-a za metodu provjere autentičnosti

U sustavu Windows 7 (samo), kliknite Napredne postavke u kartici Sigurnost. Zatim u prozoru dodatni parametri provjerite opciju Navedite način provjere autentičnosti, Izaberi Autentifikacija korisnika i pritisnite u redu za povratak na karticu Sigurnost.

Pritisnite gumb Mogućnosti(u Visti i 7) ili Svojstva(u XP-u).

U dijalogu Protected EAP Properties slijedite ove korake (slika 11):

  • Provjerite prvu opciju, Potvrdi poslužitelj.
  • Provjerite drugu opciju, Povežite se s ovim poslužiteljima, i unesite puna imena poslužiteljska računala. Ako je potrebno, dvaput ga kliknite u sustavu Windows Server odabirom Start > Server Manager.
  • U prozoru popisa Pouzdana certifikacijska tijela odaberite CA certifikat koji ste uvezli.
  • Izaberi Zaštićena lozinka (EAP-MSCHAP v2) za metodu provjere autentičnosti.

Slika 11: Postavljanje PEAP svojstava

  • Pritisnite gumb ugoditi. Ako radite u domenskoj mreži s Active Directoryjem, bolje je označiti ovu opciju. U suprotnom poništite ovu opciju kako biste mogli unijeti svoje korisničko ime i zaporku prilikom spajanja na mrežu.

Na kraju kliknite OK u dijaloškom okviru prozora da biste spremili postavke.

I konačno, spojite se i prijavite se!

Kada su poslužitelj, AP-ovi i klijenti konfigurirani, morate se pokušati povezati.

Na klijentskom računalu odaberite mrežu s popisa dostupnih mrežne veze. Ako niste konfigurirali klijenta da automatski koristi Windows prijavu, morat ćete unijeti vjerodajnice za prijavu, kao što je prikazano na slici 12. Koristite račun na Windows Serveru koji pripada grupi koju ste ranije konfigurirali u odjeljku Postavljanje mrežnih pravila i usluga pristupa . Ako ste odabrali grupu Korisnici domene, Administratorski račun trebao bi biti dopušten prema zadanim postavkama.

Slika 12: Prozor za prijavu.

Zaključak

Sada biste trebali imati 802.1X autentificiranu mrežu i Zaštita poduzeća enkripciju, zahvaljujući Windows Serveru 2008 i značajki RADIUS koju nudi. Konfigurirali smo poslužitelj, bežične AP-ove i klijente za korištenje PEAP provjere autentičnosti. Krajnji korisnici moći će se prijaviti pomoću vlastitih računa.

Za upravljanje postavkama RADIUS poslužitelja, kao što je dodavanje ili uklanjanje AP-ova, koristite uslužni program Network Policy Server: kliknite Početak>Svi programi> Alati za administraciju>Poslužitelj mrežnih pravila.

RoS verzija 6.39rc27

Iza WiFi zaštita mreže u Mikrotiku zadužene su za tri kartice: Popis pristupa(/interface bežični pristupni popis), Poveži popis(/interface bežično povezivanje-popis), Sigurnosni profili(/interface bežični sigurnosni profili).

Popis pristupa - popis pravila koja ograničavaju veze druge uređaje za svoju točku, a služe i za upravljanje parametrima veze. (ap mod).

Primjer: želite ograničiti veze na svoju pristupnu točku na temelju MAC adresa.
Poveži popis- popis pravila koja ograničavaju vezu svoj uređaj na druge pristupne točke(način rada stanice).

Primjer: želite automatski spojiti svoju klijentsku stanicu na pristupnu točku s maksimalnom snagom signala (ako postoji više baznih stanica).

Sigurnosni profili - konfiguriraju se profili sigurnosnih metoda i, izravno, sigurnosni ključevi bežične mreže.

Sigurnosni profili

Počnimo s najzanimljivijim - sigurnosnim profilima. Ovdje smo postavili enkripciju za naše bežične točke. Postavljanje će se izvršiti za kućnu ili uredsku pristupnu točku. Zaštitni profil postavlja se izravno u svojstvima bežičnog sučelja.

Kada odete na karticu / sučelja bežičnih sigurnosnih profila vidimo ovu sliku.

Možete dodati svoj profil, ja uvijek koristim standardni - zašto ga trošiti =).

Kartica Općenito.

Ime- ime profila.

Ako koristimo standardni profil- ostavite kao zadano.

Način rada- način šifriranja.

  • nikakav- enkripcija se ne koristi. Šifrirani okviri se ne prihvaćaju. Široko korišten u sustavima pristup za goste, poput pružanja interneta u kafiću ili hotelu. Za povezivanje trebate znati samo naziv bežične mreže.
  • static-keys-required- WEP način rada. Nemojte primati niti slati nešifrirane okvire. Ugroženi protokol. Ne može se koristiti ili samo u ekstremnim slučajevima (za starije uređaje). Glavni članak - .
  • static-keys-optional- WEP način rada. Podržava šifriranje i dešifriranje, ali također vam omogućuje primanje i slanje nešifriranih okvira. Ne može se koristiti ili samo u ekstremnim slučajevima (za starije uređaje). Glavni članak - .
  • dinamički ključevi- WPA način rada.

Za zaštitu vaše bežične mreže STALNO koristite način rada dinamički ključevi.


Vrste provjere autentičnosti - skup podržanih vrsta provjere autentičnosti. Klijent će se moći spojiti na pristupnu točku samo ako je podržava ovaj tip ovjera. Predložene opcije: WPA-PSK, WPA2-PSK, WPA-EAP i WPA2-EAR. Tehnička razlika WPA iz WPA2 sastoji se od tehnologije šifriranja, posebno protokola koji se koriste. WPA koristi TKIP protokol, WPA2 koristi AES protokol. U praksi to znači da moderniji WPA2 pruža viši stupanj mrežne sigurnosti. Na primjer, protokol TKIP omogućuje vam stvaranje ključa za provjeru autentičnosti veličine do 128 bita, AES - do 256 bita. Zapravo, WPA2 je poboljšanje u odnosu na WPA; WPA2 koristi AES protokol, WPA koristi TKIP protokol; WPA2 podržavaju svi moderni bežični uređaji; WPA2 možda neće podržavati stariji operativni sustavi.

Razlika između WPA2-PSK i WPA2-EAR je odakle dolaze ključevi za šifriranje koji se koriste u mehanici AES algoritma. Za privatne (kućne, male) aplikacije koristi se statički ključ (lozinka, kodna riječ, PSK (Pre-Shared Key)) minimalne duljine 8 znakova koji se postavlja u postavkama pristupne točke, a isti je za sve klijente određene bežične mreže. Kompromitacija takvog ključa (susjedu prelili čašu, zaposlenik dobio otkaz, laptop ukraden) zahtijeva trenutnu promjenu lozinke za sve preostale korisnike, što je realno samo ako ih je mali broj. Za korporativne aplikacije, kao što ime sugerira, koristi se dinamički ključ, individualan za svakog trenutno pokrenutog klijenta. Ovaj ključ se može povremeno ažurirati tijekom rada bez prekida veze, a za njegovo generiranje odgovorna je dodatna komponenta - autorizacijski poslužitelj, a gotovo uvijek je to RADIUS poslužitelj.

Ne koristimo RADIUS server, naši zaposlenici su pričljivi, ali često mijenjamo lozinke pa je naš izbor WPA2-PSK. Ostavljamo kvačicu samo na njemu, onemogućujemo sve ostale "nesigurne" protokole.

Unicast šifre- odabir vrste enkripcije. Klijenti će se moći spojiti na vašu točku ako podržavaju ovu vrstu enkripcije. Podržane dvije vrste tkip I aes-ccm. AES je moderan i sigurniji algoritam. Kompatibilan je sa standardom 802.11n i omogućuje velike brzine prijenosa podataka. TKIP je zastario. On ima više niska razina sigurnost i podržava prijenos podataka do 54 Mbit/s. Osim toga, standard CCM algoritma zahtijeva korištenje novih privremenih ključeva za svaku novostvorenu sesiju, a to je plus za sigurnost.

Koristimo samo aes-ccm.

Grupne šifre- odabir vrste enkripcije. Vaša stanica će se pokušati spojiti samo na pristupne točke koje podržavaju ovu vrstu enkripcije. Opis se ne razlikuje od prethodnog parametra.

Koristimo samo aes-ccm.


WPA-unaprijed dijeljeni ključ, WPA2 unaprijed dijeljeni ključ - ključna vrijednost. Za postavljanje lozinke koristite brojeve, velika slova I mala slova, Posebni simboli(%, *, @, #, $, ~). Ne zaboravite redovito mijenjati lozinku (na primjer, svakih 15 dana). Mikrotik vam to omogućuje skriptom, mijenjam lozinku u 10 ureda istovremeno, ako vas zanima mogu to opisati u posebnom članku.

Koristimo složenu lozinku.

Identitet molitelja- EAP identifikator, koji šalje klijent na početku EAP autentifikacije. Ova se vrijednost koristi kao vrijednost za atribut User-Name u RADIUS porukama.

Ne koristimo WPA2-EAR - ignoriramo vrijednost.

Ažuriranje ključa grupe- vrijeme koliko često ažurirati ključ za šifriranje. Funkcija ne radi u načinu rada stanice. Zapravo, možete promijeniti vrijednost kada uređaj neshvatljivo ne uspije (na primjer, Android pametni telefoni kada pređu u stanje pripravnosti).

Ostavite zadanu vrijednost - 5 minuta.

Zaštita upravljanja- zaštita od deautentifikacijskih napada i kloniranja MAC adrese. Vaš vlastiti algoritam zaštite bežične mreže iz Mikrotika.

  • onemogućeno- zaštita kontrole je isključena.
  • dozvoljeno- dopustiti korištenje zaštite ako je podržava udaljena strana.
  • potreban- potrebno. Za baznu stanicu uspostavite komunikaciju samo s klijentima koji podržavaju Managment Protection. Za klijente - uspostavite komunikaciju samo s pristupnim točkama koje podržavaju Managment Protection.
Ne koristimo Managment Protection - ostavljamo ga onemogućenim.

Ključ za zaštitu upravljanja- Ključ za zaštitu upravljanja.

Polje nije aktivno ako se ne koristi zaštita upravljanja.


RADIUS kartica.

MAC provjera autentičnosti- autorizacija putem mac adrese. Ova postavka se odnosi na one klijente koji nisu na pristupnoj listi. RADIUS poslužitelj će koristiti klijentovu MAC adresu kao korisničko ime.

Ne označavamo kvadratić.

MAC računovodstvo- omogućiti MAC statistiku.

Ne označavamo kvadratić.

EAP računovodstvo- omogućiti EAP statistiku.

Ne označavamo kvadratić.


Privremeno ažuriranje- vremenski interval nakon kojeg pristupna točka opetovano traži informacije o računu od Radius poslužitelja.

Parametar se ne može mijenjati.


MAC format- format u kojem pišemo MAC adrese. Dostupni formati:

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

Određuje kako je klijentova MAC adresa kodirana od strane pristupne točke u atribut User-Name RADIUS poslužitelja.

Parametar se ne može mijenjati.

MAC način rada- vrijednosti:

  • kao korisničko ime- koristite samo ime prilikom provjere autentičnosti s RADIUS poslužiteljem.
  • kao-korisničko-ime-i-lozinka- koristiti ime i lozinku prilikom provjere autentičnosti na RADIUS poslužitelju (kao atribut Korisničko ime).

Parametar se ne može mijenjati.


MAC vrijeme predmemoriranja- vremenski period nakon kojeg će pristupna točka spremiti u predmemoriju autentifikacijske odgovore. Disabled vrijednost onemogućuje predmemoriju i svi se odgovori šalju izravno na RADIUS poslužitelj.

Parametar se ne može mijenjati.

EAP kartica.


EAP metode- EAP metoda autentifikacije. Vrijednosti:
  • eap-tls- korištenje ugrađene EAP TLS provjere autentičnosti. Certifikati za podršku klijenta i poslužitelja.
  • eap ttls mschapv2- EAP autentifikacija s korisničkim imenom i lozinkom.
  • proći kroz- pristupna točka će prenijeti proces provjere autentičnosti na RADIUS poslužitelj.
TLS način rada- TLS način provjere. Vrijednosti:
  • potvrditi certifikat- provjerite potvrdu.
  • ne provjeravajte certifikat- ne provjeravajte certifikate klijenata.
  • bez certifikata- nemojte koristiti certifikat, koristite 2048 bitnu anonimnu metodu ključa Diffie-Hellman.
  • potvrditi certifikat s crl- provjeriti certifikat prema CRL listama (popis opozvanih SSL certifikata).
TLS certifikat- ovdje izravno označavamo TLS certifikat.

MSCHAPv2 korisničko ime- korisničko ime za autentifikaciju eap ttls mschapv2.

MSCHAPv2 lozinka- lozinka za autentifikaciju eap ttls mschapv2.

Kartica Statički ključevi.

Ovaj je odjeljak aktivan ako se na kartici "Općenito" koriste "static keys optional" i "static-keys-required". Služi za unos ključeva.


Tipka 0, Tipka-1, Tipka-2, Tipka-3- heksadecimalni prikaz ključa. Duljina ključa mora odgovarati odabranom algoritmu (40bit-wep, 104bit-wep, tkip ili aes-ccm).

Ključ prijenosa- pristupna točka će koristiti navedeni ključ za šifriranje okvira za klijente, a također će se koristiti za šifriranje emitiranih i multicast okvira.

Sv. Privatni ključ- samo za korištenje u načinu rada "stanica". Pristupna točka će koristiti odgovarajući ključ odabranog algoritma (u heksadecimalnom prikazu ključa).

Popis pristupa

Kako biste omogućili pristup prema pravilima Access List, na kartici Interfaces potrebno je otvoriti svojstva bežičnog sučelja, gdje na kartici Wireless poništite oznaku parametra Default Authenticate.

Nakon što poništite potvrdni okvir, idite na Popis pristupa i izradite pravilo. Može biti različit za svakog klijenta ili zajednički za sve.


Mac adresa- MAC adresa uređaja koji će se spojiti na vaš router. Ako poništite okvir Default Authenticate i ovdje postavite MAC adresu, tada će se samo ovaj uređaj moći spojiti na mrežu. Ovo je ograničenje povezivanja po MAC adresama u Mikrotiku. Kako bi se drugi uređaj mogao spojiti na vašu točku, morate dodati njegov MAC na popis pravila.

Sučelje
- sučelje na koje će se uspostaviti veza. Ako navedete "sve", pravilo će se primijeniti na sva bežična sučelja vašeg uređaja.

Raspon jačine signala- raspon razine signala na kojem je moguća veza. Postavka se odnosi na mreže s besprijekoran roaming između točaka. Služi kako bi se osiguralo da se vaš uređaj ne zalijepi za trenutnu pristupnu točku dok razina signala ne postane kritično slaba, već se ponovno registrira na nova točka(s istim SSID-om).

Obično postavljaju raspon poput "-75..120" ako postoji nekoliko pristupnih točaka u normalnoj dostupnosti.


AP Tx ograničenje- ograničiti brzinu prijenosa podataka na ovog klijenta. Vrijednost "0" - nema ograničenja.


Ograničenje prijenosa klijenta- ograničenje brzine prijenosa klijenta. Podržano samo na RouterOS klijentima.

Ovjera- mogućnost autorizacije. Ako poništite okvir, uređaj s ovom MAC adresom neće se moći spojiti na vašu mrežu.

Prosljeđivanje- mogućnost razmjene informacija s ostalim sudionicima u bežičnoj mreži. Ako poništite odabir ove stavke, korisnik ovog uređaja neće imati pristup drugim klijentima wifi mreže.

Obično, na javnoj pristupnoj točki, potvrdni okvir nije označen radi uštede prometa i sigurnosti.

VLAN-način- Koristeći VLAN Tagging, možete odvojiti promet virtualnih bežičnih pristupnih točaka od lokalnih klijenata (na primjer, za odvajanje mreže za goste od radne mreže). Vrijednosti:

  • bez oznake- nemojte koristiti VLAN označavanje na bežičnom sučelju;
  • oznaka-usluge za korištenje- koristiti 802.1ad označavanje;
  • oznaka upotrebe- koristiti 802.1q označavanje.
VLAN-ID- VLAN identifikator.
Ne koristimo VLAN, ostavljamo ga na zadanom - "1". Privatni ključ- mogućnost postavljanja osobnog ključa za šifriranje za uređaj s MAC podaci adresa. Samo za WEP načine.

Privatni unaprijed dijeljeni ključ- osobni ključ za šifriranje. Koristi se u WPA PSK modu.

Ključ za zaštitu upravljanja- Ključ za zaštitu upravljanja. Managment Protection - zaštita od deautentifikacijskih napada i kloniranja MAC adrese. Postavite na kartici "Općenito" u sigurnosnim profilima.

Vrijeme- u ovom odjeljku možete odrediti vremenski raspon unutar kojeg će biti moguće spojiti ovaj uređaj.

Poveži popis

Sučelje- pravilo na popisu povezivanja može se primijeniti samo na jedno bežično sučelje. Ovdje ga odabiremo.

Mac adresa- označiti MAC AP na koji ćemo se spojiti.

Spojiti- ako je potvrdni okvir označen, spojit će se na pristupnu točku koja odgovara ovom pravilu, ako nije označen, neće se spojiti.

SSID- spojit će se samo na pristupne točke koje imaju navedeni SSID, ako nisu aktivne - na bilo koji SSID.

Prefiks područja- pravilo vrijedi za sučelje s navedenim prefiksom. Područje - omogućuje stvaranje grupe i uključivanje bežičnih uređaja u nju, a zatim korištenje određena pravila za ovu grupu i sve njezine članove, umjesto stvaranja zasebnih pravila za svaki uređaj. Ova se vrijednost popunjava u postavkama pristupne točke i može se uskladiti s pravilima na popisu povezivanja.

Raspon jačine signala- spojit će se samo na pristupne točke unutar navedenog raspona razine signala.

Bežični protokol- bežični komunikacijski protokol. Vrijednosti:

  • bilo koji- sve podržano (automatski odabir);
  • 802.11 - samo standardni 802.11abgn protokoli. Obično se koristi za kompatibilnost s opremom drugih proizvođača;
  • nstreme- “vlasnički” Mikrotik protokol, kojeg karakterizira velika brzina jednosmjerni protok podataka (RX ili TX);
  • 7) sakrijte SSID svoje mreže.

    8) promijenite MAC bežičnog sučelja - kako biste otežali identifikaciju uređaja.

    Bonus

    Skripta koja analizira Mikrotik logove. Ako se primi poruka o povezivanju s netočnom lozinkom, na popis pristupa dodaje se pravilo koje zabranjuje ovom klijentu(preko MAC-a) spojit će se na sva naša bežična sučelja. Autor EdkiyGluk, za što mu hvala.

    :lokalni pop 4
    :lokalni mac
    : lokalni wifi foreach i in=$wifi do=(
    :set mac [:pick 0 ([:len ]-50)]
    #:log upozorenja $mac
    if ([:len ] >= $pop) do=(
    if ( = "") do=(
    /interface wireless access-list add mac-address=$mac authentication=br
    sučelje=sve
    }
    }
    }
    #:upozorenje dnevnika "ZAVRŠI"

    Skripta u rasporedu koja se pokreće svakih N minuta. Kako bismo osigurali da dopušteni uređaji ne budu zabranjeni, unaprijed ih dodajemo na Popis pristupa.

Još jedan računalni post.

Nedavno sam izgradio WiFi mrežu s 802.1x autentifikacijom, koristeći certifikate za identifikaciju korisnika. Između ostalog, morali smo konfigurirati Android uređaje – pametne telefone i tablete – za rad s njim. Tada se pokazalo da je nemoguće pronaći normalne upute kako to učiniti - one koje su postojale ticale su se scenarija lozinki i htio sam ih se riješiti. Zato sam odlučio spojiti informacije o tom pitanju u jedan post.


Dosta je napisano o tome što je 802.1x i kako ga koristiti na Windowsima i Linuxu, pa ćemo ovdje govoriti samo o postavljanju klijenta na Androidu.

Dakle, koji je cilj? Potrebno je stvoriti mrežu s pristojnom enkripcijom i pouzdanom autentifikacijom, pri čemu je potrebno da autentifikacija bude što praktičnija za korisnika, ali u isto vrijeme zaštićena od korisnika. Odnosno, ja, kao administrator, ne želim da korisnik može nekom drugom dati svoju lozinku ili datoteku s tajnim ključem ili da se povezuje s uređaja s kojeg mu ne želim dopustiti povezivanje - na primjer, osobno prijenosno računalo. Općenito, mrak i diktatura.

Za to radimo sljedeće: na uređaj (telefon, tablet) postavljamo certifikat s tajnim ključem (za svaki uređaj zaseban ključ). Upravljanje ključem u Androidu je vrlo primitivno, ali daje točno ono što nam je potrebno - omogućuje vam da uvezete ključ i koristite ga, ali ne i ekstrahirate ga natrag (putem barem, bez lozinke, koju nećemo izdati). Ovi ključevi će biti izdani pristupnoj točki kao odgovor na zahtjev da se predstavite.

Cijeli postupak se sastoji od 4 koraka:

1. Priprema "pohrane vjerodajnica":
Prije dodavanja bilo kakvih tajnih ključeva na uređaj, morate pripremiti skladište za njih, gdje će ključevi biti pohranjeni u šifriranom obliku. Enkripcija će se temeljiti na lozinci koja se unosi samo prilikom kreiranja pohrane. Da biste koristili tajni ključ, ne morate unijeti lozinku - samo je izvesti (što se, osim toga, ne može učiniti putem uobičajenog Android korisničkog sučelja). Stoga ćemo ovu lozinku zadržati za sebe i nećemo je dati korisniku. Zlobni smijeh je uključen.

[Ažuriraj: nažalost, neće uspjeti. Kada isključite uređaj, lozinka se gubi i morat ćete je ponovno unijeti za korištenje tipki. Ovo ima i dobrih i loših strana:
* Zaporku neće biti moguće čuvati u tajnosti od korisnika - inače ćete je morati unijeti svaki put kada je uključite.
* To znači da teoretski korisnik može kopirati tajni ključ s uređaja - što je loše s gledišta administratora. Ali, koliko sam shvatio, za ovo mu treba root pristup. Dobivanje takvog pristupa je problematično, ali nije nemoguće.
* Dobra strana Problem je u tome što sama lozinka nije spremljena u flash memoriju - a kripto ključevi koji su spremljeni kriptirani su ovom lozinkom koristeći AES.
* Pa, osim toga, ako lozinka još nije unesena prilikom uključivanja, onda to pruža zaštitu od nekoga tko će pokušati koristiti ključ bez znanja lozinke.
]

Lozinka se može promijeniti kasnije - ali samo ako znate trenutnu. Također možete resetirati cijelu pohranu - u tom slučaju lozinka će nestati, a korisnik će moći postaviti svoju, ali s njom će i tajni ključ biti nepovratno izgubljen, baš kao i tajna meda od vrijeska.

Stvarni proces: Postavke --> Lokacija i sigurnost --> Postavi lozinku. Unesite lozinku dva puta. Nakon toga automatski će se uključiti potvrdni okvir "Koristi sigurne vjerodajnice".

Za promjenu lozinke: ponovno “Postavi lozinku”.

Za resetiranje svega na nulu: "Očisti pohranu" na istom mjestu.

2. Uvoz korijenskog certifikata:
Morate prenijeti datoteku na svoj uređaj s ekstenzijom .crt (.cer se ne prihvaća) i u PEM formatu, također poznatom kao Base-64. To možete učiniti putem USB-a ili putem Bluetooth-a. Datoteka se mora kopirati u direktorij /sdcard - onaj koji je vidljiv kao korijen prilikom spajanja uređaja putem USB-a ili prilikom pregledavanja datoteka kroz "Moje datoteke".

Zatim: Postavke --> Lokacija i sigurnost -->(iako u ovom slučaju certifikat nije šifriran). Certifikat će biti dodan na popis pouzdanih, a datoteka u /sdcard bit će izbrisana.

Praktičniji način: objavite certifikat na nekoj web stranici i jednostavno otvorite njegov URL u svom nativnom Android pregledniku (za veću pouzdanost upotrijebite poznatu web uslugu preko https ili čisto internu stranicu). Odmah će vas pitati treba li certifikat dodati na popis pouzdanih ili ne. Kako ne biste ručno upisivali URL, možete njime generirati QR kod, a zatim ga jednostavno skenirati.

3. Uvoz korisničkog certifikata s privatnim ključem:
Datoteka s tajnim ključem u formatu PKCS#12 i ekstenzijom .p12 smještena je u /sdcard (.pfx se opet zanemaruje). Postoji mnogo načina za stvaranje takve datoteke - neću ih navesti, ali ću napomenuti da je svakako vrijedno postaviti jednokratnu lozinku za to, ključ za šifriranje.
S druge strane, Postavke --> Lokacija i sigurnost --> Instaliraj šifrirane certifikate. Ovoga puta od vas će se tražiti lozinka. To nije onaj koji je naveden prilikom kreiranja pohrane, već onaj koji je potreban za dekriptiranje ključa iz datoteke. Nakon unosa lozinke, ključ će biti dekriptiran i ponovno spremljen, šifriran - ovaj put, sa lozinkom trezora. Datoteka će biti izbrisana iz /sdcard, što nam savršeno odgovara.

Također možete ispustiti .p12 datoteku putem URL-a, ali ja ne bih - za razliku od certifikata, potrebno je izbjegavati krapu ključa, čak i ako je šifriran.

4. Spajanje na samu mrežu:
Nakon postavljanja ključa preostaju samo postavke WiFi mreže. U ovoj fazi nema ništa tajno; možete to prepustiti korisnicima slanjem uputa.
Tako: Postavke --> Bežična veza i mreža --> Wi-Fi postavke. Pronađite mrežu na popisu ili, ako je SSID skriven, kliknite na "Dodaj Wi-Fi mrežu".
Zatim:



Na naprednijim uređajima također možete odrediti proxy postavke za svaku mrežu, što je vrlo zgodno.

Svi. Nakon toga, korisnik će samo morati kliknuti na naziv mreže i spojiti se. Ako zbog nepromišljenosti nekako klikne na "Zaboravi mrežu" i izbriše postavke, da biste je vratili, samo trebate ponovno proći kroz korak 4 - postupak nije tajan, korisnik to može učiniti sam.

Bilješke:
Uglavnom, postoji i PEAP opcija. Protokol PEAP-EAP-TLS smatra se malo sigurnijim - na primjer, korisnički certifikat šalje se u šifriranom obliku preko uspostavljenog TLS tunela. Međutim, moji napori da natjeram Android da radi u ovom načinu nisu urodili plodom. Pretpostavljam da je poanta u tome što polje "Faza 2 autentifikacije" ne sadrži opciju za korištenje korisničkog certifikata - pa se morate zadovoljiti EAP-TLS-om, koji ne treba nikakvu fazu 2. Ali razlika je minimalna i beznačajna.

Nemam pojma zašto je to potrebno. U načelu, korisnik mora biti identificiran poljem CN u potvrdi.

  • Tutorial

S praktičnog gledišta, bilo bi zgodno upravljati Wi-Fi mrežama izdavanjem lozinke svakom korisniku. To olakšava pristup bežičnoj mreži. Koristeći takozvanu WPA2 PSK autorizaciju, kako biste spriječili pristup slučajnom korisniku, morate promijeniti ključ i ponovno proći kroz proces autorizacije za svakog pojedinca Wi-Fi uređaj. Osim toga, ako imate nekoliko pristupnih točaka, ključ morate promijeniti na svima. A ako morate od nekoga sakriti lozinku, morat ćete svim zaposlenicima dati novu.

Zamislimo situaciju - netko drugi (klijent, ugovorna strana?) dođe u vaš ured, a vi mu trebate omogućiti pristup internetu. Umjesto da mu date WPA2 ključ, možete napraviti zasebni račun za njega, koji se zatim može izbrisati i blokirati nakon što ode. To će vam omogućiti fleksibilnost u upravljanju računom, a vaši će korisnici biti vrlo zadovoljni.

Napravit ćemo prikladan dijagram koji se koristi u korporativne mreže, ali u potpunosti iz improviziranih sredstava s minimalnim financijskim i hardverskim ulaganjima. To će odobriti zaštitarska služba i uprava.

Malo teorije

Jednom davno, IEEE inženjeri su smislili standard 802.1x. Ovaj standard je odgovoran za mogućnost autorizacije korisnika odmah nakon spajanja na medij za prijenos podataka. Drugim riječima, ako se za vezu, npr. PPPoE, spajate na medij (switch) i već možete prenositi podatke, potrebna je autorizacija za pristup Internetu. S 802.1x nećete moći ništa učiniti dok se ne prijavite. Sam krajnji uređaj vam to neće dopustiti. Slična je situacija i s Wi-Fi pristupnim točkama. Odluka o vašem prijemu donosi se na vanjskom autorizacijskom poslužitelju. To može biti RADIUS, TACACS, TACACS+ itd.

Terminologija

Općenito, autorizacija korisnika u točki može biti sljedećih vrsta:
  • Otvoreno – dostupno svima
  • WEP je stara enkripcija. Svi su već uvjereni da ga nikako ne treba koristiti.
  • WPA - koristi TKIP kao protokol šifriranja
  • WPA2 - koristi se AES enkripcija

Sada pogledajmo opcije kako sama pristupna točka saznaje je li moguće korisniku omogućiti pristup mreži ili ne:

  • WPA-PSK, WPA2-PSK - ključ za pristup nalazi se na samoj točki.
  • WPA-EAP, WPA2-EAP - pristupni ključ se provjerava prema nekoj udaljenoj bazi podataka na poslužitelju treće strane

Postoji i prilično veliki broj metode povezivanja krajnjeg uređaja s autorizacijskim poslužiteljem (PEAP, TLS, TTLS...). Neću ih ovdje opisivati.

Opći mrežni dijagram

Za jasnije razumijevanje, izložimo opća shema rad naše buduće sheme:

Riječima, prilikom spajanja na Wi-Fi točku, od klijenta se traži da unese prijavu i lozinku. Nakon što ste primili svoju prijavu i Lozinka za Wi-Fi točka te podatke prenosi RADIUS serveru, na što server odgovara što se može učiniti s ovim klijentom. Ovisno o odgovoru, točka odlučuje hoće li joj dati pristup, smanjiti brzinu ili nešto treće.
Naš poslužitelj s instaliranim freeradiusom bit će odgovoran za autorizaciju korisnika. Freeradius je implementacija RADIUS protokola, koji je pak implementacija generičkog AAA protokola. AAA je skup alata za sljedeće:
Autentikacija - provjerava valjanost prijave i lozinke.
Autorizacija - provjerava dopuštenje za izvođenje određenih radnji.
Računovodstvo - uzima u obzir Vaše radnje u sustavu.
Sam protokol prenosi korisničko ime, popis atributa i njihove vrijednosti za njega. To je, na primjer, atribut Auth-Type:= Reject - odbijte ovog klijenta i Client-Password == “password” - usporedite atribut u zahtjevu s vrijednošću lozinke.
Općenito govoreći, baza računa i prava za njih ne mora biti pohranjena na RADIUS poslužitelju, a baza može biti bilo što - niks korisnici, korisnici Windows domena... da, barem tekstualnu datoteku. Ali u našem slučaju sve će biti na jednom mjestu.

Osnovno postavljanje

U ovom članku će nas prvenstveno zanimati WPA2-EAP/TLS metoda autentifikacije.
Gotovo sve moderne Wi-Fi pristupne točke koje koštaju više od 3 tisuće rubalja podržavaju tehnologiju koja nam je potrebna. Klijentski uređaji to još više podržavaju.
U ovom ću članku koristiti sljedeći hardver i softver:
  • Pristupna točka Ubiquiti NanoStation M2
  • Gentoo i Freeradius poslužitelj
  • Klijentska oprema s instaliranim softverom Windows 7, Android, iOS

Postavljanje pristupne točke

Glavna stvar je da točka podržava potrebnu metodu provjere autentičnosti. Može se drugačije zvati u različitim uređajima: WPA-EAP, WPA2 Enterprise itd. U svakom slučaju biramo autentifikaciju, postavljamo IP adresu i port RADIUS servera te ključ koji smo unijeli u clients.conf prilikom postavljanja Freeradiusa.
Dat ću sliku s konfigurirane Ubiquiti točke. Stavke koje je potrebno promijeniti označene su kvačicom.

RADIUS poslužitelj

Idemo na naše Linux računalo i instalirajmo RADIUS poslužitelj. Uzeo sam freeradius i instalirao ga na gentoo. Na moje iznenađenje, na RuNetu nema materijala koji se odnose na postavljanje Freeradiusa 2 za naše potrebe. Svi su članci prilično stari i odnose se na starije verzije ovog softvera.
root@localhost ~ # emerge -v slobodni radijus
To je to :) RADIUS poslužitelj možda već radi :) Možete provjeriti ovako:
Ovo je način otklanjanja pogrešaka. Sve informacije se ispisuju na konzolu. Počnimo to postavljati.
Kao što je uobičajeno u Linuxu, konfiguracija se vrši putem konfiguracijskih datoteka. Konfiguracijske datoteke pohranjene su u /etc/raddb. Učinimo to pripremne radnje- kopirajte originalne konfiguracije, očistite konfiguraciju od smeća.
root@localhost ~ # cp -r /etc/raddb /etc/raddb.olg root@localhost ~ # pronađi /etc/raddb -type f -exec datoteka () \; | grep "tekst" | rez -d":" -f1 | xargs sed -i "/^ *\t* *#/d;/^$/d"
Zatim, dodajmo klijenta - pristupnu točku. Dodajte u datoteku /etc/raddb/clients sljedeće retke:
root@localhost ~ # cat /etc/raddb/clients.conf | sed "/client test-wifi/,/)/!d" client test-wifi ( ipaddr = 192.168.0.1 #IP adresa točke koja će pristupiti radijusu secret = secret_key #Tajni ključ. Isti će trebati instalirati na Wi-Fi Fi točki require_message_authenticator = ne #Ovako je bolje, s nekim D-Linkom ne bih mogao drugačije)
Zatim dodajte domenu za korisnike. Neka bude zadana.
root@localhost ~ # cat /etc/raddb/proxy.conf | sed "/realm DEFAULT/, /^)/!d" realm DEFAULT ( tip = radius authhost = LOKALNO acchost = LOKALNO )

Domene u RADIUS-u

Ovdje treba napomenuti da korisnike možete podijeliti po domeni. Naime, domena se može navesti u formatu korisničkog imena (primjerice korisnik@radijus). DEFAULT označava bilo koju nedefiniranu domenu. NULL - nema domene. Ovisno o domeni (možete reći prefiks u korisničkom imenu), možete razne akcije, kako dati pravo autentifikacije drugom hostu, treba li odvojiti ime od domene tijekom provjere prijave itd.


I na kraju dodajte korisnike u datoteku /etc/raddb/users:
root@localhost ~ # cat /etc/raddb/users | sed "10,$!d" user1 Cleartext-Password:= "password1" user2 Cleartext-Password:= "password2" user3 Cleartext-Password:= "password3"
Wow, možemo početi!
root@localhost ~ # radiusd -fX
Naš poslužitelj radi i čeka veze!

Postavljanje klijenata

Idemo kroz osnovne postavke korisničkih uređaja. Naši zaposlenici imaju klijente s operativnim sustavima Android, iOS i Windows 7. Rezervirajmo odmah: budući da koristimo certifikate koje smo sami izradili, moramo nekoliko puta napraviti razne iznimke i potvrditi radnje. Da smo koristili kupljene certifikate, možda bi sve bilo jednostavnije.

Stvari su lakše za sve na iOS uređajima. Unesite svoje korisničko ime i lozinku, kliknite "Prihvati certifikat" i nastavite.

Snimak zaslona iz iOS-a


Izgleda malo kompliciranije, ali u praksi je sve jednostavno i na Androidu. Postoji još nekoliko polja za unos.

Snimka zaslona s Androida


Pa, na Windows 7 morat ćete ga malo konfigurirati. Poduzmimo sljedeće korake:
Idemo do centra bežične veze.

  1. Postavite potrebne parametre u svojstvima bežične veze
  2. Postavite potrebne parametre u naprednim EAP postavkama
  3. Postavite potrebne parametre u naprednim postavkama Dodatni parametri
  4. Povežite se na Wi-Fi mrežu na programskoj traci i unesite svoju lozinku za prijavu, uživajte u pristupu Wi-Fi

Windows snimke zaslona

Korak 1


Korak 2

3. korak


Korak 4

Korak 5


Vlastita mini naplata

Sada ostaje samo jedan problem - ako želite dodati ili ukloniti novog korisnika, morat ćete promijeniti korisnike i ponovno pokrenuti radijus. Kako bismo to izbjegli, povežimo bazu podataka i napravimo vlastitu mini-naplatu za korisnike. Koristeći bazu podataka, uvijek možete napisati jednostavnu skriptu za dodavanje, blokiranje ili promjenu korisničke lozinke. I sve će se to dogoditi bez zaustavljanja cijelog sustava.

Za sebe sam koristio Postgres, ali možete odabrati po vlastitom nahođenju. Pružam osnovne postavke Postgresa bez ulaženja u različita prava pristupa, lozinke i druge trikove i pogodnosti.

Prvo, kreirajmo samu bazu podataka:

Root@localhost ~ # psql -U postgres radius_wifi=> kreirajte korisnika radius_wifi s lozinkom 1111; radius_wifi=> kreiraj bazu podataka radius_wifi s owner=radius_wifi; radius_wifi=>\q

Zatim morate izraditi potrebne tablice. Općenito, Freeradius dolazi s dokumentacijom o shemama tablica za razne baze podataka, iako se u različitim distribucijama nalaze na različitim mjestima. Ja osobno imam ovo u /etc/raddb/sql/postgresql/schema.sql. Samo zalijepite ove retke u psql ili jednostavno pokrenite

Root@localhost ~ # cat /etc/raddb/sql/postgresql/schema.sql | psql -U radius_wifi radius_wifi

Za svaki slučaj, ovdje ću dodati dijagram za Postgres:

Shema za Postgres

root@localhost ~ # 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, Korisničko ime VARCHAR(253), Ime grupe VARCHAR(64), NASIPAdress INET NOT NULL, NASPo rtId VARCHAR(15), NASPortType VARCHAR(32), AcctStartTime TIMESTAMP s vremenskom zonom, AcctSessionTime BIGINT, AcctAuthentic VARCHAR(32), ConnectInfo_start VARCHAR(50), ConnectInfo_stop VARCHAR(50), AcctInputOctets BIGINT, AcctOutputOctets BIGINT, CalledStationId VARCHAR(50), CallingStationId VARCHAR(50), AcctTerminateCause VARCHAR(32), ServiceType VARCHAR(32), XAscendSessionSvrKey VARCHAR(10), FramedProtocol VARCHAR(32), FramedIPAddress INET, AcctStartDelay INTEGER, AcctStopDelay INTEGER); CREATE INDEX radacct_active_user_idx ON radacct (UserName, NASIPAddress, AcctSessionId) WHERE AcctStopTime IS NULL; CREATE INDEX radacct_start_user_idx ON radacct(AcctStartTime, UserName); CREATE TABLE radcheck (id SERIAL PRIMARY KEY, UserName VARCHAR(64) NOT NULL DEFAULT "", atribut VARCHAR(64) NOT NULL DEFAULT "", op CHAR(2) NOT NULL DEFAULT "==", vrijednost VARCHAR(253) NOT NULL DEFAULT ""); kreirajte indeks radcheck_UserName na radcheck(UserName,Attribute); CREATE TABLE radgroupcheck (id SERIAL PRIMARY KEY, GroupName VARCHAR(64) NOT NULL DEFAULT "", atribut VARCHAR(64) NOT NULL DEFAULT "", op CHAR(2) NOT NULL DEFAULT "==", vrijednost VARCHAR(253) NOT NULL DEFAULT ""); kreirajte indeks radgroupcheck_GroupName na radgroupcheck(GroupName,Attribute); CREATE TABLE radgroupreply (id SERIAL PRIMARY KEY, GroupName VARCHAR(64) NOT NULL DEFAULT "", atribut VARCHAR(64) NOT NULL DEFAULT "", op CHAR(2) NOT NULL DEFAULT "=", vrijednost VARCHAR(253) NOT NULL ZADANO ""); stvoriti indeks radgroupreply_GroupName na radgroupreply(GroupName,Attribute); CREATE TABLE radreply (id SERIAL PRIMARY KEY, UserName VARCHAR(64) NOT NULL DEFAULT "", atribut VARCHAR(64) NOT NULL DEFAULT "", op CHAR(2) NOT NULL DEFAULT "=", vrijednost VARCHAR(253) NOT NULL ZADANO ""); kreirajte indeks radreply_UserName na radreply(UserName,Attribute); CREATE TABLE radusergroup (Korisničko ime VARCHAR(64) NOT NULL DEFAULT "", Ime grupe VARCHAR(64) NOT NULL DEFAULT "", prioritet INTEGER NOT NULL DEFAULT 0); stvoriti indeks radusergroup_UserName na radusergroup(UserName); CREATE TABLE radpostauth (id BIGSERIAL PRIMARY KEY, korisničko ime VARCHAR(253) NOT NULL, proslijedi VARCHAR(128), odgovori VARCHAR(32), CalledStationId VARCHAR(50), CallingStationId VARCHAR(50), authdate TIMESTAMP s vremenskom zonom NOT NULL zadano " sada()");

Odlično, podloga je pripremljena. Sada konfigurirajmo Freeradius.
Ako ga nema, dodajte redak u /etc/raddb/radiusd.conf

$INCLUDE sql.conf

Sada uredite /etc/raddb/sql.conf kako bi odgovarao vašoj stvarnosti. Kod mene to izgleda ovako:

Moj sql.conf

root@localhost ~ # cat /etc/raddb/sql.conf sql ( baza podataka = "postgresql" upravljački program = "rlm_sql_$(baza podataka)" poslužitelj = "localhost" prijava = "radius_wifi" lozinka = "1111" radius_db = "radius_wifi" acct_table1 = "radacct" acct_table2 = "radacct" postauth_table = "radpostauth" authcheck_table = "radreply" groupcheck_table = "radgroupcheck" groupreply_table = "radgroupreply" usergroup_table = "radusergroup" deletestalesessions = yes sqltrace = no sqltra cefile = $( logdir)/sqltrace.sql num_sql_socks = 5 connect_failure_retry_delay = 60 lifetime = 0 max_queries = 0 nas_table = "nas" $INCLUDE sql/$(baza podataka)/dialup.conf )


Dodajmo nekoliko novih korisnika test1, test2, test3 i... blok test3

Root@localhost ~ # psql -U postgres radius_wifi=> umetnite u radcheck (korisničko ime, atribut, op, vrijednost) vrijednosti ("test1", "Cleartext-Password", ":=", "1111"); radius_wifi=> umetnite u radcheck (korisničko ime, atribut, op, vrijednost) vrijednosti ("test2", "Cleartext-Password", ":=", "1111"); radius_wifi=> umetnite u radcheck (korisničko ime, atribut, op, vrijednost) vrijednosti ("test3", "Cleartext-Password", ":=", "1111"); radius_wifi=> umetnite u radcheck (username, attribute, op, value) vrijednosti ("test3", "Auth-Type", ":=", "Reject");

Pa, ponovno pokrećemo freeradius i pokušavamo se spojiti. Sve bi trebalo raditi!

Naravno, ispostavilo se da je naplata manjkava - računovodstvene podatke (računovodstvene radnje korisnika) ne pohranjujemo nigdje, ali to nam ni ovdje ne treba. Za održavanje računa također su vam potrebne Wi-Fi točke koje su skuplje od 3 tisuće rubalja. Ali već sada možemo lako upravljati korisnicima.
radijus Dodajte oznake

Najbolji članci na temu