GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare OpenVPN su AlmaLinux 8, Centos 8 o Rocky Linux 8

Una "rete privata virtuale" VPN è una rete privata che nasconde l'identità dell'utente, l'origine e i dati utilizzando la crittografia. Il suo utilizzo principale è la privacy dei dati dell'utente e la connessione sicura a Internet. Poiché nasconde i dati, ti consente di accedere a dati che di solito sono bloccati dalle restrizioni geografiche.

OpenVPN è un software VPN open source che è sia un software che un protocollo in sé. È molto apprezzato poiché continua a bypassare i firewall.

Questo tutorial ti mostrerà passo dopo passo come installare e configurare un server OpenVPN e collegarlo al client OpenVPN. Utilizzeremo un server CentOS 8 per l'installazione, la stessa procedura funzionerà anche su Rocky Linux 8 e AlmaLinux 8.

Prerequisiti

Accesso al terminale

Un account utente con privilegi sudo.

Nota: I comandi in questo tutorial vengono eseguiti su CentOS 8. Tutti i metodi nel tutorial sono validi anche per CentOS 7.

Aggiorna e aggiorna il sistema

Assicurati che il tuo sistema sia aggiornato aggiornando e aggiornando il tuo sistema eseguendo il comando seguente.

sudo dnf update && sudo dnf upgrade

Disabilita SELinux

Successivamente, è necessario disabilitare SELinux poiché è in conflitto con OpenVPN e ne impedisce l'avvio.

Per disabilitare SELinux, apri il file di configurazione di SELinux usando il comando seguente.

sudo nano /etc/selinux/config

Una volta aperto il file con l'editor nano. Cerca SELinux e cambia il suo valore in disabilitato o semplicemente sostituiscilo con la seguente riga di codice.

SELINUX=disabled

Premi Ctrl+O e poi Ctrl+X per salvare e uscire dal file.

Abilita l'inoltro IP

Ora devi abilitare l'inoltro IP in modo che i pacchetti in arrivo possano essere inoltrati a reti diverse.

Per abilitare l'inoltro IP, apri il file di configurazione sysctl con l'editor nano.

sudo nano /etc/sysctl.conf

Aggiungi il seguente codice al file.

net.ipv4.ip_forward = 1

Premi Ctrl+O e poi Ctrl+X.

Installa il server OpenVPN

Assicurati di installare il pacchetto epel-release.

sudo dnf install epel-release -y

Ora puoi installare OpenVPN usando il seguente comando.

sudo dnf install openvpn -y

Ora che OpenVPN è installato. Vai alla sua cartella di installazione e scarica easy-rsa. Easy-RSA crea e gestisce le autorità di certificazione (CA).

cd /etc/openvpn
sudo wget https://github.com/OpenVPN/easy-rsa/releases/download/v3.0.6/EasyRSA-unix-v3.0.6.tgz

Estrai il file zip scaricato.

sudo tar -xvzf EasyRSA-unix-v3.0.6.tgz

E sposta il file EasyRSA nella sua cartella.

sudo mv EasyRSA-v3.0.6 easy-rsa

Configura Easy-RSA

Successivamente, dobbiamo aggiungere e creare un certificato SSL. Per farlo, per prima cosa, vai alla directory easy-rsa.

cd /etc/openvpn/easy-rsa

Per aprire il file vars nell'editor nano, esegui il comando seguente.

sudo nano vars

Ora copia e incolla le seguenti righe di codice nel file vars.

set_var EASYRSA "$PWD"
set_var EASYRSA_PKI "$EASYRSA/pki"
set_var EASYRSA_DN "cn_only"
set_var EASYRSA_REQ_COUNTRY "USA"
set_var EASYRSA_REQ_PROVINCE "Newyork"
set_var EASYRSA_REQ_CITY "Newyork"
set_var EASYRSA_REQ_ORG "osradar CERTIFICATE AUTHORITY"
set_var EASYRSA_REQ_EMAIL ""
set_var EASYRSA_REQ_OU "osradar EASY CA"
set_var EASYRSA_KEY_SIZE 2048
set_var EASYRSA_ALGO rsa
set_var EASYRSA_CA_EXPIRE 7500
set_var EASYRSA_CERT_EXPIRE 365
set_var EASYRSA_NS_SUPPORT "no"
set_var EASYRSA_NS_COMMENT "osradar CERTIFICATE AUTHORITY"
set_var EASYRSA_EXT_DIR "$EASYRSA/x509-types"
set_var EASYRSA_SSL_CONF "$EASYRSA/openssl-easyrsa.cnf"
set_var EASYRSA_DIGEST "sha256"

Puoi modificare il valore di Paese, città, provincia ed email in base alle tue esigenze.

Premi Ctrl+O e poi Ctrl+X.

Ora avvia la directory PKI con il seguente comando.

./easyrsa init-pki

Infine, puoi creare il tuo certificato CA.

sudo ./easyrsa build-ca

Genera file di certificato del server

Utilizza il comando seguente per ottenere la coppia di chiavi e la richiesta di certificato.

sudo ./easyrsa gen-req vitux-server nopass

Firma la chiave del server con CA

Per firmare la chiave del server con la CA, esegui il comando seguente.

sudo ./easyrsa sign-req server vitux-server
 

Abbiamo bisogno della chiave Diffie-Hellman per lo scambio di chiavi. Genera la chiave eseguendo il comando seguente.

sudo ./easyrsa gen-dh

Quindi, copia tutti questi file in /etc/openvpn/server/ directory.

cp pki/ca.crt /etc/openvpn/server/
cp pki/dh.pem /etc/openvpn/server/
cp pki/private/vitux-server.key /etc/openvpn/server/
cp pki/issued/vitux-server.crt /etc/openvpn/server/

Genera chiave client e certificato

Puoi ottenere la chiave client eseguendo il comando seguente.

sudo ./easyrsa gen-req client nopass

Quindi firma la tua chiave client con il certificato CA generato.

sudo ./easyrsa sign-req client client

Copia questi file in /etc/openvpn/client/ directory

cp pki/ca.crt /etc/openvpn/client/
cp pki/issued/client.crt /etc/openvpn/client/
cp pki/private/client.key /etc/openvpn/client/

Configura il server OpenVPN

Crea e apri un nuovo file di configurazione nella directory del client con il seguente comando.

sudo nano /etc/openvpn/server/server.conf

Quindi aggiungi le seguenti righe di codice nel file.

port 1194
proto udp
dev tun
ca /etc/openvpn/server/ca.crt
cert /etc/openvpn/server/vitux-server.crt
key /etc/openvpn/server/vitux-server.key
dh /etc/openvpn/server/dh.pem
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1"
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"
duplicate-cn
cipher AES-256-CBC
tls-version-min 1.2
tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384:TLS-DHE-RSA-WITH-AES-256-CBC-SHA256:TLS-DHE-RSA-WITH-AES-128-GCM-SHA256:TLS-DHE-RSA-WITH-AES-128-CBC-SHA256
auth SHA512
auth-nocache
keepalive 20 60
persist-key
persist-tun
compress lz4
daemon
user nobody
group nobody
log-append /var/log/openvpn.log
verb 3

Premi Ctrl+O e Ctrl+X.

Avvia e abilita il servizio OpenVPN

La tua OpenVPN è pronta per essere avviata. Avvia e abilita il server utilizzando i seguenti comandi.

sudo systemctl start [email protected]
sudo systemctl enable [email protected]

Puoi vedere e verificare lo stato attivo con il seguente comando.

systemctl status [email protected]

Una nuova interfaccia di rete verrà creata all'avvio riuscito del server OpenVPN. Esegui il comando seguente per vedere i dettagli.

ifconfig

Genera il file di configurazione del client

Il passaggio successivo consiste nel connettere il client al server OpenVPN. Abbiamo bisogno del file di configurazione del client per quello. Per generare il file di configurazione del client, eseguire il comando seguente.

sudo nano /etc/openvpn/client/client.ovpn

Ora copia e incolla il codice seguente nel file.

client
dev tun
proto udp
remote vpn-server-ip 1194
ca ca.crt
cert client.crt
key client.key
cipher AES-256-CBC
auth SHA512
auth-nocache
tls-version-min 1.2
tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384:TLS-DHE-RSA-WITH-AES-256-CBC-SHA256:TLS-DHE-RSA-WITH-AES-128-GCM-SHA256:TLS-DHE-RSA-WITH-AES-128-CBC-SHA256
resolv-retry infinite
compress lz4
nobind
persist-key
persist-tun
mute-replay-warnings
verb 3

Premi Ctrl+O per salvare le modifiche e premi Ctrl+X per uscire dall'editor.

Configura percorso

Imposta le impostazioni del servizio OpenVPN con i seguenti comandi per consentirlo attraverso il firewall.

firewall-cmd --permanent --add-service=openvpn
firewall-cmd --permanent --zone=trusted --add-service=openvpn
firewall-cmd --permanent --zone=trusted --add-interface=tun0

firewall-cmd --add-masquerade
firewall-cmd --permanent --add-masquerade

Imposta il routing per inoltrare il traffico in entrata dalla VPN alla rete locale.

routecnf=$(ip route get 8.8.8.8 | awk 'NR==1 {print $(NF-2)}')
firewall-cmd --permanent --direct --passthrough ipv4 -t nat -A POSTROUTING -s 10.8.0.0/24 -o $routecnf -j MASQUERADE

Ricarica per rendere effettive le modifiche.

firewall-cmd --reload

Installa e utilizza OpenVPN nel computer client

Devi installare epel-release e OpenVPN come hai fatto sul lato server.

dnf install epel-release -y
dnf install openvpn -y

Ora copia i file di configurazione del client dal server usando il comando riportato di seguito.

sudo scp -r [email protected]:/etc/openvpn/client .

Vai alla directory del client e connettiti al server OpenVPN utilizzando i seguenti comandi.

cd client
openvpn --config client.ovpn

Esegui ifconfig per vedere l'indirizzo IP assegnato.

ifconfig tun0


Cent OS
  1. Come installare PostgreSQL su CentOS 8 / Rocky Linux 8 / RHEL 8

  2. Come installare OpenVPN su CentOS/RHEL 8

  3. Come installare e configurare Redis 6 su Rocky Linux/Centos 8

  4. Come installare Erlang su Rocky Linux/Alma Linux/CentOS 8

  5. Come installare il client FreeIPA su Rocky Linux/Alma Linux/CentOS 8

Come installare Rabbitmq in Rocky Linux/Alma Linux/Centos 8

Come installare MariaDB 10 su AlmaLinux 8 o Rocky Linux

Come installare Grafana su Almalinux o Rocky Linux 8

Come installare OTRS su AlmaLinux 8 / Rocky Linux 8

Come installare WordPress su AlmaLinux 8 | Linux roccioso 8

Come installare Linux Kernel 5.13 su Rocky Linux 8 / AlmaLinux 8 / CentOS 8