In questo tutorial, configurerò un server Open VPN in Docker con CloudSigma. Con le sedi cloud di CloudSigma distribuite in tutto il mondo, puoi creare un server in una qualsiasi di esse e accedere ai contenuti da lì.
Creazione della macchina
Per prima cosa, creo una macchina con le seguenti risorse:
CPU da 20 GHz
16 GB di RAM
20 GB di SSD
Sto montando il disco con l'immagine di Ubuntu 18.04 disponibile nella libreria di CloudSigma.
Ubuntu 18.04 : Preinstallato a 64 bit con driver VirtIO, superuser, Python 2.7.15, Pip 18.0, OpenSSL 1.1.0i, Cloud-init e ultimi aggiornamenti fino al 30-09-2018.
Aggiornamento di tutti i repository e pacchetti esistenti sulla macchina.
|
1 2 |
sudo apt update sudo apt upgrade |
Ora che il nostro sistema è aggiornato, passerò all'installazione di Docker. Per maggiori informazioni su Docker, controlla qui.
Installazione di Docker
Posso installare Docker eseguendo i seguenti comandi:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable" sudo apt-get update sudo apt-get install docker-ce |
OpenVPN
Ora che Docker è installato correttamente, posso iniziare a far funzionare OpenVPN Access Server su di esso. Di seguito è riportato il comando per creare un nuovo container Docker di OpenVPN Access Server con la configurazione specificata.
|
1 2 3 4 5 6 7 8 |
docker create \ --name=openvpn-as \ -v <path to data>:/config \ -e PGID=<gid> -e PUID=<uid> \ -e TZ=<timezone> \ -e INTERFACE=<interface> \ --net=host --privileged \ linuxserver/openvpn-as |
I seguenti comandi sono menzionati nella pagina dell'immagine Docker.
Dove openvpn-as deve memorizzare i file di configurazione:
|
1 |
-v /config |
Per GroupID:
|
1 |
-e PGID |
Utilizzato per UserID:
|
1 |
-e PUID |
Per l'impostazione del fuso orario:
|
1 |
-e TZ |
L'impostazione dell'interfaccia predefinita per openvpn-as è eth0:
|
1 |
-e INTERFACE |
IMPORTANTE, per la maggior parte degli utenti, deve operare in modalità host:
|
1 |
--net=host |
IMPORTANTE, non funzionerà se non in modalità privilegiata:
|
1 |
--privileged |
Per ottenere l'ID del gruppo e l'ID dell'utente, esegui il seguente comando:
|
1 |
id |
Indico il fuso orario come CET.
Per l'interfaccia, esegui il seguente comando:
|
1 |
ip r |
L'interfaccia in genere è ens3 o eth0. Per il mio sistema, è ens3.
Dopo aver aggiunto tutti questi elementi, eseguo il seguente comando:
|
1 2 3 4 5 6 7 8 |
sudo docker create --name=openvpn-as \ --restart=always \ -v /home/docker/openvpn-as/config:/config \ -e INTERFACE=ens3 \ -e PGID=1004 -e PUID=1000 \ -e TZ=Europe/Warsaw \ --net=host --privileged \ linuxserver/openvpn-as |
Poiché non abbiamo ancora l'immagine nel nostro sistema, l'immagine verrà scaricata dal server. L'output sarà:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
Impossibile da trovare immagine 'linuxserver/openvpn-as:latest' localmente latest: Pulling da linuxserver/openvpn-as 56d9dc91333b: Pull completato 1356b0cfc067: Pull completato 155f3c53d4a5: Pull completato 05088c205b6d: Pull completato 112068b0fa4e: Pull completato 2ff5dd4a0d9b: Pull completato 7dd87385ca73: Pull completato d966d969c7cd: Pull completato 4439dbcda217: Pull completato 5f960f89c64e: Pull completato Digest: sha256:d65f743bcec24b6b6ad0b19f9d7876cd70d5237690a940301b2366d6d5767a80 Stato: Scaricata nuova immagine per linuxserver/openvpn-as:latest f0a1eb5440b5a423f8f21081d8654aaba2c0bd9995d2dea88a979c97ea977e16 |
Avvio del container con questo comando:
|
1 |
sudo docker start openvpn-as |
Accedi
Ora che l'ho avviato, andrò al pannello di amministrazione dell'access server.
Andando all'URL: https://<<YourIpAddress>>:943/admin

Richiederà il nome utente e la password che per impostazione predefinita sono:
Nome utente: admin
Password: password

Ora che ho effettuato l'accesso, mi chiede se accetto l'EULA (End User License Agreement). Clicco su Agree e passo alla dashboard di amministrazione.

Si consiglia di modificare la password dell'account amministratore per motivi di sicurezza. La sto modificando utilizzando il seguente comando:
|
1 |
docker exec -it openvpn-as passwd admin |
Configurazione del DNS
Ora che il nostro server è attivo e funzionante, vorremmo configurare il DNS al suo interno. Per maggiori informazioni sui Domain Name Server (DNS), fai clic qui.
Uno dei server DNS più veloci è quello di Google. Lo configurerò nel mio OpenVPN Access Server, in modo che i miei client possano navigare facilmente tra i siti web.
Vado nelle impostazioni VPN e, sotto le impostazioni DNS, abiliterò “Have clients use specific DNS servers.”

Successivamente, inserirò i seguenti indirizzi nelle colonne del server DNS:
Server DNS primario: 8.8.8.8
Server DNS secondario: 8.8.8.4

Salva le impostazioni e fai clic su “Update Running Server.” Aggiornerà il server in esecuzione.
Ora che ho configurato correttamente il server, posso procedere alla connessione alla VPN tramite il mio sistema.
Accesso all'interfaccia utente del client su: https://<<YourIpAddress>>:943.
Inserisci il nome utente amministratore, la password dell'amministratore o crea un nuovo utente dalla sezione User Management del pannello di amministrazione.
Una volta effettuato l'accesso, mi verranno mostrate varie opzioni per diversi sistemi operativi. Seleziono Windows e scarico il software client.

Ora che è installato, posso avviarlo dal menu Start o si avvierà automaticamente. Dalla barra delle applicazioni, posso connettermi alla VPN utilizzando l'account configurato in precedenza.

E sono connesso alla VPN. Et voilà! Ecco come creare un server VPN con Docker.
Commenti
Ancora nessun commento. Scrivi il primo.