Răspuns scurt
- Configurezi un VPN WireGuard pentru accesul administrativ generând o pereche de chei pentru server și una pentru fiecare persoană, declarată ca peer cu AllowedIPs pe o singură adresă /32.
- Firewall-ul deschide spre internet doar portul UDP al WireGuard, iar SSH și panourile de administrare acceptă conexiuni doar pe interfața wg0.
- Clienții folosesc PersistentKeepalive când sunt în spatele unui NAT și primesc în AllowedIPs doar rețelele interne, nu tot traficul.
- Când un coleg pleacă, ștergi peer-ul lui din configurație în aceeași zi; nu există parolă de schimbat, doar cheia de revocat.
- Ce rămâne pe internet
- un singur port UDP, de exemplu 51820
- Un peer = o persoană
- AllowedIPs = 10.8.0.x/32, fără chei partajate
- SSH după configurare
- acceptat doar pe interfața wg0
- Revocare
- ștergi blocul [Peer] și rulezi wg syncconf
De ce administrarea stă în spatele unui VPN
Fiecare serviciu expus pe internet e un serviciu care poate avea o vulnerabilitate mâine: un panou de administrare al bazei de date, o interfață Grafana, un Docker API. Chiar SSH cu chei rămâne expus la un bug în sshd. Cu WireGuard, singurul lucru vizibil de afară e un port UDP care nu răspunde deloc pachetelor fără o cheie validă. Toate serviciile administrative ascultă pe adresa privată din tunel.
Configurația care ține: chei per persoană și AllowedIPs strict
WireGuard nu are conturi și parole; identitatea e cheia publică. De aceea fiecare persoană primește propria pereche de chei, generată pe laptopul ei, și propria adresă din rețeaua tunelului. AllowedIPs pe server, pentru fiecare peer, e adresa aceea /32 și nimic altceva: așa un peer nu poate pretinde adresa altuia. Pe client, AllowedIPs listează doar rețelele interne, iar PersistentKeepalive = 25 ține tunelul deschis prin NAT. Configurația serverului stă în Git, ca revocarea să fie un commit.
- Cheia privată a serverului nu părăsește serverul; cea a fiecărui coleg nu părăsește laptopul lui
- Un peer separat pentru CI sau pentru serverul de monitorizare, cu adresa lui
- Consola din panoul furnizorului rămâne calea de rezervă dacă tunelul cade
Ce spune legislația din România
Controlul accesului la sistemele care prelucrează date personale e cerut de art. 32 GDPR, iar la un incident ANSPDCP întreabă cine putea ajunge la server și cum. Pentru entitățile de sub OUG 155/2024, transpunerea NIS2 aprobată prin Legea 124/2025, art. 13 cere explicit politici de control al accesului (lit. f) și autentificare multi-factor (lit. j), iar retragerea drepturilor la plecarea unui angajat face parte din gestionarea accesului. Accesul administrativ printr-un VPN nu e cerut ca atare de ordonanță, dar e felul obișnuit în care se demonstrează ambele: un VPN cu o cheie per persoană produce automat lista de cine are acces — fișierul de configurare al serverului.
WireGuard și OpenVPN pentru accesul administrativ| Criteriu | WireGuard | OpenVPN |
|---|
| Protocol și transport | UDP, criptografie fixă modernă (Noise, ChaCha20) | UDP sau TCP, TLS cu suite configurabile |
|---|
| Dimensiune și audit | Cod mic, în kernelul Linux din 5.6 | Cod mare, în spațiul utilizatorului |
|---|
| Identitate | Chei publice statice, un peer per persoană | Certificate X.509, PKI proprie |
|---|
| Revocare | Ștergi peer-ul din configurație | CRL sau reemitere de certificate |
|---|
| Vizibilitate de pe internet | Nu răspunde fără cheie validă | Port care răspunde la handshake |
|---|
| Când îl alegi | Acces administrativ, site-to-site simplu | Nevoie de TCP/443 prin firewall-uri restrictive, PKI existentă |
|---|
Comenzi și configurări
Generezi cheile (pe fiecare mașină, pentru ea însăși)sudo apt install -y wireguard
umask 077
wg genkey | tee server.key | wg pubkey > server.pub
/etc/wireguard/wg0.conf pe server, un [Peer] per persoană[Interface]
Address = 10.8.0.1/24
ListenPort = 51820
PrivateKey = <conținutul server.key>
[Peer]
# ana, laptop de lucru
PublicKey = <cheia publică a Anei>
AllowedIPs = 10.8.0.2/32
[Peer]
# server de monitorizare
PublicKey = <cheia publică a mașinii de monitorizare>
AllowedIPs = 10.8.0.10/32
Firewall: doar UDP 51820 spre internet, SSH doar prin tunel; pornire și revocaresudo ufw allow 51820/udp
sudo ufw allow in on wg0 to any port 22 proto tcp
sudo ufw delete allow 22/tcp # abia după ce ai testat tunelul dintr-o a doua sesiune
sudo systemctl enable --now wg-quick@wg0
# revocare: ștergi blocul [Peer] din wg0.conf, apoi
sudo wg syncconf wg0 <(sudo wg-quick strip wg0)
Exemple practice
Agenție web din Timișoara cu freelanceri
Cinci colaboratori aveau chei SSH pe servere de client și nimeni nu ținea lista. Agenția a pus WireGuard pe un VPS de acces, a mutat SSH-ul tuturor serverelor pe rețeaua tunelului și a dat fiecărui colaborator un peer. Plecarea unui freelancer înseamnă acum ștergerea unui bloc de patru linii.
Clinică din București cu panou de programări administrat intern
Interfața de administrare a bazei de date era pe internet, protejată de parolă. După ce un scaner a găsit-o, a fost legată de adresa din tunelul WireGuard, iar personalul o accesează prin VPN, fără ca portul să mai fie vizibil.
Greșeli frecvente
- Folosești o singură cheie WireGuard pentru toată echipa, deci nu poți revoca pe cineva fără să-i scoți pe toți.
- Pui AllowedIPs = 0.0.0.0/0 pe server pentru un peer și îi permiți să pretindă orice adresă din tunel.
- Muți SSH pe wg0 înainte să testezi tunelul și rămâi fără acces.
- Distribui configurația clientului, cu cheia privată, pe e-mail sau în chat.
Cum te ajută 4hosting
- Serviciul VPN WireGuard configurează serverul, cheile per persoană și mutarea SSH-ului și a panourilor pe rețeaua privată, în orele incluse: 1–8 lunar la VPS, 10 la dedicate și GPU, cerute din panoul de client, secțiunea „Servicii DevOps”; orele se consumă în luna calendaristică și nu se reportează.
- Serviciul mTLS & Zero Trust e pasul următor când ai mai multe servicii interne care trebuie să se autentifice reciproc, nu doar oameni care intră.
- Pe VPS și dedicate ai consolă din panoul de client, deci poți muta SSH pe wg0 fără riscul de a rămâne definitiv afară.
Întrebări conexe
Ce fac dacă tunelul cade și SSH ascultă doar pe wg0?
Intri prin consola din panoul furnizorului, care nu depinde de rețea, și repari configurația. De aceea testezi întâi cu SSH încă deschis pe internet, dintr-o a doua sesiune, și abia apoi închizi portul public. Păstrezi și o copie a configurației WireGuard în afara serverului.
WireGuard e sigur fără al doilea factor?
Cheia WireGuard de pe laptop plus cheia SSH sunt deja două lucruri pe care trebuie să le ai. Riscul rămas e laptopul furat deblocat; îl reduci cu criptarea discului și cu frază de acces pe cheia SSH. Pentru echipe mari, o soluție peste WireGuard adaugă identitate centralizată și 2FA.
Pot rula WireGuard pe același server pe care îl protejez?
Da, pentru un server sau două e cel mai simplu. Când ai mai multe mașini, pui WireGuard pe un VPS mic de acces, iar toate celelalte servere acceptă SSH doar din rețeaua acelui tunel. Așa ai un singur loc unde gestionezi peer-ii.