Come implementare IPsec in Linux

Come implementare IPsec in Linux

Questo tutorial spiega come implementare il protocollo IPSEC per proteggere la connessione Internet utilizzando SongSwan e Protonvpn.

Nozioni di base su ipsec:

Ipsec è un protocollo sicuro di livello 3. Fornisce sicurezza per il livello di trasporto e superiore sia con IPv4 che IPv6.
L'IPSEC funziona con 2 protocolli di sicurezza e un protocollo di gestione delle chiavi: Esp (Incapsulando il payload di sicurezza), Ah (Intestazione di autenticazione) e Ike (Exchange chiave Internet).
Protocolli Esp E Ah Concedere diversi livelli di sicurezza e può operare in modalità di trasporto e modalità tunnel. Le modalità di tunnel e di trasporto possono essere applicate sia con l'implementazione ESP o AH.
Mentre AH ed ESP lavorano in modi diversi, possono essere miscelati per fornire diverse funzionalità di sicurezza.

Modalità di trasporto: L'intestazione IP originale contiene informazioni su mittente e destinazione.

Modalità tunnel: Viene implementata una nuova intestazione IP contenente gli indirizzi di origine e di destinazione. L'IP originale può differire da quello nuovo.

Ah, protocollo (intestazione di autenticazione): Il protocollo AH garantisce pacchetti integrità e autenticazione da punto a punto per i livelli di trasporto e applicazioni ad eccezione dei dati variabili: TOS, TTL, flag, checksum e offset.
Gli utenti di questo protocollo assicurano che i pacchetti siano stati inviati da un mittente autentico e non sono stati modificati (come accadrebbe in un uomo nell'attacco di mezzo).
La figura seguente descrive l'implementazione del protocollo AH in modalità di trasporto.

Protocollo ESP (incapsulando il payload di sicurezza):

Il protocollo ESP combina diversi metodi di sicurezza per garantire l'integrità dei pacchetti, l'autenticazione, la riservatezza e la sicurezza della connessione per i livelli di trasporto e applicazioni. Per raggiungere questo obiettivo, ESP implementa le intestazioni di autenticazione e crittografia.

La seguente immagine mostra l'implementazione del protocollo ESP che opera in modalità tunnel:

Confrontando la grafica precedente, puoi capire che il processo ESP copre le intestazioni originali che le crittografano. Allo stesso tempo, AH aggiunge un'intestazione di autenticazione.

Protocollo IKE (Exchange chiave Internet):

IKE gestisce l'associazione di sicurezza con informazioni come gli indirizzi endpoint IPSEC, le chiavi e i certificati, come richiesto.

Puoi leggere di più su IPsec su ciò che è IPSEC e come funziona.

Implementazione di IPSEC in Linux con Strongswan e ProTonVPN:

Questo tutorial mostra come implementare il protocollo IPSEC Modalità tunnel Usando Strongswan, un'implementazione IPSEC open source e ProtonVPN su Debian. I passaggi descritti di seguito sono gli stessi per le distribuzioni basate su Debian come Ubuntu.

Per iniziare a installare Strongswan eseguendo il seguente comando (Distribuzioni Debian e basate)

SUDO APT Installa Strongswan -y

Dopo aver installato Strongswan, aggiungi le librerie necessarie eseguendo:

SUDO APT Installa libstrongswan-extra-plugins libcharon-extra-plugins

Per scaricare ProtonVPN usando Wget run:

wget https: // protonvpn.com/download/protonvpn_ike_root.der -o /tmp /protonvpn.der

Sposta i certificati nella directory IPSEC eseguendo:

sudo mv /tmp /protonvpn.der /etc /ipsec.D/Cacerts/

Ora vai su https: // protonvpn.com/ e premere il Ottieni prottonvpn ora pulsante verde.

premi il bottone OTTENERE GRATUITAMENTE.

Compilare il modulo di registrazione e premere il pulsante verde Creare un account.

Verifica il tuo indirizzo email utilizzando il codice di verifica inviato da protonvpn.

Una volta nella dashboard, fare clic su Account> OpenVPN/Ikev2 Nome utente. Queste sono le credenziali necessarie per modificare i file di configurazione IPsec.

Modifica il file /etc /ipsec.conf media correre:

/etc/ipsec.conf

Sotto Esempio di connessioni VPN, Aggiungi quanto segue:

NOTA: Dove Linuxhint è il nome della connessione, un campo arbitrario. deve essere sostituito dal tuo nome utente trovato al Protonvpn Dashboard sotto Account> OpenVPN/Ikev2 nome utente.

Il valore NL-Free-01.protonvpn.com è il server scelto; Puoi trovare altri server nella dashboard in download> client protonvpn.

Conn Linuxhint
a sinistra =%defaultroute
Leftsourceip =%Config
LeftAuth = EAP-MSChapv2
eap_idenza =
a destra = nl-free-01.protonvpn.com
diritsubnet = 0.0.0.0/0
Rightauth = pubkey
RightId =%NL-Free-01.protonvpn.com
Giusto =/etc/ipsec.d/cacerts/protonvpn.der
keyExchange = Ikev2
Type = tunnel
auto = aggiungi

Premere Ctrl+X per salvare e chiudere.

Dopo la modifica /etc /ipsec.Conf È necessario modificare il file /etc/ipsec.Segreti che immagazzina le credenziali. Per modificare questo file Esegui:

nano /etc /ipsec.Segreti

È necessario aggiungere il nome utente e il tasto utilizzando la sintassi "Utente: chiave EAP"Come mostrato nella seguente screenshot, in cui VGGXPJVRTS1822Q0 è il nome utente e B9HM1U0OVPEOZ6YCZK0MNXIOBC3JJACH il tasto; È necessario sostituirli entrambi per le tue credenziali reali trovate nella dashboard Account> OpenVPN/Ikev2 nome utente.

Premere Ctrl+X per salvare e chiudere.

Ora è il momento di connettersi, ma prima di eseguire ProtonVPN, riavviare il servizio IPSEC eseguendo:

SUDO IPSEC Riavvia

Ora puoi connetterti in esecuzione:

sudo ipsec up linuxhint

Come puoi vedere, la connessione è stata stabilita con successo.

Se vuoi disattivare ProtonVPN, puoi eseguire:

sudo ipsec down linuxhint

Come puoi vedere, Ipsec è stato disabilitato correttamente.

Conclusione:

Implementando IPSEC, gli utenti si evolvono drasticamente nei problemi di sicurezza. L'esempio sopra mostra come distribuire ipsec con protocollo ESP e IKEV2 in modalità tunnel. Come mostrato in questo tutorial, l'implementazione è molto facile e accessibile a tutti i livelli dell'utente di Linux. Questo tutorial è spiegato utilizzando un account VPN gratuito. Tuttavia, l'implementazione IPSEC sopra descritta può essere migliorata con i piani premium offerti dai fornitori di servizi VPN, ottenendo più velocità e posizioni proxy aggiuntive. Le alternative a protonvpn sono NordVPN ed Expressvpn.

Per quanto riguarda Strongswan come implementazione IPSEC open source, è stata scelta per essere un'alternativa multipiattaforma; Altre opzioni disponibili per Linux sono Libreswan e Openswan.

Spero che tu abbia trovato questo tutorial per implementare IPSec in Linux utile. Continua a seguire Linuxhint per ulteriori suggerimenti e tutorial Linux.