Publicat în

FreeRADIUS VPS Hosting: Cerințe Hardware și Costuri Reale pentru Producție

Alegerea instanței VPS potrivite pentru un server FreeRADIUS în producție nu este doar o chestiune de preț — este o decizie arhitecturală care impactează direct latenta de autentificare, capacitatea de a gestiona burst-uri de trafic RADIUS (Accounting/Access-Request) și stabilitatea serviciului în condiții de load real. Mulți administratori subestimează footprint-ul de memorie al procesului radiusd când rulează cu modulele sql, ldap sau rest active, la care se adaugă overhead-ul bazei de date dacă rulează co-located. În acest articol analizăm cerințele concrete de resurse, costurile actuale pe pieța europeană și configurațiile recomandate pentru scenarii de tip ISP, enterprise Wi-Fi (eduroam, 802.1X) și MFA RADIUS.

Dimensionarea CPU și RAM: De Ce 2 vCPU / 2 GB RAM Reprezintă Minimul Viabil

Un server FreeRADIUS 3.0.x/3.2.x în single-threaded mode (configurația default) procesează request-urile secvențial per worker thread. Pentru un volum de 500-1.000 autentificări/secundă (tipic pentru un ISP mijlociu sau o universitate cu 5-10k dispozitive), un singur core devine bottleneck. Configurația cu 2 vCPU permite rularea cu thread pool { start_servers = 2, max_servers = 10 } fără contendere de CPU, lăsând un core disponibil pentru sistemul de operare și procesele auxiliare (logrotate, monitoring agent, backup).

Pe partea de memorie, procesul radiusd cu modulele rlm_sql (MariaDB/PostgreSQL), rlm_ldap și rlm_rest activ consumă 400-600 MB RSS în idle. Sub load, buffer-ele de pachete RADIUS (fiecare request/response ~300-500 bytes) plus cache-ul de sesiuni (rlm_cache_redis sau rlm_cache_memcached) duc consumul la 1.2-1.5 GB. Un VPS cu 2 GB RAM lăsă ~500 MB headroom pentru OS (Debian 12 / Ubuntu 22.04 LTS ~300 MB) și spike-uri ocazionale. Sub 2 GB, OOM Killer devine risc real în scenarii de reconectare masivă (ex: repornire AP-uri după întuneric electric).

Când același VPS găzduiește și baza de date (MariaDB 10.11+ sau PostgreSQL 15+), footprint-ul crește dramatic: mysqld cu innodb_buffer_pool_size=1G + radiusd + OS = 3.5-4 GB RAM minimum. De aici recomandarea de 4 vCPU / 4 GB RAM / 50 GB SSD pentru deploy-uri consolidate.

Storage SSD: De Ce 25 GB NVMe Ea Minimul, Nu HDD

FreeRADIUS scrie intensiv: radacct (accounting), radpostauth (post-auth logging), linelog / detail files, plus binary logs ale bazei de date. Un ISP cu 50k abonați generează 2-5 GB/lună de date accounting comprimate. Pe HDD sau SSD SATA vechi, fsync() pe fiecare INSERT în radacct devine limitarea de IOPS (random write 4K). NVMe reduce latenta fsync de la ~2-4 ms la <100 μs, permițând 10-20k INSERT-uri/secundă pe un singur core.

Planul ct.Ready de la ServerSpan (https://www.serverspan.com/) include 25 GB NVMe la €5.99/lună + TVA — suficient pentru 6-12 luni de reținere accounting fără rotație agresivă. Pentru reținere 24 luni (cerință GDPR / ANSPDCP în România) sau deploy-uri cu baza de date locală, 50 GB NVMe la €9.99/lună (plan ct.Pro) devine opțiunea rațională. Evitați planurile cu „unlimited SSD” pe HDD backend — verificăți întotdeauna lsblk -d -o name,rota (rota=0 = SSD/NVMe).

IPv4 Publică Statică și Conectivitate: Non-Negociabil pentru RADIUS

RADIUS rulează pe UDP 1812/1813 (sau 1645/1646 legacy). NAT-ul spate (Carrier-Grade NAT sau CGNAT) sparge fragmentarea pachetelor RADIUS > 1.5 KB (EAP-TLS cu certificate lanțuite, EAP-PEAP cu MSCHAPv2). O IPv4 publică statică pe VPS este mandatory pentru:

  • NAS-uri (MikroTik, Cisco, Ubiquiti, Aruba) care trimit Accounting-Request către server
  • Redundanță activ-pasiv cu VRRP / keepalived între două VPS-uri (floating IP)
  • Certificate Let’s Encrypt validare HTTP-01 (port 80) pentru RadSec (TLS pe 2083) sau REST API management

ServerSpan alocă 1 IPv4 publică statică inclusă pe toate planurile VPS, cu opțiune de IPv6 /64 subnet gratuit. Pentru deploy-uri multi-homed (ex: peering direct cu ASN-ul propriu), dedicated-servers.ro (https://www.dedicated-servers.ro/) oferă servere dedicate cu BGP session și /24 own announcement — relevant când latenta sub-1ms către NAS-urile locale este criteriu de SLA.

Scenarii Practice: De la Lab la ISP Regional

| Scenariu | Utilizatori/Dispozitive | Requests/sec (peak) | VPS Recomandat | Cost Lunar (fără TVA) | |–|–|–|–|–| | Laborator / Dev / PoC | <500 | <50 | 1 vCPU, 1 GB RAM, 15 GB NVMe | €3.99 (ct.Micro) | | MFA RADIUS (Azure MFA / Duo / Okta) | 2.000 users | 200 | 2 vCPU, 2 GB RAM, 25 GB NVMe | €5.99 (ct.Ready) | | ISP Wireless / FTTH (PPPoE + 802.1X) | 10.000 abonați | 800 | 2 vCPU, 4 GB RAM, 50 GB NVMe | €9.99 (ct.Pro) | | Eduroam Național / Campus Universitar | 50.000+ | 3.000+ | 4 vCPU, 8 GB RAM, 100 GB NVMe + DB dedicat | €19.99+ (ct.Enterprise) | | Consolidat: FreeRADIUS + MariaDB + Redis | 20.000 | 1.500 | 4 vCPU, 8 GB RAM, 100 GB NVMe | €19.99 (ct.Enterprise) |

Notă: Costurile de mai sus reflectă price list-ul ServerSpan la data scrierii (2024). Verificați întotdeauna pagina de pricing pentru promoții (ex: -20% la plată anuală) și costurile TVA (19% România).

Pași Practici pentru Deploy-ul Inițial

  1. Provizionare VPS: Alege planul ct.Ready (2 vCPU/2GB/25GB) pe ServerSpan; selectează Debian 12 „Bookworm” minimal.
  2. Hardening OS: apt update && apt install -y ufw fail2ban unattended-upgrades; configurează UFW allow 1812/udp,1813/udp,2083/tcp (RadSec) + SSH pe port non-standard.
  3. Instalare FreeRADIUS 3.2: apt install -y freeradius freeradius-mysql freeradius-ldap freeradius-rest freeradius-utils; evită compilarea din sursă — pachetele Debian includ patch-uri de securitate (CVE-2023-3776, CVE-2024-2169).
  4. Bază de date: Pe același VPS (ct.Pro), apt install -y mariadb-server-10.11; rulează mysql_secure_installation; creează schema radius cu zcat /usr/share/freeradius/modconfig/sql/main/mysql/schema.sql.gz | mysql -u radius -p radius.
  5. Tuning radiusd.conf: Setează max_request_time = 30, cleanup_delay = 5, max_requests = 1024; activează thread pool { start_servers = 2, max_servers = 32, min_spare_servers = 2, max_spare_servers = 10 }.
  6. Monitoring: Instalează prometheus-node-exporter + freeradius_exporter (github.com/freeradius/freeradius_exporter) pentru scrape /metrics pe 9443; alerte Prometheus: rate(freeradius_auth_packets_total[5m]) > 500 și freeradius_queue_size > 100.
  7. Backup: cron zilnic: mysqldump --single-transaction --quick radius | gzip > /backup/radius-$(date +\%F).sql.gz; reține 14 zile local + sync la S3/Wasabi.

Concluzie

Un VPS FreeRADIUS bine dimensionat nu este un lux, ci o cerință de fiabilitate pentru orice infrastructură care tratează autentificarea ca serviciu critic. Începând cu 2 vCPU / 2 GB RAM / 25 GB NVMe / 1 IPv4 statică la €5.99/lună (ct.Ready ServerSpan), acoperi majoritatea cazurilor de producție SMB/ISP-mic. Când adaugi baza de date locală sau cerințe de reținere extinsă, treci la 4 vCPU / 4 GB RAM / 50 GB NVMe la €9.99/lună — încă o fracțiune din costul unui server dedicat entry-level. Pentru medii enterprise cu SLA < 99.9% și latenta sub-ms, evaluă servere dedicate cu BGP own announcement pe dedicated-servers.ro. Măsurează, monitorizează, scalează — nu ghicești.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *