GNU/Linux >> Tutoriels Linux >  >> Linux

Comment configurer WireGuard VPN sur CentOS 8

WireGuard est une application de réseau privé virtuel open source, rapide et axée sur la sécurité qui peut être utilisée pour créer des connexions point à point sécurisées dans des configurations routées. Il est simple, plus rapide qu'OpenVPN et utilise des protocoles et des algorithmes de cryptographie éprouvés pour protéger les données. Il peut être installé sur de nombreux systèmes d'exploitation, notamment Windows, macOS, BSD, iOS, Linux et Android. WireGuard est un VPN peer-to-peer et n'utilise pas le modèle client-serveur. Il attribue des adresses IP statiques aux clients VPN et l'authentification des utilisateurs se fait en échangeant des clés publiques.

Dans ce tutoriel, nous allons vous montrer comment configurer WireGuard VPN sur CentOS 8.

Prérequis

  • Deux nouveaux VPS CentOS 8 sur la plate-forme cloud d'Atlantic.net
  • Un mot de passe root configuré sur votre serveur

Étape 1 - Créer un serveur cloud Atlantic.Net

Tout d'abord, connectez-vous à votre serveur Atlantic.Net Cloud. Créez un nouveau serveur en choisissant CentOS 8 comme système d'exploitation avec au moins 1 Go de RAM. Connectez-vous à votre serveur cloud via SSH et connectez-vous à l'aide des informations d'identification mises en évidence en haut de la page.

Une fois que vous êtes connecté à votre serveur CentOS 8, exécutez la commande suivante pour mettre à jour votre système de base avec les derniers packages disponibles.

dnf mise à jour -y

Étape 2 - Activer le transfert IP

Avant de commencer, vous devrez activer le transfert IP dans votre système. Vous pouvez l'activer en créant un nouveau fichier /etc/sysctl.d/99-custom.conf :

nano /etc/sysctl.d/99-custom.conf

Ajoutez la ligne suivante :

net.ipv4.ip_forward=1

Enregistrez et fermez le fichier puis exécutez la commande suivante pour appliquer les modifications :

sysctl -p /etc/sysctl.d/99-custom.conf

Étape 3 - Installer Wireguard

Tout d'abord, vous devrez installer les référentiels Epel et Elrepo sur votre système. Vous pouvez les installer avec la commande suivante :

dnf install epel-release elrepo-release -y

Une fois installé, installez WireGuard en exécutant la commande suivante :

dnf install kmod-wireguard wireguard-tools -y

Une fois l'installation terminée, redémarrez votre système pour charger le module du noyau.

Étape 4 - Configurer WireGuard

Tout d'abord, vous devrez générer les clés publiques et privées dans le répertoire /etc/wireguard. Exécutez la commande suivante pour les générer :

wg genkey | tee /etc/wireguard/privatekey | wg pubkey | tee /etc/wireguard/publickey

Vous devriez voir votre clé générée dans la sortie suivante :

Nnid+rqJBnsZ+SN68dILbmxMreKyFTlSjBI8bh4sbzU=

Vous pouvez également les lister avec la commande suivante :

ls /etc/wireguard/

Vous devriez voir le résultat suivant :

clé privéeclé publique

Ensuite, vous devrez configurer le périphérique de tunnel qui acheminera le trafic VPN. Vous pouvez le faire en créant un nouveau fichier de configuration nommé wp0.conf :

nano /etc/wireguard/wg0.conf

Ajoutez les lignes suivantes :

[Interface] 
Adresse =10.0.0.1/24
SaveConfig =vrai
Port d'écoute =51820
Clé privée =Nnid+rqJBnsZ+SN68dILbmxMreKyFTlSjBI8bh4sbzU=
PostUp =firewall-cmd --zone=public --add-port 51820/udp &&firewall-cmd --zone=public --add-masquerade
PostDown =firewall-cmd --zone=public --remove-port 51820/udp &&firewall-cmd --zone=public --remove-masquerade

Enregistrez et fermez le fichier lorsque vous avez terminé.

Voici les définitions pertinentes pour les lignes ci-dessus :

  • Adresse :Spécifiez l'adresse IP privée du serveur VPN.
  • ListenPort :Spécifiez le port d'écoute WireGuard.
  • Clé privée :Spécifiez la clé privée du serveur VPN, qui se trouve dans /etc/wireguard/privatekey.
  • Publier  :Spécifiez les actions à exécuter au moment de l'appel de l'interface WireGuard.
  • Publier  :Spécifiez toutes les actions à exécuter au moment de l'arrêt de l'interface WireGuard.

Ensuite, affichez l'interface WireGuard en utilisant la commande wg-quick :

wg-rapidement wg0

Vous devriez obtenir le résultat suivant :

[#] ip link add wg0 type wireguard 
[#] wg setconf wg0 /dev/fd/63
[#] adresse ip -4 ajouter 10.0.0.1/24 dev wg0
[#] ip link set mtu 1420 up dev wg0
[#] firewall-cmd --zone=public --add-port 51820/udp &&firewall-cmd --zone=public --add-masquerade
succès

Vous pouvez maintenant vérifier l'état de l'interface wg0 avec la commande suivante :

wg afficher wg0

Vous devriez voir le résultat suivant :

interface :clé publique wg0 :6hxSg1eZR9n4oPYckJbzXcNbVwcjF5vNsSzUREsoBEY=clé privée :port d'écoute (caché) :51820ip a show 10.0.0.1/24 portée globale wg0 valid_lft pour toujours prefer_lft pour toujours

Ensuite, activez l'interface wg0 pour qu'elle démarre au redémarrage du système avec la commande suivante :

systemctl enable [email protected]

Étape 5 - Installer et configurer le client VPN Wireguard

Tout d'abord, installez les référentiels Epel et Elrepo sur la machine cliente avec la commande suivante :

dnf install epel-release elrepo-release -y

Une fois installé, installez WireGuard en exécutant la commande suivante :

dnf install kmod-wireguard wireguard-tools

Une fois l'installation terminée, redémarrez votre système pour charger le module du noyau.

Ensuite, générez les clés publique et privée avec la commande suivante :

wg genkey | tee /etc/wireguard/privatekey | wg pubkey | tee /etc/wireguard/publickey

Vous devriez obtenir le résultat suivant :

NvzqF7ilT01OD3uTAmNME1rHFnCcTdGSXo+f8tkRElQ=

Créez ensuite un nouveau fichier de configuration wg0.conf avec la commande suivante :

nano /etc/wireguard/wg0.conf

Ajoutez les lignes suivantes :

[Interface]PrivateKey =NvzqF7ilT01OD3uTAmNME1rHFnCcTdGSXo+f8tkRElQ=Adresse =10.0.0.2/24[Peer]PublicKey =Nnid+rqJBnsZ+SN68dILbmxMreKyFTlSjBI8bh4sbzU=Endpoint =your-server-ip:51820=0.0.0.0.0.0.IP>Allowed0 

Enregistrez et fermez le fichier lorsque vous avez terminé.

Voici les définitions pertinentes pour les lignes ci-dessus :

  • Clé privée  :Spécifiez la clé privée du client.
  • Adresse :Spécifiez l'adresse IP privée pour l'interface wg0.
  • Clé publique :Spécifiez la clé publique du serveur.
  • Point de terminaison :Spécifiez l'adresse IP du serveur.
  • IP autorisées  :Spécifiez les adresses IP autorisées.

Étape 6 – Ajouter l'homologue client au serveur

Ensuite, vous devrez ajouter la clé publique et l'adresse IP de votre client WireGuard dans votre serveur VPN WireGuard.

Sur la machine serveur, exécutez la commande suivante pour ajouter la clé publique et l'adresse IP du client au serveur :

wg set wg0 peer NvzqF7ilT01OD3uTAmNME1rHFnCcTdGSXo+f8tkRElQ=allow-ips 10.0.0.2

Vous pouvez trouver la clé publique du client dans /etc/wireguard/publickey sur la machine cliente.

Sur la machine cliente, affichez l'interface wg0 avec la commande suivante :

wg-rapidement wg0

Vous devriez voir le résultat suivant :

[#] ip link add wg0 type wireguard 
[#] wg setconf wg0 /dev/fd/63
[#] adresse ip -4 ajouter 10.0.0.2/24 dev wg0
[#] ip link set mtu 1420 up dev wg0

Sur la machine serveur, vous pouvez vérifier l'état du serveur WireGuard avec la commande suivante :

wg

Vous devriez obtenir le résultat suivant :

 Interface:Wg0 Clé public:6HXSG1EZR9N4OPYCKJBZXCNBVWCJF5VNSSURESOBEY =Clé privé:(Hidden) Port d'écoute:51820PER:NVZQF7ILT01OD3UTAMNME1RHFNCCTDGSXO + F8TKRELQEQ =AGRÉMOR /pré> 

Conclusion

Félicitations, vous avez configuré avec succès un serveur VPN WireGuard sur CentOS 8 et créé un tunnel VPN entre deux machines CentOS 8. Vous pouvez désormais surfer sur le Web de manière anonyme et garder vos données de trafic privées. Commencez dès aujourd'hui avec un serveur privé virtuel d'Atlantic.Net !


Linux
  1. Comment configurer Wireguard VPN sur CentOS 8

  2. Comment configurer WireGuard VPN sur Ubuntu 20.04

  3. Comment configurer WireGuard VPN sur Ubuntu (un guide étape par étape)

  4. Comment configurer VSFTPD sur CentOS 8

  5. Comment configurer un pare-feu avec Firewalld sur CentOS 8

Comment installer Java sur CentOS 8

Comment configurer GitLab sur CentOS 8

Comment installer Yarn sur CentOS 8

Comment installer la métabase sur CentOS 8

Comment installer Jenkins sur CentOS 8

Comment configurer WireGuard VPN sur Linux