Configurarea serverului WireGuard pe Linux (wg0, NAT, Peers)
12 min citire - 22 iunie 2026

Configurare practică a serverului WireGuard pentru Linux: chei, wg0.conf, NAT, gestionarea peer-urilor cu syncconf și comenzile de depanare pe care administratorii de sistem le folosesc efectiv.
Rulați un server WireGuard atunci când doriți acces privat la infrastructura găzduită, fără a expune porturile de administrare către internetul public. Acesta utilizează autentificarea cu cheie publică, rulează în interiorul kernel-ului Linux începând cu versiunea 5.6 și nu interferează cu activitatea sistemului odată ce este pornit. Acest articol prezintă când să utilizați un server WireGuard, cum să îl porniți wg0și cum să mențineți funcționarea zilnică a nodurilor.
Când se utilizează un server WireGuard
Cele mai multe configurații se încadrează în trei tipuri: acces la distanță, legături între servere și rutare între site-uri.
Pentru accesul la distanță, rulați serverul pe un VPS sau pe un server dedicat și direcționați traficul de administrare prin tunel. Configurați AllowedIPs pe fiecare nod de conectare la subrețeaua privată de administrare (ceva de genul 10.0.0.0/24) astfel încât doar traficul destinat sistemelor interne să utilizeze tunelul. Tot restul traficului rămâne pe conexiunea locală a utilizatorului. Dacă utilizatorii se conectează de acasă sau prin rețele mobile, adăugați PersistentKeepalive = 25 pe partea clientului pentru a împiedica întreruperea sesiunilor NAT.
Pentru legăturile de la server la server, mențineți AllowedIPs îngust. De obicei, o singură /32 sau o subrețea de backend mică. Astfel se evită atragerea traficului neasociat în tunel și se menține rutarea previzibilă.
Sit-la-sit este diferit. Gazda WireGuard acționează ca o poartă între subrețele, așa că redirecționarea IP trebuie activată, iar regulile NAT trebuie să trimită traficul de retur prin interfața corectă.
| Model | AllowedIPs de aplicare | Cea mai potrivită opțiune | Complexitatea configurării |
|---|---|---|---|
| Acces la distanță | Subrețele private, de ex. 10.0.0.0/24 | Acces pentru administratori și dezvoltatori | Scăzut |
| De la server la server | Adrese IP specifice sau subrețea backend | Legături punct-la-punct între gazde | Scăzut până la mediu |
| De la site la site | Întreaga rețea LAN la distanță, de exemplu /24 | Rutare de la gateway la gateway | De la mediu la ridicat |
| Acces la servicii private | Numai subrețea internă (tunel divizat) | Izolarea serviciilor backend | Mediu |
Configurarea serverului
Serverul deține cheia privată, ascultă pe UDP 51820 și închide tunelul. Aceeași configurare de bază funcționează pentru toate cele trei tipuri de configurare de mai sus.
Cheile și wg0.conf
Generați perechea de chei pentru server:
wg genkey | sudo tee /etc/wireguard/server_private.key | wg pubkey | sudo tee /etc/wireguard/server_public.keyPăstrați cheia privată în siguranță:
sudo chmod 600 /etc/wireguard/server_private.keyCheia privată rămâne pe server. Cheia publică este cea pe care o transmiteți partenerilor.
Creați /etc/wireguard/wg0.conf:
[Interface]
Address = 10.8.0.1/24
ListenPort = 51820
PrivateKey = <SERVER_PRIVATE_KEY>
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o <PUBLIC_IFACE> -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o <PUBLIC_IFACE> -j MASQUERADE
[Peer]
PublicKey = <CLIENT_PUBLIC_KEY>
AllowedIPs = 10.8.0.2/32Găsiți interfața de ieșire în care să o plasați <PUBLIC_IFACE> :
ip -o -4 route show to default | awk '{print $5}'Redirecționare, firewall și NAT
Deschideți portul de ascultare:
sudo ufw allow 51820/udpActivați redirecționarea IP adăugând această linie la /etc/sysctl.conf:
net.ipv4.ip_forward = 1Aplicați fără a reporni:
sudo sysctl -pThe PostUp și PostDown liniile din wg0.conf adaugă și elimină regula de mascare NAT atunci când interfața este activată sau dezactivată. Fără ele, traficul de retur din LAN nu ajunge niciodată înapoi la omolog.
Activarea tunelului
wg-quick gestionează interfața, rutarea și PostUp/PostDown hook-uri într-o singură comandă:
sudo wg-quick up wg0Pentru pornirea automată după repornire, activați unitatea systemd:
sudo systemctl enable --now wg-quick@wg0Verificați starea cu:
sudo wg showO linie recentă latest handshake linia confirmă că tunelul funcționează. Dacă pare învechită sau goală, verificați firewall-ul, cheile de pe ambele părți și AllowedIPs.
Adăugarea și eliminarea partenerilor
Fiecare partener are nevoie de propria pereche de chei. Generați-o pe client, apoi adăugați cheia publică a partenerului wg0.conf într-un nou [Peer] bloc cu o AllowedIPs intrare care îi atribuie adresa IP a tunelului.
Utilizați /32 pentru un singur dispozitiv:
AllowedIPs = 10.8.0.3/32Astfel se împiedică un nod să revendice adresele alocate altui nod. Pentru accesul cu tunel parțial, enumerați doar subrețelele private care trebuie să treacă prin tunel, de exemplu AllowedIPs = 10.8.0.0/24.
Aplicați modificările de configurare fără a întrerupe sesiunile active:
sudo wg syncconf wg0 <(wg-quick strip wg0)Eliminarea unui peer se face în același mod. Ștergeți [Peer] bloc din wg0.conf și rulați syncconf din nou.
Depanare
Dacă un utilizator se conectează, dar nu poate accesa nimic de cealaltă parte, cauza este, de obicei, una dintre următoarele patru:
- Redirecționarea IP este dezactivată
- Lipsește regula de mascare NAT
- Interfața de ieșire din regula NAT este greșită
AllowedIPsnu include destinația
Verificați redirecționarea:
cat /proc/sys/net/ipv4/ip_forwardAr trebui să returneze 1. Dacă returnează 0, modificarea sysctl nu s-a aplicat sau nu a fost salvată.
Verificați regula NAT și interfața de ieșire:
sudo iptables -t nat -L POSTROUTING
ip route get 1.1.1.1A doua comandă afișează numele real al interfeței de ieșire, cum ar fi ens3, enp1s0, sau eth0. Aceasta trebuie să corespundă cu interfața din regula MASQUERADE.
Dacă lipsește chiar handshake-ul, verificați dacă UDP 51820 este deschis la nivelul firewall-ului și la orice furnizor din amonte și că ambele părți dispun de cheia publică corespunzătoare pentru cealaltă parte.
Pentru peerii aflați în spatele unui NAT rezidențial sau mobil care întrerupe sesiunile UDP inactive, setați PersistentKeepalive = 25 pe client.
Rotirea cheilor și cheile pre-partajate
Pentru tunelurile care rămân active luni de zile, rotiți cheile o dată pe an sau cam așa. Generați o nouă pereche de chei, actualizați ambele capete și aplicați cu wg syncconf. Nu reutilizați o cheie privată între doi parteneri. Acest lucru creează conflicte de rutare și întrerupe livrarea între aceștia.
Pentru un strat suplimentar deasupra autentificării cu cheie publică, adăugați o cheie pre-partajată pentru fiecare nod:
wg genpskAdăugați rezultatul ca PresharedKey = <PSK> în [Peer] bloc de ambele părți. WireGuard integrează PSK-ul în procesul de handshake, astfel încât un atacator care compromite cumva una dintre cheile asimetrice tot nu va putea decripta traficul fără aceasta.
Comenzi utile în utilizarea de zi cu zi:
| Comandă | Scop |
|---|---|
wg show | Parteneri, proceduri de autentificare, contoare de trafic |
wg show wg0 transfer | Contori de octeți pentru wg0 |
wg show all dump | Ieșire analizabilă de mașină pentru scripturi de monitorizare |
wg syncconf wg0 <(wg-quick strip wg0) | Aplicarea modificărilor de configurare fără întreruperea sesiunilor |
wg genpsk | Generarea unei chei pre-partajate |
Dacă aveți nevoie de un host stabil și accesibil publicului pentru a termina tunelurile WireGuard și a redirecționa traficul privat către infrastructura dvs., aruncați o privire la planurile VPS nelimitate ale FDC.

Oboseala ochilor cauzată de ecranele digitale: Cum să vă protejați vederea într-o lume dominată de ecrane
Te uiți la ecran toată ziua? Află cum poți reduce oboseala oculară cauzată de ecranele digitale cu ajutorul unor tehnici și instrumente dovedite. Acest ghid este esențial pentru cei care lucrează de la distanță, pentru dezvoltatori și pentru oricine activează în domeniul tehnologiei.
4 min citire - 21 mai 2025
De ce este important să aveți un VPS performant și nelimitat
8 min citire - 9 mai 2025

Aveți întrebări sau aveți nevoie de o soluție personalizată?
Opțiuni flexibile
Acoperire globală
Implementare instantanee
Opțiuni flexibile
Acoperire globală
Implementare instantanee