In questo tutorial, ti mostreremo come installare OpenVPN su CentOS 7. Per chi non lo sapesse, OpenVPN è un'applicazione open source ampiamente utilizzata per creare proteggere le reti private virtuali su Internet pubblico non protetto. OpenVPN è una soluzione SSL VPN che drena la connessione di sistema in modo sicuro attraverso Internet. OpenVPN funziona nella struttura client-server. Tutti i dispositivi connessi a una rete privata virtuale si comportano come se collegato alla tua rete locale. I pacchetti inviati attraverso il tunnel VPN sono crittografati con crittografia AES a 256 bit che rende impossibile il furto di dati.
Questo articolo presuppone che tu abbia almeno una conoscenza di base di Linux, sappia come usare la shell e, soprattutto, che ospiti il tuo sito sul tuo VPS. L'installazione è abbastanza semplice e presuppone che tu sono in esecuzione nell'account root, in caso contrario potrebbe essere necessario aggiungere 'sudo
' ai comandi per ottenere i privilegi di root. Ti mostrerò l'installazione passo passo della rete privata virtuale open source OpenVPN su un server CentOS 7.
Installa OpenVPN su CentOS 7
Passaggio 1. Innanzitutto, iniziamo assicurandoci che il tuo sistema sia aggiornato.
yum clean all yum -y install epel-release yum -y update
Passaggio 2. Installazione di OpenVPN su CentOS 7.
Ora installeremo i pacchetti OpenVPN e Easy-RSA. Il pacchetto Easy-RSA viene fornito in modo che possiamo avere un modo più semplice per generare certificati:
yum install openvpn easy-rsa
Passaggio 3. Configurazione di Easy-RSA.
Ora che hai installato OpenVPN correttamente, devi creare chiavi e certificati, segui questa sezione passo dopo passo:
mkdir -p /etc/openvpn/easy-rsa/keys
Successivamente, copieremo gli script di generazione dei certificati dalla loro posizione predefinita nella nostra cartella OpenVPN:
cp -rf /usr/share/easy-rsa/2.0/* /etc/openvpn/easy-rsa
Andremo nella directory easy-RSA e forniremo le variabili:
cd /etc/openvpn/easy-rsa source ./vars
Quindi esegui subito “./clean-all” per assicurarti di avere una configurazione del certificato pulita:
./clean-all
Ora devi generare un file "Autorità di certificazione (ca)". Ti verrà chiesto il nome del paese ecc. che hai modificato nel file "vars" . puoi premere "Invio" per accettare i tuoi valori predefiniti.
Ora spostati nella seguente directory:
cd /etc/openvpn/easy-rsa/2.0/ ./build-ca
Passaggio 4. Generazione di una chiave server e di un certificato.
Esegui il comando seguente nella directory corrente:
./build-key-server server
Dovremo anche creare un file Diffie-Hellman. La creazione di questo file dipenderà dalla lunghezza della chiave. Per questa impostazione predefinita, useremo il chiave a 2048 bit ma puoi sempre cambiarla modificando il file vars nella cartella easy-RSA:
./build-dh
Passaggio 5. Configurazione del server OpenVPN.
Ora configureremo il server OpenVPN. Innanzitutto, crea un file di configurazione chiamato server.conf:
nano /etc/openvpn/server.conf
Incolla le configurazioni di seguito (puoi modificare i valori della porta ecc.):
local 192.168.77.20 port 443 proto tcp dev tun tun-mtu 1500 tun-mtu-extra 32 mssfix 1450 ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt cert /etc/openvpn/easy-rsa/2.0/keys/server.crt key /etc/openvpn/easy-rsa/2.0/keys/server.key dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem server 10.8.0.0 255.255.255.0 #-ifconfig-pool-persist ipp.txt push "redirect-gateway def1" push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 4.2.2.1" keepalive 2 30 comp-lzo persist-key persist-tun status 443status.log log-append 443log.log verb 3
Salva il file e attiva e avvia il servizio OpenVPN:
systemctl enable openvpn@server systemctl start openvpn@server
Passaggio 6. Configura Iptables per OpenVPN.
Dovremo inserire alcune regole IPtables per abilitare Internet sul computer client:
### KVM ### iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE ### OpenVZ ### iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to 192.168.77.20 iptables-save
Avanti, modifica systctl.conf
per abilitare l'inoltro dei pacchetti:
nano /etc/sysctl.conf
Aggiungi la riga:
net.ipv4.ip_forward=1
Passaggio 7. Crea certificato e chiave client.
I seguenti comandi genereranno un certificato client e una chiave:
nano client
Aggiungi la seguente riga:
cd /etc/openvpn/easy-rsa/2.0/ echo -en "Nama Client: " read client echo -en "Server IP: " read servip echo -en "TCP or UDP?: " read proto echo -en "Server port: " read servport . ../vars source ./vars echo "####################################" echo "Feel free to accept default values" echo "####################################" ./build-key $client cd /etc/openvpn/easy-rsa/2.0/keys rm -rf $client echo "client dev tun proto $proto remote $servip $servport resolv-retry infinite nobind tun-mtu 1500 tun-mtu-extra 32 mssfix 1450 persist-key persist-tun ca ca.crt cert $client.crt key $client.key ;auth-user-pass comp-lzo verb 3" > $client.ovpn mkdir d${client} cp ${client}* d${client} cp ca.crt d${client} mv d${client} $client zip -r $client.zip $client cp $client.zip /var/www/html echo "Now grab the $client.zip file and extract it under your Openvpn\config dir!"
Imposta i permessi del file e rendi eseguibile:
chmod 755 client ./client
Congratulazioni! Hai installato con successo OpenVPN. Grazie per aver utilizzato questo tutorial per installare la rete privata virtuale open source OpenVPN sul tuo sistema CentOS 7. Per ulteriore aiuto o informazioni utili, ti consigliamo di controllare il sito Web ufficiale di OpenVPN.