WireGuard VPN server: configurazione completa su Linux/Docker

· · 👁 2 · ❤️ 0 · 💬 0
```html

WireGuard VPN Server: Configurazione Completa su Linux/Docker

Se stai cercando un modo moderno e efficiente per proteggere la tua infrastruttura self-hosted, WireGuard è la soluzione che stavi aspettando. A differenza di OpenVPN, è leggero, veloce e incredibilmente semplice da configurare. In questa guida ti mostrerò come installarlo in pochi minuti.

Perché WireGuard è la Scelta Giusta

WireGuard rappresenta una vera rivoluzione nel mondo delle VPN. Con soli 4.000 linee di codice (contro le 400.000 di OpenVPN), offre prestazioni superiori mantenendo un'superficie di attacco minima. Il suo design minimalistico non significa compromessi sulla sicurezza: utilizza crittografia moderna e protocolli proven.

Per chi fa self-hosting, è perfetto. Puoi hostarlo su qualsiasi server Linux, scalarlo facilmente con Docker e gestire i client con poche righe di configurazione. La velocità di throughput è impressionante, con latenza bassissima.

Installazione con Docker: Il Metodo Più Veloce

La strada più pratica è usare un'immagine Docker dedicata. Utilizza linuxserver/wireguard, il riferimento standard della comunità.

Crea un file docker-compose.yml:

version: '3.8'
services:
  wireguard:
    image: linuxserver/wireguard:latest
    container_name: wireguard
    cap_add:
      - NET_ADMIN
      - SYS_MODULE
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Rome
      - SERVERURL=your-domain.com
      - SERVERPORT=51820
      - PEERS=3
      - ALLOWEDIPS=0.0.0.0/0
    ports:
      - "51820:51820/udp"
    volumes:
      - ./wireguard:/config
    restart: unless-stopped
    networks:
      - vpn

Avvia con docker-compose up -d. Dopo pochi secondi, i file di configurazione saranno generati in ./wireguard/config. Ogni client avrà il suo file peer.conf.

Configurazione Manuale e Gestione dei Client

Se preferisci il controllo totale, installa WireGuard direttamente su Linux:

sudo apt update && sudo apt install wireguard wireguard-tools

Genera le chiavi server e crea il file /etc/wireguard/wg0.conf:

[Interface]
Address = 10.0.0.1/24
ListenPort = 51820
PrivateKey = YOUR_PRIVATE_KEY

[Peer]
PublicKey = CLIENT_PUBLIC_KEY
AllowedIPs = 10.0.0.2/32

Per ogni nuovo client, genera una coppia di chiavi con wg genkey | tee privatekey | wg pubkey > publickey, quindi aggiungi un nuovo blocco [Peer] con la chiave pubblica del client.

Attiva l'interfaccia con wg-quick up wg0 e abilitala al boot: systemctl enable wg-quick@wg0.

Per gestire i client dinamicamente, considera strumenti come wg-json-rpc o WireGuard Manager. Verifica lo stato con wg show: vedrai tutti i client connessi e i dati trasferiti.

Sicurezza e Best Practices

Proteggi il traffico con un firewall. Consenti il port UDP 51820 solo ai tuoi client, non a internet intero. Usa una porta non standard se possibile. Abilita il port-forwarding selettivo sui client per limitare cosa può traversare la VPN.

Revoca i peer che non usi più. Cambia le chiavi periodicamente. Se usi Docker, mantieni l'immagine aggiornata.

Conclusione e Prossimi Passi

WireGuard è la VPN moderna che ogni self-hoster dovrebbe conoscere. È veloce, semplice e affidabile. Che tu scelga Docker o l'installazione nativa, avrai un tunnel sicuro pronto in meno di 10 minuti.

Pronto a partire? Inizia con Docker, genera i tuoi peer e connetti il primo client. Se hai dubbi, la documentazione ufficiale è eccellente. Facci sapere nella comunità come va la tua configurazione!

```
← Torna al Blog

💬 Commenti (0)

Nessun commento ancora. Sii il primo!

Accedi per lasciare un commento.