Raza, MySQL și un cuplu - cani Web - toate astea ... blogul meu (Dmitriy Hartsy)

Zilele trecute am fost nerăbdător să se stabilească RADIUS. La întrebarea „De ce?“, Răspuns - de la care am început când a vrut să creeze un hotspot. Dar pentru moment, să ne considerăm întrebarea: „Cum am făcut-o, și dificultățile în timpul instalării a încercat ...“

1. Puneți FreeRADIUS.

urpmi freeradius freeradius-mysql libfreeradius1

Ne așteptăm până la sfârșitul unei instalații de succes. În acest fel, am stabilit trei pachete: server de FreeRADIUS în sine, MySQL modul de suport pentru FreeRADIUS, precum și „de bază“ set de biblioteci. Privind prin lista de pachete care pot fi instalate din depozitele oficiale Mandriva, în al cărui nume conține cuvântul «RADIUS», am ales o pereche de candidați pentru instalare. Tot în aceeași consolă ca root, introduceți următoarea comandă:

urpmi freeradius-ul web libfreeradius-devel

Ce a fost? Pachetul «libfreeradius-devel» - un set de biblioteci suplimentare pentru dezvoltatori. Nu sunt sigur că îmi place atât de mult este nevoie, dar cum se spune să ia „doar în cazul“. Dar «freeradius-ul web» - aceasta este una dintre cele două interfețe web pentru a gestiona instalarea RADIUS server pe care am de gând să descrie aici. De fapt, programul se numește Dialup Admin. dacă se dorește, se poate citi despre aici. și descărcați (dacă cineva nu vrea să pună în depozit) - aici.

Deci, cinci pachete, am descărcat și instalat. Inutil să sperăm că totul este de lucru! Până în prezent, ne pregătim doar „forfetare“, din care vykarbuyut după aceea „articolele“ noastre. Și pentru asta vom avea nevoie de ceva.

2. Pune daloRADIUS.

Probleme de fapt, există două:

  1. De ce nu termina unul, vom sări la altul?
  2. Și ce este vorba și de ce avem nevoie de ea?

În primul rând a doua întrebare. daloRADIUS - aceasta este a doua interfață web pentru a gestiona toate același server RADIUS. De ce un al doilea, în cazul în care unul deja? Sincer, la început am Dialup Admin pur și simplu nu pornește, și eu repede „Google o“ cealaltă. Și atunci când executați amândoi, am decis să descrie aici, dintr-o dată. Și cine vă place mai mult - până la tine. Apropo, daloRADIUS comparativ cu Dialup Admin - mai nou și mai feature-bogat. Ei bine, în corectitudine trebuie remarcat - în cele din urmă și să încerce stabilirea atât interfața web, nu am găsit-le instrument destul de util pentru gestionarea hotspot. Dar, pe această mai jos în „Concluzii“ ...

Și acum despre motivul pentru care avem nevoie pentru a instala daloRADIUS înainte de configurare completat „pachete» FreeRADIUS si MySQL. Faptul că instalarea FreeRADIUS cu modulul suport MySQL încă nu creează în mod automat baza de date necesară. Așa cum am spus, aceasta este doar un „nod“ pe care trebuie încă să lucreze mânere! Dar, revenind la baza - după instalarea pachetului de 5 descris în prima parte, avem pe un computer doar ceea ce pare, că toate, dar ... script-ul pentru a crea MySQL foarte necesară pentru funcționarea bazei de date FreeRADIUS. În principiu, nimic nu împiedică să ia imediat script-ul și de a crea cadrul necesar. Și așa ar trebui să facă, dar dacă nu doriți să ... setați daloRADIUS. Faptul că un script vine nimtakzhe a crea o bază de date MySQL pentru FreeRADIUS. Dar, spre deosebire de un script care vine cu serverul auto FreeRADIUS, script-ul la pachet cu daloRADIUS, creează un cadru tridimensional, în plus față de adăugarea unei baze sunt tabele și câmpuri suplimentare necesare pentru propria sa funcționare. Pe de altă parte, în cazul în care unul este de a crea o bază de date folosind „de FreeRADIUS» script-ul, apoi mai târziu, când „de la daloRADIUS» script, prima bază va trebui să fie demolate. Deci, de ce face de două ori același lucru? Convins?

Deoarece arhive Mandriva, acest program nu este, du-te la site-ul daloRADIUS sau la pagina proiect pe SourceForge.net. În orice caz - descărcați arhiva programului. De fapt, planta in sine este redus la câțiva pași simpli:

  • Despachetează conținutul arhivei.

Schimbarea la folderul în care ați salvat arhiva descărcată cu programul și rulați comanda:

tar -zxvf imya_arhiva.tar.gz

  • Acest rezultat trebuie să fie copiate într-un dosar de server web Apache.

Note despre copierea. În primul rând, rezultatul unei reale despachetare un dosar de arhivă va fi numit ceva de genul - daloradius-0.9-8. Personal, eu sunt pentru comoditatea de locația imediat redenumit pur și simplu daloradius. Și în al doilea rând, folderul care conține documentele Apache serverul de web în cazul meu (configurat) este numit / var / www / html. iar acest lucru este ceea ce este prezentat în următoarele comenzi. Acum, înapoi la faptul că avem doar (comanda de mai sus) despachetați arhiva cu programul. De acolo, executați următoarea comandă:

cp daloradius / / var / www / html -R

  • Acum trebuie să atribui calitatea de proprietar al unui dosar cu programul de utilizator pe numele căruia serverul de web care rulează.

În cazul meu, un utilizator al grupului apache apache. Pentru a schimba proprietarul, rulați comanda:

chown apache: apache / var / www / html / daloradius -R

  • Și, în sfârșit, trebuie să modificați permisiunile pe daloRADIUS fișierul de configurare.

Pentru a face acest lucru, rulați comanda:

La acest daloRADIUS presetat poate fi considerat terminat.

3. Pregătirea MySQL (crearea unei baze de date).

Ei bine, aici am ajuns la „excizia“ a „statuie“ nostru. De fapt, pentru a configura comunicațiile între FreeRADIUS cu baza de date MySQL aveți nevoie pentru a crea aceeași bază. Așa cum am scris deja mai sus, în acest stadiu, avem doar script-uri pentru a crea. Și din cele două posibile „candidați“ personal am ales script-ul vine complet cu daloRADIUS. Aici de asemenea, va „juzat“ astăzi. In exemplul de mai jos, am folosi numele bazei de date «radius_db«, numele de utilizator pentru această bază de date - «radius_user» și parola «radius_passwd» pentru a avea acces la un utilizator dat la o bază de date. Vă recomandăm să alegeți, de asemenea, valorile și le expune la echipa corespunzătoare. Se presupune că suntem încă în consola de la rădăcină, și numele. Rulați comanda:

Dacă vă întrebați, introduceți-rădăcină și parola pentru MySQL. (Dacă nu cere Consiliului pentru viitor - aceasta este parola setată pentru a crește securitatea). Dupa introducerea parolei vom intra în consola MySQL. Doar în cazul în care, permiteți-mi să vă reamintesc că toată echipa ei trebuie să se termine cu punct și virgulă (;). Crearea unei baze danyh:

CREATE DATABASE radius_db;

Du-te la baza de date nou creată:

Alergăm același script, care va crea în baza de date toate cele necesare:

În urma să ia în considerare faptul că, în primul rând, întreaga comandă trebuie să fie introduse pe o singură linie, iar pe de altă parte - are calea către script-ul pentru a crea o bază de date bazate pe locația fișierele mele daloRADIUS. Dacă este necesar, reglați calea.

După crearea bazei de date (am primit un răspuns ca «Solicitare OK, rândurile XXX afectate ...»), a crea un utilizator și atribuiți-i dreptul la această bază de date:

GRANT ALL ON PRIVILEGII radius_db * LA 'radius_user' @ 'localhost' IDENTIFICAT cu 'radius_passwd' .;

În acest caz, ar trebui să acorde o atenție la cuvântul «localhost», ceea ce înseamnă că baza de date MySQL si serverul FreeRADIUS sunt instalate pe același computer. În caz contrar, numele computerului în comanda de mai sus va trebui să se schimbe.

Baza noastra de date este acum gata, dar ... numai în cazul utilizării interfeței web daloRADIUS. Dacă intenționați să utilizați Dialup Admin, atunci trebuie să adăugați la baza de date câteva mese. Notă necesară - după fișierele de program de instalare a pachetelor freeradius-ul web Dialup Admin pe "server" meu este localizat în directorul / var / www / freeradius-ul web. și documentația pentru ea - în directorul / usr / share / doc / freeradius-ul web / SQL. Dosarul de documentare, într-un subfolder / sql / MySQL patru script-uri pentru crearea de lipsă pentru tabele suplimentare Dialup Admin. Dacă încă nu ați ieșit din consola MySQL, apoi pur și simplu introduceți următoarele patru echipe. În cazul în care a ieșit, ei merg mai întâi înapoi la comanda consola MySQL «MySQL -uroot -p» și selectați baza de date «echipa de utilizare radius_db; “. Și deja apoi a crea 4 noi tabele - «badusers»

Acesta este modul în care script-ul privit inițial:

Și acest lucru este - după editare:

Pentru claritate, diferențele sunt evidențiate în roșu. După cum putem vedea, pentru prima corectare a erorilor (1067) Am înlocuit doar un zero numeric (0) la valoarea «NULL». După aceea, un mesaj incorect „default“ valoare pentru «id» coloana plecat. Al doilea mesaj de eroare (1,072) ne spune că încercăm să facă o masă nevuschestvuyuschy cheie (.) Coloana «Data». Și e adevărat! Uitându-se la structura mesei, vom vedea că există «IncidentDate» din datele numai de coloană. Asta e doar asta, am făcut cheia ... O astfel de corecție poate fi necesară pentru celelalte trei script-uri. După editare este repornit 4 crearea de tabele suplimentare. După ce a primit un tip de răspuns de «Solicitare OK, rândurile XXX afectate ...» toate cele patru echipe pentru a crea ext. tabele, ieșiți din MySQL consola de comandă «ieșire«.

4. Setarea FreeRADIUS pentru a utiliza baza de date MySQL.

La început ne-am stabilit FreeRADIUS. Amintiți-vă? Și în tot acest timp, el a lucrat în liniște! Nu mă crezi? Introduceți următoarea comandă:

Nuanța este că, în timp ce FreeRADIUS nostru nu folosește baza de date MySQL. Ei bine, am „forțat“. Pentru a face acest lucru, trebuie să efectuați mai multe acțiuni. În primul rând, trebuie să editați fișierul /etc/raddb/sql.conf. Este necesar de a găsi aceste linii (nu vor merge într-un rând, la fel ca în exemplul de mai jos) și atribuie următoarele valori:

Toate. Setarea interacțiunii FreeRADIUS cu baza de date MySQL este completă. Pentru a contacta modificările să aibă efect, serverul FreeRADIUS trebuie să fie repornit. Suntem încă în consola cu rădăcină și drepturi? Apoi, pur și simplu introduceți comanda:

Dacă totul este bine, mai întâi vom citi „OK“ de pe serverul freeradius se oprește, și apoi - „OK“ cu privire la lansarea sa. Din acel moment „un buchet» FreeRADIUS cu baza de date MySQL funcționează, și este timpul să-l verifica afară ...

5. Verificați „Grupări» FreeRADIUS + MySQL

Pentru a vă asigura că serverul nostru se execută și „comunică“ cu baza de date, executați următoarele date. În primul rând, conectați-consolă MySQL:

Selectați baza de date:

Inserat un nou record (în tabelul «radcheck» despre utilizator «sqltest» și parola «testpwd»):

INSERT INTO radcheck (UserName, atribut, valoare) VALORI (, 'parola' 'sqltest', 'testpwd');

(De fapt, avem doar „rapid“ a adus la ghidul nostru de test RADIUS-server). În orice caz, verificați dacă înregistrarea a fost încă adăugat:

selectați * de la radcheck în cazul în care UserName = 'sqltest';

Ca răspuns la pseudo-tabel ar trebui să apară, așa cum se arată mai jos, cu un record care satisface cererea noastră:

Dacă totul este bine, ieși din consola MySQL:

Și acum ne trimite cerere către RADIUS server:

radtest sqltest testpwd localhost 1812 testing123

Și este important pentru noi este evidențiată în linia roșie „Acces-Acceptare“, ceea ce confirmă faptul că clientul „sqltest“, adoptat de către serverul RADIUS, ceea ce înseamnă că FreeRADIUS noastre „buchet“ + MySQL funcționează bine! Prin urmare, este timpul pentru a fixa interfața web ...

6. Configurarea Dialup Admin

Configurarea programului este simplu și vine în jos pentru editare doar un singur fișier de configurare - /etc/freeradius-web/admin.conf. Este necesar de a găsi aceste linii (nu vor merge în mod necesar într-un rând, la fel ca în exemplul de mai jos) și atribuie următoarele valori:

7. Configurarea daloRADIUS.

Se înțelege că ați instalat deja programul și a stabilit dreptul de proprietate și permisiunile acestuia, așa cum este descris la punctul 2 de mai sus „Pune daloRADIUS». Pentru a configura programul pe care doriți să editați doar un singur fișier de configurare - /var/www/html/daloradius/library/daloradius.conf.php. Este necesar de a găsi aceste linii (nu vor merge în mod necesar într-un rând, la fel ca în exemplul de mai jos) și atribuie următoarele valori:

Ei bine, asta e ... Oh, da -

După instalarea și configurarea ambele interfețe, am încercat să le folosească pentru a direcționa hotspot-ul. Dar, din păcate, nici unul dintre ei nu părea destul de soluție funcțională și convenabil nevoile mele. Și am fost forțat să-și continue căutarea pentru o interfață bazată pe web la hotspot. Ca urmare, alegerea mea personală a fost programul Easyhotspot. Aici imposibil pentru mine la acel moment complet mulțumit. Ca rezultat, în primul rând, l-am tradus în limba română, apoi am început un proces de modernizare treptată a ...

Am citit toate notele mele pe hotspot-uri:

Te sfătuiesc să citiți, de asemenea, următorul blog post: