Menu Chiudi

Gestire PiVPN con i comandi dal terminale (con esempi)

Comandi per Gestire PiVPN

Come gestire PiVPN? Questo è quello che alcuni utenti ci hanno chiesto, dopo aver letto il nostro precedente post su come installare PiVPN ed aver completato la configurazione iniziale.

Nonostante la gestione di PiVPN sia qualcosa di veramente alla portata di tutti, è comprensibile che vi sia una guida semplice, alla quale fare di riferimento per le normali operazioni quotidiane e di diagnosi di eventuali problemi.

In questo breve articolo esploreremo alcuni dei comandi a disposizione dell’amministratore di sistema per gestire PiVPN in tutti gli aspetti essenziali di questo utile e potente strumento per le VPN (Virtual Privare Network).

Qui di seguito, vedremo come gestire PiVPN con pochi semplici comandi dalla console per creare, rimuovere, abilitare e disabilitare gli utenti; accedere alle statistiche e molto altro. Il tutto corredato da utili esempi da utilizzare come pratica guida di riferimento ogni volta che ti sarà necessario amministrare PiVPN.

Cosa serve per gestire PiVPN

Gestire PiVPN è semplicissimo; è sufficiente collegarsi al tuo Raspberry Pi nel modo che ti è più conveniente.

Potrai accedere al tuo server VPN direttamente dal Desktop di PiOS, collegando mouse, tastiera e video al tuo Raspberry Pi ed aprire una finestra terminale dalla quale eseguire tutti i comandi.

Gestire PiVPN dal Ddesktop
Desktop di Raspberry Pi con finestra terminale

In alternativa, potrai collegarti al tuo Raspberry Pi tramite il protocollo ssh, utilizzando ssh da riga di comando, se hai un altro sistema GNU Linux; oppure potrai utilizzare lo strumento Putty (disponibile praticamente per tutte le piattaforme), del quale l’immagine qua sotto mostra la finestra principale dell’App.

Gestire PiVPN con Putty
Applicazione Putty per l’accesso ssh a Raspberry Pi

Questo secondo metodo, a mio modesto parere, è quello consigliato, poiché mantiene una notevole flessibilità utilizzando al minimo le già esigue risorse del Raspberry Pi.

Lista dei comandi per gestire PiVPN

La lista dei comandi disponibili in PiVPN è estremamente semplificata e ridotta al minimo essenziale per poter gestire gli aspetti più importanti del tool.

Leggi anche:   Come rimuovere cloud-init da Ubuntu 20.04

Quello riportato qui sotto è l’intero set di comandi così come mostrato dall’help di PiVPN.

$ pivpn -h
::: Control all PiVPN specific functions!
:::
::: Usage: pivpn <command> [option]
:::
::: Commands:
:::    -a, add              Create a client conf profile
:::    -c, clients          List any connected clients to the server
:::    -d, debug            Start a debugging session if having trouble
:::    -l, list             List all clients
:::   -qr, qrcode           Show the qrcode of a client for use with the mobile app
:::    -r, remove           Remove a client
:::  -off, off              Disable a client
:::   -on, on               Enable a client
:::    -h, help             Show this help dialog
:::    -u, uninstall        Uninstall pivpn from your system!
:::   -up, update           Updates PiVPN Scripts
:::   -bk, backup           Backup VPN configs and user profiles

Tutti i comandi sono nel formato: pivpn <command> [option] dove <command> può essere espressa nei 2 diversi modi, come mostrato dall’help e la parte [option] è opzionale. Ad esempio, il comando per aggiungere un utente può essere eseguito indifferentemente come pivpn -a oppure pivpn add.

Per i comandi che prevedono un argomento (parte [option]) , se questo non è presente, verrà richiesta interattivamente nella finestra terminale.

Esploriamo ora tutti i comandi (parte <command>) di PiVPN.

Aggiungi un nuovo utente VPN (User Add)

Per aggiungere un nuovo utente, eseguire il comando seguente:

$ pivpn -a

Di seguito un esempio di registrazione dell’utente geronimo all’interno del server PiVPN.

$ pivpn -a
Enter a Name for the Client: geronimo
::: Client Keys generated
::: Client config generated
::: Updated server config
::: WireGuard reloaded
======================================================================
::: Done! geronimo.conf successfully created!
::: geronimo.conf was copied to /home/pi/configs for easy transfer.
::: Please use this profile only on one device and create additional
::: profiles for other devices. You can also use pivpn -qr
::: to generate a QR Code you can scan with the mobile app.
======================================================================

Abilita un utente ad utilizzare la VPN (Enable User)

Per abilitare un utente per poter utilizzare la VPN, eseguire il comando seguente:

$ pivpn -on

Di seguito un esempio di abilitazione dell’utente geronimo.

$ pivpn -on
::  Client list  ::
1) geronimo
2) carlo
Please enter the Index/Name of the Client to be enabled from the list above: 1
Confirm you want to enable geronimo? [Y/n] y
geronimo
::: Updated server config
::: Successfully enabled geronimo
::: WireGuard reloaded

Disabilita un utente dall’utilizzo della VPN (Disable User)

Per disabilitare un utente dall’utilizzo della VPN, eseguire il comando seguente:

$ pivpn -off

Di seguito un esempio di disabilitazione dell’utente geronimo.

$ pivpn -off
::  Client list  ::
1) geronimo
2) carlo
Please enter the Index/Name of the Client to be removed from the list above: 1
Confirm you want to disable geronimo? [Y/n] y
geronimo
::: Updated server config
::: Successfully disabled geronimo
::: WireGuard reloaded

Lista degli utenti (User List)

Per mostrare tutti gli utenti registrati all’interno di PiVPN, eseguire il comando seguente:

$ pivpn -l

Di seguito un esempio di listato di tutti gli utenti registrati all’interno del server PiVPN

$ pivpn -l
::: Clients Summary :::
Client        Public key                                        Creation date
geronimo      VTY5lcCyM3sSP+/lkYvCul1bXgE/ZDI7NaWahAjJLUA=      07 Jul 2022, 19:10, CEST
carlo         DIYFBFafixSa34Kt/eTh55B2tUbAIesmXotbCyM1qCM=      07 Jul 2022, 19:21, CEST
::: Disabled clients :::

Rimuovi un utente (User Del)

Per eliminare un utente dal server PiVPN, eseguire il comando seguente:

$ pivpn -r

Di seguito un esempio di rimozione dell’utente carlo da server PiVPN.

$ pivpn -r
::  Client list  ::
1) geronimo
2) carlo
Please enter the Index/Name of the Client to be removed from the list above: 2
Do you really want to delete carlo? [y/N] y
::: Updated server config
::: Client config for carlo removed
::: Client Keys for carlo removed
::: Successfully deleted carlo
::: WireGuard reloaded

Lista utenti connessi (List connected clients)

Per mostrare tutti gli utenti attualmente connessi al server PiVPN, eseguire il comando seguente:

$ pivpn -c

Di seguito un esempio di listato di tutti gli utenti correntemente connessi al server PiVPN.

$ pivpn -c
::: Connected Clients List :::
Name          Remote IP               Virtual IP        Bytes Received      Bytes Sent      Last Seen
geronimo      87.17.19.195:56921      10.248.232.2      2.5MiB              16MiB           Jul 07 2022 - 20:02:35
carlo         87.17.19.195:55935      10.248.232.3      18KiB               21KiB           Jul 07 2022 - 19:56:30
::: Disabled clients :::

Mostra il codice QR di un utente (User QR Code)

Per mostrare il Codice QR (o QR Code) di un utente registrato all’interno del server, eseguire il comando seguente:

$ pivpn -qr

Di seguito un esempio di richiesta al server PiVPN per mostrare il Codice QR dell’utente geronimo.

$ pivpn -qr
::  Client list  ::
1) geronimo
2) carlo
Please enter the Index/Name of the Client to show: 1
::: Showing client geronimo below
=====================================================================

Il Codice QR così come viene mostrato direttamente all’interno della finestra terminale.

QR Code di un utente PiVPN
Codice QR di un utente registrato in PiVPN

Note sul QR Code

La generazione dell’immagine del QR Code è un tipo di operazione che deve essere maneggiata con estrema cura, sebbene sia molto utile a semplificare la configurazione dei dispositivi degli utenti.

Leggi anche:   Come accedere con Remote Desktop di Windows a Xubuntu

Esso infatti contiene, codificati al suo interno, tutti i dati relativi alla connessione del dispositivo dell’utente verso il server PiVPN. In pratica contiene l’intero file di configurazione del dispositivo client, compresa la coppia di chiavi (chiave pubblica e chiave privata) utilizzate per la cifratura del tunnel criptato.

In buona sostanza, in esso sono contenuti in chiaro informazioni estremamente critiche che devono essere divulgate esclusivamente all’utente cui si concede l’accesso VPN. Notare che il l’immagine del QR Code mostrata qui sopra è uno degli esempi generati in laboratorio al solo scopo di poter redigere questo articolo; quindi è praticamente inutilizzabile.

Quindi, evitare assolutamente l’invio del QR Code tramite email, così come pure evitare la pubblicazione del QR Code nelle pagine web, o qualsivoglia altro media pubblico, come ad esempio i Social Networks.

Il rischio che si corre è evidente, ma ci teniamo a sottolinearlo: se il QR Code cade in mani sbagliate, colui che ne viene in possesso può impersonare il reale utente VPN ed accedere alla tua rete interna. Nessuno credo voglia correre questo inutile rischio.

Conclusioni

Gestire PiVPN con i comandi da terminale è uno di quei task pressoché alla portata di tutti. Non è richiesto infatti alcun particolare livello di preparazione tecnica o specifica conoscenza del sistema per amministrare correttamente la tua installazione di PiVPN.

E poi, se sei arrivato a leggere fin qui, ci sono buone probabilità che hai già installato PiVPN sul tuo Raspberry Pi senza particolari problemi e lo stai già utilizzando.

Quindi ora non ti resta che gestire il tuo server PiVPN con i pochi semplici comandi illustratati poco sopra e goderti tutta la sicurezza e l’efficienza di una VPN fatta in casa con il potente tool WireGuard.

Leggi anche:   Configurare WireGuard VPN con Linux

Condividi

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.

Moderazione dei commenti attiva. Il tuo commento non apparirà immediatamente.

Scroll to top button