Autentificare cu PPPoE pentru retelele de cartier: Diferență între versiuni
(→WISPs – Wireless Internet Service Providers) |
Rz (Discuție | contribuții) m (→Ce este PPTP?) |
||
(Nu s-au afișat 9 versiuni intermediare efectuate de alți 2 utilizatori) | |||
Linia 1: | Linia 1: | ||
− | + | == Ce este un VPN == | |
− | + | Un VPN (Virtual Private Network) este o retea virtuala de comunicatii privata folosita de obicei intr-o companie, sau de catre diferite companii sau organizatii, pentru a comunica intr-o retea publica. Traficul VPN poate fi transmis pe infrastructura publica (ex: pe Intenet), folosind protocoale standard (si deseori nesigure), sau peste reteaua unui provider de servicii de telecomunicatii care furnizeaza servicii VPN bine definite de SLA (Service Level Agreement) intre consumatorul VPN si furnizorul de servicii VPN. | |
− | + | == Tipuri de VPN-uri == | |
− | + | VPN-urile securizate folosesc tuneluri criptate pentru a avea '''confidentialitatea necesara''', '''autentificarea partilor''' si '''integritatea mesajelor'''. Atunci cand sunt corect alese, implementate si folosite, aceste tehnologii pot furniza comunicatii securizate peste retele nesigure. | |
+ | |||
+ | Tehnologii pentru VPN-uri securizate pot fi folosite pentru imbunatatirea securitatii sau ca o "patura de securitate" peste infrastructuri de retea dedicate. | ||
+ | |||
+ | Printre protocoalele VPN securizate sunt urmatoarele: | ||
+ | |||
+ | * Ipsec (Ip security), o parte integranta din Ipv6 (cu o implementare linux la http://www.openswan.org/) | ||
+ | * SSL folosit pentru tunelarea intregii stive de retea, ca in [[OpenVPN]], cu ajutorul driverelor TUN/TAP (TUN pentru simularea unei interfete Point-to-Point si TAP pentru simularea unei interfete Ethernet) | ||
+ | * PPTP (point-to-point tunneling protocol), dezvoltat in colaborare de mai multe companii, printre care si Microsoft - http://www.microsoft.com/ntserver/ProductInfo/faqs/PPTPfaq.asp | ||
+ | * PPPoE (point-to-point protocol over Ethernet) este un protocol folosit pentru incapsularea pacheteleor PPP in cadre Ethernet. Ofera functionalitati PPP standard cum ar fi autentificare, criptare si compresie. | ||
+ | * [http://www.tinc-vpn.org/ Tinc] - o solutie vpn pentru UNIX care lucreaza in user-space, care poate sa transmita nu numai pachete Ipv4 sau Ipv6 prin tunelul securizat. | ||
+ | * [http://sites.inka.de/bigred/devel/cipe.html CIPE - Crypto IP Encapsulation] - solutie VPN pentru Unix care foloseste algoritmi Blowfish si IDEA cu chei de 128 de biti, foarte performant si pe sisteme cu procesor slab (486). Foloseste incapsulare UDP. | ||
+ | * [http://htun.runslinux.net/ Htun] - o solutie pentru Linux care permite crearea unui tunel VPN bidirectional peste un proxy HTTP sau doar peste portul 80, dand posibilitatea de a trece peste firewall-uri restrictive. HTun creeaza o retea IP point-to-point peste HTTP encapsuland traficul IP in cereri HTTP valide. Serverul HTun trebuie sa se afle pe o gazda cu o conexiune nerestrictionata la internet, asculta pe un port de webserver (80 sau 443) si accepta conexiunile clientilor HTun. Clientul HTun este rulat din reteaua cu restrictii, comunicand cu serverul HTun peste proxy-ul HTTP. | ||
+ | * [http://www.tldp.org/HOWTO/ppp-ssh/ PPP over SSH] - probabil cel mai simplu VPN de realizat. Cea mai mare problema a sa este se realizeaza peste un flux TCP, si atunci cand se incearca conexiuni TCP prin acel tunel pot aparea intarzieri, caderi. "Problema" se numeste TCP over TCP si este cunoscuta [http://sites.inka.de/~W1011/devel/tcp-tcp.html] ; aceasta problema a dat nastere la proiectul CIPE, care rezolva aceasta problema folosind incapsularea UDP. | ||
+ | |||
+ | == Cele 4 atribute cheie ale unui VPN == | ||
+ | |||
+ | Cea mai importanta parte a unei solutii VPN este securitatea. Faptul ca prin natura lor prin VPN-uri se transmit date private prin retele publice ridica dubii cu privire la securitatea acestor date si impactul pierderii datelor. O retea virtuala privata trebuie sa adreseze toate tipurile de amenintari la securitate furnizand servicii de securitate in zonele: | ||
+ | |||
+ | # Autentificare (controlul accesului) | ||
+ | # Prezentare (criptare - confidentialitate) | ||
+ | # Transport (integritatea datelor) | ||
+ | # Non-repudiere - acest serviciu ar oferi dovezi de nefalsificat precum ca o anumita actiune a avut loc. Non repudierea originii inseamna ca datele a fost trimise, si non repudierea primirii dovedeste ca datele au fost receptionate. | ||
+ | |||
+ | Cei mai multi provideri doresc satisfacerea primului punct, autentificarea. | ||
+ | |||
+ | == WISPs - Wireless Internet Service Providers == | ||
+ | |||
+ | Un provider wireless poate opera hotspoturi sau intregi infrastructuri wireless. Necesitatea securizarii buclei locale wireless (WLL - wireless local loop) este evidenta in acest caz, pentru a elimina furtul serviciului. | ||
== Solutii pentru securizarea hotspoturilor wireless si a retelelor ethernet "de cartier" == | == Solutii pentru securizarea hotspoturilor wireless si a retelelor ethernet "de cartier" == | ||
Linia 11: | Linia 39: | ||
Pentru securizarea acestor linkuri exista cateva solutii generale, in ordinea complexitatii: | Pentru securizarea acestor linkuri exista cateva solutii generale, in ordinea complexitatii: | ||
− | # '''Portaluri captive | + | # '''Portaluri captive "catch and release"''', din care enumar doar doua, mai reprezentative: |
− | #* | + | #* [http://nocat.net/downloads/NoCatAuth/ Nocat auth] - unul dintre primele portaluri captive |
− | #* | + | #* [http://www.chillispot.org/ Chillispot] - un portal mai avansat si configurabil, care suporta si autentificare RADIUS. |
− | Principala problema a acestor scheme de autentificare este ca doar cer utilizatorilor sa treaca de o pagina de login (eventual criptata SSL), dupa care acelei perechi IP si MAC i se permita sa treaca prin gateway. Cu un simplu sniffer de pachete aceasta schema este exploatabila. Odata ce IP-ul si MAC-ul celorlalte calculatoare conectate sunt gasite, orice alt calculator isi poate falsifica MAC-ul si IP-ul cu cel al victimei autentificate, si poate sa treaca prin gateway. MAC-ul placii de retea (NIC | + | Principala problema a acestor scheme de autentificare este ca doar cer utilizatorilor sa treaca de o pagina de login (eventual criptata SSL), dupa care acelei perechi IP si MAC i se permita sa treaca prin gateway. Cu un simplu sniffer de pachete aceasta schema este exploatabila. Odata ce IP-ul si MAC-ul celorlalte calculatoare conectate sunt gasite, orice alt calculator isi poate falsifica MAC-ul si IP-ul cu cel al victimei autentificate, si poate sa treaca prin gateway. MAC-ul placii de retea (NIC - network interface card) poate fi schimbat in windows cel mai usor cu [http://www.klcconsulting.net/smac/ SMAC]. Cu SMAC este foarte usoara schimbarea Mac-ului in Windows. |
− | + | # '''Solutii VPN''': datorita suportului pe Windows, in general, se pot alege una din solutiile VPN: PPTP, PPPoE sau IPsec. | |
− | # '''Solutii VPN''' | + | # '''[http://www.ieee802.org/1/pages/802.1x.html 802.11x]''' - standardul port security pentru Ethernet. Bazat pe [http://www.ietf.org/rfc/rfc3748.txt EAP] (Extensible Authentification Protocol) |
− | # ''' | + | # '''802.11i ''' - implementand complet 802.11x si folosind criptare AES, acesta pare sa fie "viitorul" |
− | # '''802.11i ''' | ||
== WIFI Security si VPN-urile == | == WIFI Security si VPN-urile == | ||
Linia 145: | Linia 172: | ||
Orice distributie Linux poate fi folosita pentru a construi un server PPPoE. Este recomandat sa se foloseasca un kernel din generatia 2.6, cu o revizie cat mai recenta (peste 2.8.1). Distributiile mai vechi nu contin pachetul PPP care suporta autentificare si accounting prin RADIUS. | Orice distributie Linux poate fi folosita pentru a construi un server PPPoE. Este recomandat sa se foloseasca un kernel din generatia 2.6, cu o revizie cat mai recenta (peste 2.8.1). Distributiile mai vechi nu contin pachetul PPP care suporta autentificare si accounting prin RADIUS. | ||
Pentru testul nostru am folosit un sistem bazat pe debian unstable, kernel 2.6.11-1-686-smp. Acesta are suportul PPPoE compilat in kernel, deci nu trebuie recompilat kernelul, dar trebuie recompilat pachetul rp-pppoe pentru a putea folosi suportul in kernel. | Pentru testul nostru am folosit un sistem bazat pe debian unstable, kernel 2.6.11-1-686-smp. Acesta are suportul PPPoE compilat in kernel, deci nu trebuie recompilat kernelul, dar trebuie recompilat pachetul rp-pppoe pentru a putea folosi suportul in kernel. | ||
− | ## '''PPPd''' - [http://www.samba.org/ppp | + | ## '''PPPd''' - [http://www.samba.org/ppp ppp] - Orice versiune mai noua de 2.4 are suport Radius. Pe site versiunea oficiala este 2.4.3, dar in debian unstable este impachetata o versiune beta, mai noua, dar complet functionala, versiunea 2.4.4b1-1. Se instaleaza folosind comanda <tt>apt-get install ppp</tt> |
− | ## [http://www.roaringpenguin.com/penguin/open_source_rp-pppoe.php '''RP-PPPoE''' (Implementare linux a pppoe de catre Roaring Penguin) | + | ## [http://www.roaringpenguin.com/penguin/open_source_rp-pppoe.php '''RP-PPPoE''' (Implementare linux a pppoe de catre Roaring Penguin]) |
Autorii sustin in documentatie ca serverul PPPoE din pachetul rp-pppoe este doar pentru testari si nu este gata pentru productie “''Note that pppoe-server is meant mainly for testing PPPoE clients. It is not a high-performance server meant for production use.â€, ''dar el este foarte solid si performant. Nu va asteptati la suport tehnic pentru aplicatia pppoe-server, pentru ca exista un server comercial bazat pe RP-PPPoE, [http://www.finepointnetworks.com/products/servpoet/index.html ServPoET BMS], care incepe de la preturi de $10.000, server care se poate crea si cu produse open-source si care poate fi mai customizabil decat solutia pre-packaged ServPoEt. | Autorii sustin in documentatie ca serverul PPPoE din pachetul rp-pppoe este doar pentru testari si nu este gata pentru productie “''Note that pppoe-server is meant mainly for testing PPPoE clients. It is not a high-performance server meant for production use.â€, ''dar el este foarte solid si performant. Nu va asteptati la suport tehnic pentru aplicatia pppoe-server, pentru ca exista un server comercial bazat pe RP-PPPoE, [http://www.finepointnetworks.com/products/servpoet/index.html ServPoET BMS], care incepe de la preturi de $10.000, server care se poate crea si cu produse open-source si care poate fi mai customizabil decat solutia pre-packaged ServPoEt. | ||
Pe debian se instaleaza folosind comanda <font size="2"><font face="Courier, monospace">“apt-get install pppoeâ€</font></font> | Pe debian se instaleaza folosind comanda <font size="2"><font face="Courier, monospace">“apt-get install pppoeâ€</font></font> | ||
Pachetul trebuie recompilat pentru a activa suportul de kernel-mode in PPPoE. Acest lucru aduce un plus de performanta de 20-30 de ori. Pentru aceasta, se aduce [http://www.roaringpenguin.com/penguin/open_source_rp-pppoe.php sursa cea mai noua de PPPoE], sau se ia pachetul deb-src si se recompileaza. Odata dezarhivata arhiva, se intra in directorul “src†si se executa comanda “./configure –enable-plugin=/usr/include/pppd/â€. La sfarsit trebuie sa afiseze: | Pachetul trebuie recompilat pentru a activa suportul de kernel-mode in PPPoE. Acest lucru aduce un plus de performanta de 20-30 de ori. Pentru aceasta, se aduce [http://www.roaringpenguin.com/penguin/open_source_rp-pppoe.php sursa cea mai noua de PPPoE], sau se ia pachetul deb-src si se recompileaza. Odata dezarhivata arhiva, se intra in directorul “src†si se executa comanda “./configure –enable-plugin=/usr/include/pppd/â€. La sfarsit trebuie sa afiseze: | ||
<font face="Courier, monospace"><font size="2"> On this platform, the following targets will be built:<br /> pppoe pppoe-server pppoe-sniff pppoe-relay '''rp-pppoe.so'''<br /> Type 'make' to compile the software.</font></font><br /> | <font face="Courier, monospace"><font size="2"> On this platform, the following targets will be built:<br /> pppoe pppoe-server pppoe-sniff pppoe-relay '''rp-pppoe.so'''<br /> Type 'make' to compile the software.</font></font><br /> | ||
− | Apoi cu | + | Apoi cu "dpkg-buildpackage" (pe [[Debian]]) sau cu clasicul "make; make install" slackware-ist, se instaleaza serverul PPPoE. |
## [ftp://ftp.cityline.net/pub/radiusclient/ Radiusclient] - http://freshmeat.net/projects/radiusclient/ | ## [ftp://ftp.cityline.net/pub/radiusclient/ Radiusclient] - http://freshmeat.net/projects/radiusclient/ | ||
− | Biblioteca de sistem care permite mai multor aplicatii autentificarea la servere Radius. Pe debian se instaleaza folosind comanda < | + | Biblioteca de sistem care permite mai multor aplicatii autentificarea la servere Radius. Pe debian se instaleaza folosind comanda <tt>"apt-get install radiusclient1"</tt> |
## Freeradius - http://www.freeradius.org/ - este succesorul serverului open source [http://www.radius.cistron.nl/ Cistron Radius]. Exista multe servere Radius open source, si debian mai include pachete si pentru xtradius si yardradius. Freeradius este rapid, flexibil, configurabil si suporta multe protocoale de autentificare. Il instalam impreuna cu modulul de mysql. | ## Freeradius - http://www.freeradius.org/ - este succesorul serverului open source [http://www.radius.cistron.nl/ Cistron Radius]. Exista multe servere Radius open source, si debian mai include pachete si pentru xtradius si yardradius. Freeradius este rapid, flexibil, configurabil si suporta multe protocoale de autentificare. Il instalam impreuna cu modulul de mysql. | ||
− | + | apt-get install freeradius mysql-server freeradius-mysql > | |
Cele mai importante rfc-uri care descriu protocolul RADIUS sunt | Cele mai importante rfc-uri care descriu protocolul RADIUS sunt | ||
<div style="margin-left: 20pt">http://www.ietf.org/rfc/rfc2865.txt - Descrierea protocolului RADIUS - Remote Authentication Dial In User Service (RADIUS)<br />http://www.ietf.org/rfc/rfc2866.txt - RADIUS Accounting</div> | <div style="margin-left: 20pt">http://www.ietf.org/rfc/rfc2865.txt - Descrierea protocolului RADIUS - Remote Authentication Dial In User Service (RADIUS)<br />http://www.ietf.org/rfc/rfc2866.txt - RADIUS Accounting</div> | ||
Linia 220: | Linia 247: | ||
# [http://www.microsoft.com/windowsxp/using/networking/learnmore/ppoe.mspx Clientul standard din Windows XP]. Pentru versiunile anterioare se poate folosi versiunea gratuita de raspppoe. | # [http://www.microsoft.com/windowsxp/using/networking/learnmore/ppoe.mspx Clientul standard din Windows XP]. Pentru versiunile anterioare se poate folosi versiunea gratuita de raspppoe. | ||
− | # | + | # [http://www.raspppoe.com/ Raspppoe] |
− | # | + | # [http://www.finepointnetworks.com/products/winpoet/ WinPoET] de la FinePoint Networks |
Si pentru Raspppoe, si pentru WinPoET exista SDK-uri contra cost, cu care se poate customiza si branda clientul PPPoE. | Si pentru Raspppoe, si pentru WinPoET exista SDK-uri contra cost, cu care se poate customiza si branda clientul PPPoE. | ||
Linia 229: | Linia 256: | ||
=== Ce este PPTP? === | === Ce este PPTP? === | ||
− | PPTP este acronimul | + | PPTP este acronimul de la "Point to Point Tuneling Protocol". A fost dezvoltat de un consortiu de companii, printre care si Microsoft si este folosit pentru a stabilit tunele VPN peste Internet. Acesta permite utilizatorilor sa-si acceseze de la distanta, in siguranta, reteaua firmei, de oriunde de pe Internet. |
PPTP foloseste modelul client-server pentru a stabili conexiunile VPN. Sistemele de operare Windows vin cu un client PPTP incepand de la versiunea Windows 98, ceea ce pune solutia PPTP un pic in fata fata de PPPoE, care are suport nativ doar in Windows XP. | PPTP foloseste modelul client-server pentru a stabili conexiunile VPN. Sistemele de operare Windows vin cu un client PPTP incepand de la versiunea Windows 98, ceea ce pune solutia PPTP un pic in fata fata de PPPoE, care are suport nativ doar in Windows XP. | ||
Linia 282: | Linia 309: | ||
Constantin Gavrilescu - [mailto:costin@gmx.net costin@gmx.net] | Constantin Gavrilescu - [mailto:costin@gmx.net costin@gmx.net] | ||
+ | |||
+ | (restaurat de pe http://web.archive.org/web/20061018045738/http://linux.usr.ro/pppoe/ si wikizat) |
Versiunea curentă din 21 septembrie 2010 16:12
Cuprins
- 1 Ce este un VPN
- 2 Tipuri de VPN-uri
- 3 Cele 4 atribute cheie ale unui VPN
- 4 WISPs - Wireless Internet Service Providers
- 5 Solutii pentru securizarea hotspoturilor wireless si a retelelor ethernet "de cartier"
- 6 WIFI Security si VPN-urile
- 7 Point-to-Point Protocol over Ethernet (PPPoE)
- 8 Solutia PPPoE bazata pe Linux, Roaring Penguin PPPoE pppd, Freeradius mysql
- 9 Suportul in Windows al PPPoE
- 10 Alternativa: PPTP, Freeradius si Mysql
- 11 Limitarea bandei in conexiunile ppp
Ce este un VPN
Un VPN (Virtual Private Network) este o retea virtuala de comunicatii privata folosita de obicei intr-o companie, sau de catre diferite companii sau organizatii, pentru a comunica intr-o retea publica. Traficul VPN poate fi transmis pe infrastructura publica (ex: pe Intenet), folosind protocoale standard (si deseori nesigure), sau peste reteaua unui provider de servicii de telecomunicatii care furnizeaza servicii VPN bine definite de SLA (Service Level Agreement) intre consumatorul VPN si furnizorul de servicii VPN.
Tipuri de VPN-uri
VPN-urile securizate folosesc tuneluri criptate pentru a avea confidentialitatea necesara, autentificarea partilor si integritatea mesajelor. Atunci cand sunt corect alese, implementate si folosite, aceste tehnologii pot furniza comunicatii securizate peste retele nesigure.
Tehnologii pentru VPN-uri securizate pot fi folosite pentru imbunatatirea securitatii sau ca o "patura de securitate" peste infrastructuri de retea dedicate.
Printre protocoalele VPN securizate sunt urmatoarele:
- Ipsec (Ip security), o parte integranta din Ipv6 (cu o implementare linux la http://www.openswan.org/)
- SSL folosit pentru tunelarea intregii stive de retea, ca in OpenVPN, cu ajutorul driverelor TUN/TAP (TUN pentru simularea unei interfete Point-to-Point si TAP pentru simularea unei interfete Ethernet)
- PPTP (point-to-point tunneling protocol), dezvoltat in colaborare de mai multe companii, printre care si Microsoft - http://www.microsoft.com/ntserver/ProductInfo/faqs/PPTPfaq.asp
- PPPoE (point-to-point protocol over Ethernet) este un protocol folosit pentru incapsularea pacheteleor PPP in cadre Ethernet. Ofera functionalitati PPP standard cum ar fi autentificare, criptare si compresie.
- Tinc - o solutie vpn pentru UNIX care lucreaza in user-space, care poate sa transmita nu numai pachete Ipv4 sau Ipv6 prin tunelul securizat.
- CIPE - Crypto IP Encapsulation - solutie VPN pentru Unix care foloseste algoritmi Blowfish si IDEA cu chei de 128 de biti, foarte performant si pe sisteme cu procesor slab (486). Foloseste incapsulare UDP.
- Htun - o solutie pentru Linux care permite crearea unui tunel VPN bidirectional peste un proxy HTTP sau doar peste portul 80, dand posibilitatea de a trece peste firewall-uri restrictive. HTun creeaza o retea IP point-to-point peste HTTP encapsuland traficul IP in cereri HTTP valide. Serverul HTun trebuie sa se afle pe o gazda cu o conexiune nerestrictionata la internet, asculta pe un port de webserver (80 sau 443) si accepta conexiunile clientilor HTun. Clientul HTun este rulat din reteaua cu restrictii, comunicand cu serverul HTun peste proxy-ul HTTP.
- PPP over SSH - probabil cel mai simplu VPN de realizat. Cea mai mare problema a sa este se realizeaza peste un flux TCP, si atunci cand se incearca conexiuni TCP prin acel tunel pot aparea intarzieri, caderi. "Problema" se numeste TCP over TCP si este cunoscuta [1] ; aceasta problema a dat nastere la proiectul CIPE, care rezolva aceasta problema folosind incapsularea UDP.
Cele 4 atribute cheie ale unui VPN
Cea mai importanta parte a unei solutii VPN este securitatea. Faptul ca prin natura lor prin VPN-uri se transmit date private prin retele publice ridica dubii cu privire la securitatea acestor date si impactul pierderii datelor. O retea virtuala privata trebuie sa adreseze toate tipurile de amenintari la securitate furnizand servicii de securitate in zonele:
- Autentificare (controlul accesului)
- Prezentare (criptare - confidentialitate)
- Transport (integritatea datelor)
- Non-repudiere - acest serviciu ar oferi dovezi de nefalsificat precum ca o anumita actiune a avut loc. Non repudierea originii inseamna ca datele a fost trimise, si non repudierea primirii dovedeste ca datele au fost receptionate.
Cei mai multi provideri doresc satisfacerea primului punct, autentificarea.
WISPs - Wireless Internet Service Providers
Un provider wireless poate opera hotspoturi sau intregi infrastructuri wireless. Necesitatea securizarii buclei locale wireless (WLL - wireless local loop) este evidenta in acest caz, pentru a elimina furtul serviciului.
Solutii pentru securizarea hotspoturilor wireless si a retelelor ethernet "de cartier"
Pentru securizarea acestor linkuri exista cateva solutii generale, in ordinea complexitatii:
- Portaluri captive "catch and release", din care enumar doar doua, mai reprezentative:
- Nocat auth - unul dintre primele portaluri captive
- Chillispot - un portal mai avansat si configurabil, care suporta si autentificare RADIUS.
Principala problema a acestor scheme de autentificare este ca doar cer utilizatorilor sa treaca de o pagina de login (eventual criptata SSL), dupa care acelei perechi IP si MAC i se permita sa treaca prin gateway. Cu un simplu sniffer de pachete aceasta schema este exploatabila. Odata ce IP-ul si MAC-ul celorlalte calculatoare conectate sunt gasite, orice alt calculator isi poate falsifica MAC-ul si IP-ul cu cel al victimei autentificate, si poate sa treaca prin gateway. MAC-ul placii de retea (NIC - network interface card) poate fi schimbat in windows cel mai usor cu SMAC. Cu SMAC este foarte usoara schimbarea Mac-ului in Windows.
- Solutii VPN: datorita suportului pe Windows, in general, se pot alege una din solutiile VPN: PPTP, PPPoE sau IPsec.
- 802.11x - standardul port security pentru Ethernet. Bazat pe EAP (Extensible Authentification Protocol)
- 802.11i - implementand complet 802.11x si folosind criptare AES, acesta pare sa fie "viitorul"
WIFI Security si VPN-urile
Un alt domeniu inedit in care este folosita tehnologia VPN este securizarea retelelor wireless. Deoarece retelele wireless trimit mesajele folosind radio, sunt foarte susceptibile la ascultarea traficului. WEP a fost introdus pentru a furniza aceeasi securitate ca pe retelele traditionale cu fir (WEP = Wired Equivalent Privacy). Wep foloseste RC4 pentru confidentialitate si CRC-32 pentru integritate si foloseste in mod standard o cheie de 40 de biti, la care se concateneaza un vector de initializare (IV = Initialisation Vector) pentru a forma cheia RC4. Dar nu marimea cheii este marea limitare in WEP. Spargerea unei chei mai lungi necesita interceptarea mai multor pachete, dar sunt si atacuri active care pot stimula traficul necesar. Sunt vulnerabilitati in WEP, incluzand posibilitatea de coliziuni ale IV si pachete alterate, care nu sunt corectate de o cheie mai lunga.
Exista multe instrumente gata facute si pentru Linux si pentru Windows care pot obtine chei WEP in cateva ore:
Airsnort: http://airsnort.shmoo.com/
Kismac: http://kismac.binaervarianz.de/
Alte tooluri pentru WIFI wardriving: http://www.wardrive.net/wardriving/tools/
Point-to-Point Protocol over Ethernet (PPPoE)
PPPoE (point-to-point protocol over Ethernet) este un protocol folosit pentru incapsularea pacheteleor PPP in cadre Ethernet. Ofera functionalitati PPP standard cum ar fi autentificare, criptare si compresie. Cu toate ca a fost introdus de catre providerii DSL, este adoptat din ce in ce mai mult de providerii WISP care vor sa-si securizeze hotspoturile si de catre retelele metropolitane bazate pe ethernet.
|
|
|
|
|
|
|
|
|
| ||||
|
|
| ||||
|
| |||||
| ||||||
|
PPPoE si stiva TCP/IP
PPPoE este un protocol de tunelare care creeaza un nivel IP peste o conexiune intre doua porturi Ethernet, dar cu caracteristicile unei legaturi PPP, deci este folosit pentru a “suna†la alt calculator aflat in aceeasi retea Ethernet si a face o conexiune punct la punct cu el, care este folosita pentru a transmite pachete IP.
Softul clasic PPP foloseste o linie seriala, iar cu ajutorul PPPoE se poate folosi PPP pe o legatura orientata pe pachet cum este Ethernetul, pentru a pune la dispozitie o conexiune clasica cu login si parola pentru conexiunea la Internet. In plus, adresa IP la capatul celalalt al legaturii este asignata doar atunci cand conexiunea PPPoE este deschisa, permitand refolosirea dinamica a IP-urilor (o cerinta puternica a RIPE/ARIN).
PPPoE a fost creat de UUNET, Redback Networks si RouterWare, si protocolul este specificat in RFC 2516: http://www.ietf.org/rfc/rfc2516.txt.
Fazele dial-ului PPPoE:
- PADI = PPPoE Active Discovery Initiation.
Clientul trebuie sa afle adresa Ethernet (MAC) a terminatorului PPP, si trimite un pachet pe adresa Ethernet de broadcast (ff:ff:ff:ff:ff:ff). Acest pachet contine adresa MAC a calculatorului care a trimis pachetul. Analiza cu tcpdump: #tcpdump -ni eth0 -s 0 -XX -v -v not arp and not tcp and not udp 14:33:30.870230 PPPoE PADI [Service-Name] [Host-Uniq 0xEF760000] Mesajul hexa:
ffff ffff ffff 000f eaa0 a8fd 8863 1109 [ broadcast ] [mac trimitator] [Version 1,Type 1,Code 09(PADI)] 0000 000c 0101 0000 0103 0004 ef76 0000 [host-uniq]
Codul trimis pentru PPPoE-Discovery poate fi:
0x00 - session data (in timpul sesiunii este mereu 0 codul) 0x07 - PADO (PPPoE Active Discovery Offer) 0x09 - PADI (PPPoE Active Discovery Initiation) 0x19 - PADR (PPPoE Active Discovery Request) 0x65 - PADS (PPPoE Active Discovery Session-confirmation) 0xa7 - PADT (PPPoE Active Discovery Termination)
Pachetul PADI poate fi primit de mai multe PoP-uri, ele raspunzand in functie de service-name si a access-concentrator name, daca se furnizeaza. Din acest punct de vedere este asemanator cu protocolul DHCP: este simplu sa se creeze servere rogue care sa fure parolele. Pentru a se elimina acest tip de atac trebuie activate autentificarea CHAP, care nu transmite parolele catre server, ci doar un hash bazat pe parola si un challenge aleator trimis de server. In felul acesta se evita si aflarea parolelor prin ascultarea liniei (sniffing) si se rezolva si problema serverelor rogue.
- PADO = PPPoE Active Discovery Offer
Odata ce clientul a trimis pachetul PADI, PoP-ul raspunde cu un pachet PADO, folosind adresa MAC primita in pachetul PADI. Pachetul PADO contine adresa MAC a PoP-ului, numele concentratorului, si numele serviciului. Daca raspund mai multe PoP-uri cu pachete PADO, clientul selecteaza PoP-ul cu ajutorul numelui sau serviciului. Pachetul capturat cu tcpdump arata astfel:
14:46:24.029590 PPPoE PADO [AC-Name "meseriasii"] [Service-Name "meseriasii"] [AC-Cookie 0xF0345DC1094CCBE6A019DA8A4622E76232530000] [Host-Uniq 0xC6040000] 0x0000: 000f eaa0 a8fd 0008 c709 6b56 8863 1107 ..........kV.c.. [ MAC client ] [ mac PoP ] [0x07=PADO] 0x0010: 0000 003c 0102 000a 6d65 7365 7269 6173 ...<....meserias 0x0020: 6969 0101 000a 6d65 7365 7269 6173 6969 ii....meseriasii 0x0030: 0104 0014 f034 5dc1 094c cbe6 a019 da8a .....4]..L...... 0x0040: 4622 e762 3253 0000 0103 0004 c604 0000 F".b2S..........
- PADR = PPPoE Active Discovery Request
Clientul a aflat deja adresa/adresele mac ale PoP-urilor. Computerul trimite pachetul PADR la PoP-ul la care vrea sa se conecteze.
- PADS = PPPoE Active Discovery Session-confirmation
Pachetul PADS este raspunsul trimis de PoP la pachetul PADR trimis de client, prin care ii trimite si un identificator de sesiune (SessionID). Conexiunea cu PoP-ul este stabilita.
- PADT = PPPoE Active Discovery Termination
Acest pachet inchide conexiunea PPPoE. Poate fi trimis ori de client, ori de server.
Solutia PPPoE bazata pe Linux, Roaring Penguin PPPoE pppd, Freeradius mysql
- === Hardware ===
Linux este un sistem scalabil si performant. Dar impachetarea PPPoE necesita putere procesor iar pe masura ce se deschid conexiuni simultan, daemonul pppd va consuma inevitabil memorie. Din experienta practica si benchmarkuri sintetice am observat ca exista o relatie liniara intre numarul de clienti conectati simultan pe de o parte, si pe de alta parte memoria si procesorul ocupate. Consensul pare sa fie ca fiecare client conectat va consuma aproximativ 2Mhz pe un Intel Pentium-III si 2Mbytes de memorie. Pe un sistem Pentium-II la 266 Mhz, se atinge maximul de incarcare cu 128 de clienti. Pentru testul de acum am folosit un Compaq Proliant Pentium II dual 400MHz, cu 512Mbytes RAM. Sistemele multiprocesor sunt mai utile pentru furnizarea acestui serviciu din cauza latentelor de sistem mai mici.
- === Software necesar; instalare ===
Orice distributie Linux poate fi folosita pentru a construi un server PPPoE. Este recomandat sa se foloseasca un kernel din generatia 2.6, cu o revizie cat mai recenta (peste 2.8.1). Distributiile mai vechi nu contin pachetul PPP care suporta autentificare si accounting prin RADIUS. Pentru testul nostru am folosit un sistem bazat pe debian unstable, kernel 2.6.11-1-686-smp. Acesta are suportul PPPoE compilat in kernel, deci nu trebuie recompilat kernelul, dar trebuie recompilat pachetul rp-pppoe pentru a putea folosi suportul in kernel.
- PPPd - ppp - Orice versiune mai noua de 2.4 are suport Radius. Pe site versiunea oficiala este 2.4.3, dar in debian unstable este impachetata o versiune beta, mai noua, dar complet functionala, versiunea 2.4.4b1-1. Se instaleaza folosind comanda apt-get install ppp
- RP-PPPoE (Implementare linux a pppoe de catre Roaring Penguin)
Autorii sustin in documentatie ca serverul PPPoE din pachetul rp-pppoe este doar pentru testari si nu este gata pentru productie “Note that pppoe-server is meant mainly for testing PPPoE clients. It is not a high-performance server meant for production use.â€, dar el este foarte solid si performant. Nu va asteptati la suport tehnic pentru aplicatia pppoe-server, pentru ca exista un server comercial bazat pe RP-PPPoE, ServPoET BMS, care incepe de la preturi de $10.000, server care se poate crea si cu produse open-source si care poate fi mai customizabil decat solutia pre-packaged ServPoEt.
Pe debian se instaleaza folosind comanda “apt-get install pppoeâ€
Pachetul trebuie recompilat pentru a activa suportul de kernel-mode in PPPoE. Acest lucru aduce un plus de performanta de 20-30 de ori. Pentru aceasta, se aduce sursa cea mai noua de PPPoE, sau se ia pachetul deb-src si se recompileaza. Odata dezarhivata arhiva, se intra in directorul “src†si se executa comanda “./configure –enable-plugin=/usr/include/pppd/â€. La sfarsit trebuie sa afiseze:
On this platform, the following targets will be built:
pppoe pppoe-server pppoe-sniff pppoe-relay rp-pppoe.so
Type 'make' to compile the software.
Apoi cu "dpkg-buildpackage" (pe Debian) sau cu clasicul "make; make install" slackware-ist, se instaleaza serverul PPPoE.
Biblioteca de sistem care permite mai multor aplicatii autentificarea la servere Radius. Pe debian se instaleaza folosind comanda "apt-get install radiusclient1"
- Freeradius - http://www.freeradius.org/ - este succesorul serverului open source Cistron Radius. Exista multe servere Radius open source, si debian mai include pachete si pentru xtradius si yardradius. Freeradius este rapid, flexibil, configurabil si suporta multe protocoale de autentificare. Il instalam impreuna cu modulul de mysql.
apt-get install freeradius mysql-server freeradius-mysql > Cele mai importante rfc-uri care descriu protocolul RADIUS sunt
http://www.ietf.org/rfc/rfc2866.txt - RADIUS Accounting
- Dialupadmin - http://www.freeradius.org/dialupadmin.html
Interfata web pentru administrarea conturilor Radius. Are suport SQL sau LDAP. O sa folosim modulul SQL. Depedintele sunt: apache (este nevoie de un server web), mysql, php, php-mysql. “apt-get install freeradius-dialupadmin apache2 php-mysqlâ€
- === Configurarea pachetelor: pppd, pppoe-server, radiusclient, freeradius ===
- Configurare pppd
- Pentru activarea modulul radius se aduga urmatoarele linii in “/etc/ppp/optionsâ€:
- Configurare pppd
plugin radius.so
plugin radattr.so
- Restul fisierului /etc/ppp/options:
ms-dns 192.162.16.21
asyncmap 0
auth
crtscts
lock
modem
mru 1492
mtu 1492
proxyarp
lcp-echo-interval 60
lcp-echo-failure 5
- In fisierul “/etc/ppp/chap-secrets†trebuie sa fie o linie ca urmatoarea:
* * "" *
- Configurare pppoe-server
Fisierul “/etc/ppp/pppoe-server/options†trebuie sa arate asa:
require-chap
auth
lcp-echo-interval 60
lcp-echo-failure 5
#aceasta optiune se activeaza pentru debugging
#debug
pppoe-server il puteti porni din linia de comanda cu parametrii urmatori:
pppoe-server -k -T 60 -I eth0 -L 192.168.0.1 -N 80 -C retea -S retea -R 192.168.0.100
Aceasta comanda o puteti adauga in rc.local (pe sisteme bsd-like), pe debian trebuind sa va faceti un script in init.d dupa sablonul din skeleton. Solutia mea a fost sa-l pun in [etc_init_d_networking fisierul networking din init.d], dar sunteti liberi sa faceti dupa cum vi se pare mai elegant.
Parametrul -k apare numai daca ati compilat pppoe-server cu suport de kernel-mode.
- Configurare radiusclient
Trebuie setat serverul si “secretul†necesar conectarii la freeradius. Serverul este localhost. Secretul trebuie sa fie aceelasi ca in si cel setat in freeradius, in fisierul /etc/freeradius/clients.conf. echo "localhost parolaradius" >> /etc/radiusclient/servers
- Configurare Freeradius
- Se creeaza baza de date mysql:
- Configurare Freeradius
mysqladmin -u root -p create radius
mysql -u root -p
GRANT ALL PRIVILEGES ON radius.* to 'dialup_admin@localhost' IDENTIFIED BY 'parola_db_radius';
FLUSH PRIVILEGES;
QUIT;
mysql -u radius -p < usr/share/doc/freeradius/examples/db_mysql.sql
- Configurarea accesului la serverul freeradius:
In fisierul /etc/freeradius/clients.conf, se editeaza atributul “secret = parolaradiusâ€. Este aceeasi parola care se introduce in fisierul de configurare al radiusclient.
- Activarea verificarii sesiunilor simultane (Simultaneuous Use checking)
In fisierul “/etc/freeradius/radiusd.conf†in blocul “session†se comenteaza linia “radutmp†si se decomenteaza linia “sqlâ€. Modulul de sesiune sql este mult mai rapid decat cel radutmp.
Simultaneus use checking:
# Session database, used for checking Simultaneous-Use.
# Either the radutmp
# or rlm_sql module can handle this.
# The rlm_sql module is *much* faster
session {
#radutmp
#
# See "Simultaneous Use Checking Querie" in sql.conf
sql
}
In fisierul “/etc/freeradius/sql.conf†se debifeaza linia "simul_count_query", ca mai jos:
- Uncomment simul_count_query to enable
# simultaneous use checking
simul_count_query = " SELECT COUNT(*) FROM ${acct_table1} WHERE UserName='%{SQL-User-Name}' AND AcctStopTime = 0"
- /etc/freeradius/naslist
localhost local portslave
- Activarea SQL in radiusd.conf:
chap
mschap
eap
sql
#files (dezactivat)
accounting {
sql
#radutmp - dezactivat
session {
#radutmp
post-auth {
In plus, trebuie setat userul si parola MySQL in sql.conf, conform celei setate la punctul a).
- Configurare freeradius-dialupadmin
- Crearea bazei de date dialupadmin
- Configurare freeradius-dialupadmin
In directorul /usr/share/freeradius-dialupadmin/sql/ trebuie editate fisierele userinfo.sql si badusers.sql, pentru ca au sintaxa SQL nesuportata de versiunile mai noi de MySQL, care a devenit mai “ascultator†de standarde in ultimele versiuni. Trebuie stersa valoarea “DEFAULT '0'†din aceste fisiere, pentru ca intra conflict cu “auto_incrementâ€. mysql -u radius -p < /usr/share/freeradius-dialupadmin/*.sql
- Pentru a fi compatibil au auth-chap din pppd, trebuie setat ca dialupadmin sa scrie in clar parolele in baza de date, asa ca in fisierul /usr/share/freeradius-dialupadmin/conf/admin.conf, se pune atributul “general_encryption_method: clearâ€.
- Naslist.conf – nu avem Network Access Servers, pentru ca daca am avea Cisco, nu am mai citi acest tutorial, deci in fisierul “/usr/share/freeradius-dialupadmin/conf/naslist.conf†punem:
nas1_name: locahost
nas1_model: freeradius portslave
nas1_ip: 127.0.0.1
nas1_finger: database
- Simultaneous-use pentru dialupadmin:
In fisierul /usr/share/freeradius-dialupadmin/conf/user_edit.attrs se decomenteaza linia “Simultaneous-Useâ€. In acest fel o sa apara la crearea grupurilor si a utilizatorilor optiunea "Simultaneous-Use"
- Setata userul si parola bazei de date in admin.conf conform celei create de la punctul 3.4.a)
- Creat virtual-hostul in apache2 (/etc/apache2/conf/sites-enabled/) && invoke-rc.d apache2 reload
- Testarea configuratiei [ http://localhost/dialupadmin/ ]. Daca totul a decurs ok, trebuie sa va intalniti cu urmatoarea pagina la crearea utilizatorilor:
- Adaugarea de utilizatori:
Imaginea 2: Dialupadmin - Adauga utilizator
- Vizualizarea utilizatorilor online:
-
Freeradius Dialupadmin - online users
Imaginea 3: Dialupadmin - Online Users
- Vizualizarea statisticilor
Freeradius Dialupadmin : access statistics
Imaginea 4: Dialupadmin - Access statistics
- Analiza accesului unui anumit utilizator
Imaginea 5: Dialupadmin - User Analysis
Suportul in Windows al PPPoE
Este o cerinta de baza a unui serviciu de autentificare a utilizatorilor sa aiba suport in sistemul lor de operare, si cu atat mai bine cu daca este daca suportul este built-in. In cazul PPPoE, Windows XP il suporta nativ si are chiar si un wizard foarte bine pus la punct pentru conectarea pe PPPoE. Pentru celelalte variante de Windows, exista mai multe solutii:
- Clientul standard din Windows XP. Pentru versiunile anterioare se poate folosi versiunea gratuita de raspppoe.
- Raspppoe
- WinPoET de la FinePoint Networks
Si pentru Raspppoe, si pentru WinPoET exista SDK-uri contra cost, cu care se poate customiza si branda clientul PPPoE.
Alternativa: PPTP, Freeradius si Mysql
Ce este PPTP?
PPTP este acronimul de la "Point to Point Tuneling Protocol". A fost dezvoltat de un consortiu de companii, printre care si Microsoft si este folosit pentru a stabilit tunele VPN peste Internet. Acesta permite utilizatorilor sa-si acceseze de la distanta, in siguranta, reteaua firmei, de oriunde de pe Internet.
PPTP foloseste modelul client-server pentru a stabili conexiunile VPN. Sistemele de operare Windows vin cu un client PPTP incepand de la versiunea Windows 98, ceea ce pune solutia PPTP un pic in fata fata de PPPoE, care are suport nativ doar in Windows XP.
PPTP poate fi folosit pentru a tunela protocoalele IP, IPX si NetBEUI. Tunelul este o versiune modificata a GRE, iar mai multe sesiuni pot fi multiplexate intr-un singur tunel. In paralel se opereaza si o conexiune TCP, pentru stabilirea, controlul, si oprirea sesiunilor si a tunelului.
Bruce Shneier a scris un articol care demoleaza arhitectura de securitate a implementarii PPTP-ului, si poate fi gasit la http://www.schneier.com/pptp-faq.html. Cu toate acestea, acest protocol este folosit in continuare din cauza suportului in sistemele Windows client si a relativei usurinte a setarii serverului.
PPTP pe Linux
Exista o solutie foarte matura pentru PPTP pentru Linux, care ruleaza impreuna cu pppd in userspace http://www.poptop.org/ , si se integreaza foarte usor cu solutia FREERADIUS propusa mai sus, in mod analog cu PPPoE.
Nu exista optiunea de a rula in kernel-mode si de aceea, incarcarea pe sistemul de test a fost de 30% din procesor pentru o singura conexiune, la trafic de 15Mbps, chiar cu criptarea dezactivata pe cand pppoe in kernel-mode a reusit sa “duca†in masina de test 20 conexiuni simultane la incarcare a procesorului de 1-2%.
Limitarea bandei in conexiunile ppp
O intrebare des intalnita este: Cum limitez banda conexiunilor ppp in linux? Problema vine de la faptul ca atunci cand utilizatorul se conecteza, se ridica o interfata ppp de genul:
$ ip address show
3708: ppp12: <POINTOPOINT,MULTICAST,NOARP,UP> mtu 1480 qdisc htb qlen 3
   link/ppp    inet 192.168.0.1 peer 192.168.0.115 scope global ppp12
La deconectare, interfata ppp se sterge din sistem. Utilitarul tc, spre deosebire de iptables, nu poate "opera" asupra unor deviceuri inexistente, si sa "astepte" ca acele device-uri sa apara in sistem. Solutiile acceptate pana acum sunt:
- IMQ - Intermediate Queueing Device - este o solutie destul de flexibila, pentru ca permite sharing (imprumut de banda) intre utilizatori. Traficul se directioneaza in felul urmator de la interfata ppp* la interfata imq, unde se poate face egress shaping:
modprobe ipt_IMQ
modprobe imq
/sbin/ip link set imq1 up
/usr/sbin/iptables -t mangle -A POSTROUTING -o ppp0 -j IMQ --todev 1
/usr/sbin/iptables -t mangle -A POSTROUTING -o ppp1 -j IMQ --todev 1
Problema este ca pentru a avea suport imq trebuie recompilat kernelul si iptables, ceea ce in unele medii, ori nu se poate, ori nu merita efortul.
- Optiunea "no-hassle" este crearea de discipline separate pentru fiecare interfata ppp. Folosim scripturile /etc/ppp/ip-up si /etc/ppp/ip-down. Aceste scripturi sunt apelate de pppd la stabilirea conexiunii si la oprirea ei. Variabilele de care avem nevoie sunt:
$PPP_IFACE = Numele interfetei - exemplu: ppp12
$PPP_LOCAL = Adresa locala (a concentratorului pppoe) - exemplu: 192.168.0.1
$PPP_REMOTE = Adresa peer-ului (a utilizatorului) - exemplu: 192.168.0.115
Configuratia cea mai simpla pentru exemplul nostru este:
In fisierul ip-up se introduc urmatoarele linii, la sfarsit:
TC="/sbin/tc"
IT="/sbin/iptables"
INET_IP="1.2.3.4" #(ip-ul routabil, spre internet)
INET_IFACE="eth0"
DOWNLOAD_EXTERN=128
# root qdisc htb
$TC qdisc add dev $PPP_IFACE root handle 1: htb
echo "Download extern: $DOWNLOAD_EXTERN"
$TC class add dev $PPP_IFACE parent 1: classid 1:2 htb rate ${DOWNLOAD_EXTERN}kbit
# daca am marcat cu 1 in iptables traficul "extern"
#$TC filter add dev $PPP_IFACE protocol ip parent 1: prio 4 handle 1 fw flowid 1:2
echo "Creez regulile iptables pentru $PPP_REMOTE"
$IT -t nat -A POSTROUTING -o $INET_IFACE -s $PPP_REMOTE -j SNAT --to-source $INET_IP
$IT -A FORWARD -i $PPP_IFACE -s $PPP_REMOTE -j ACCEPT
$IT -A FORWARD -o $PPP_IFACE -d $PPP_REMOTE -j ACCEPT
In mod similar, trebuie sa stergem regulile iptables in ip-down. Clasele htb nu trebuie sterse, pentru ca dispar automat odata cu interfata.
TC="/sbin/tc"
IT="/sbin/iptables"
INET_IP="1.2.3.4" #(ip-ul routabil, spre internet)
INET_IFACE="eth0"
echo "Sterg regulile iptables pentru $PPP_REMOTE"
$IT -t nat -D POSTROUTING -o $INET_IFACE -s $PPP_REMOTE -j SNAT --to-source $INET_IP
$IT -D FORWARD -i $PPP_IFACE -s $PPP_REMOTE -j ACCEPT
$IT -D FORWARD -o $PPP_IFACE -d $PPP_REMOTE -j ACCEPT
Pentru debugging-ul regulilor din iptables creati fisierul ppp-ipupdown.log, unde va fi redirectat standard output-ul si stderr al scripturilor (comenzile cu echo si erorile).
- touch /var/log/ppp-ipupdown.log
Referinte:
- Howto PPPoE Server, de Michael J. Erskin, un howto foarte recent, orientat mai mult pe Opensuse 10, dar cu informatii foarte utile.
- Documentatia Rlm_sql pentru Freeradius - Daca va intrebati ce inseamna =,:=,<=,=~ si alte semne de-ale lui Dumnezeu, aveti aici lista operatorilor si semnificatia lor. Atentie: la Simultaneous-Use trebuie sa folositi semnul ":=".
- Un tutorial Freeradius si Mysql, denumit si "SB's very rough notes to FreeRadius and MySQL".
- Tutorial PPTP MPPE RADIUS MySQL [poptop.sourceforge.net] - de interes pentru noi ar fi ca Ubuntu 5.10 contine suport MPPE in kernel, dar debian inca nu. Deci pe debian pregatiti-va sa recompilati kernelul pentru suport mppe.
- Documentatia online Dialupadmin - pare outdated, dar este foarte utila, daca nu vreti sa cititi sursele php.
- Freeradius faq - in caz ca aveti probleme cu freeradius, este posibil ca raspunsul sa se afle aici. Cel putin pe mine m-a ajutat la rezolvarea problemei cu Simultaneous-Use.
- Radman - O aplicatie pentru administrarea utilizatorilor pentru Freeradius, suspect de asemanatoare cu freeradius-dialupadmin. $59 licenta.
- Mikrotik.com - Solutie facuta de oameni mult mai destepti ca mine si ca voi, daca vreti totul de-a gata (mai putin serverul radius), la preturi acceptabile (fata de ServPOeET BMS, fata de care totusi Mikrotik sunt in cu totul alt segment de piata).
- PPTP-mystatus - Daca nu reusiti sa integrati poptop cu radius, si ramaneti la editarea fisierului chap-secrets, o sa va ajute acest script care va arata userii online. Realizat de Lucian Gutu.
Contact & feedback
Constantin Gavrilescu - costin@gmx.net
(restaurat de pe http://web.archive.org/web/20061018045738/http://linux.usr.ro/pppoe/ si wikizat)