Inventaire des Machines
Host : wireguard-server.house.cpb
- IP: 172.16.185.40
- Subnet : 172.16.185.0/24
- vSwitch : vmbr1
- Disque : 8Go (Système)
- RAM :2Go
- vCPU : 2
- OS : RockyLinux 8
Host : wireguard-client01.house.cpb
- IP: 10.10.0.40
- Subnet : 10.10.0.0/24
- vSwitch : vmbr4
- Disque : 8Go (Système)
- RAM :2Go
- vCPU : 2
- OS : RockyLinux 8
Les deux machines doivent être joignable mutuellement.
Check wireguard-server (172.16.185.40) => wireguard-client01(10.10.0.40)
[root@wireguard-server ~]# echo "10.10.0.40 wireguard-client01" >> /etc/hosts [root@wireguard-server ~]# ping -c 3 wireguard-client01
wireguard-client01(10.10.0.40) => Check wireguard-server (172.16.185.40)
[root@wireguard-client01 ~]# echo "172.16.185.40 wireguard-server" >> /etc/hosts [root@wireguard-client01 ~]# ping -c 3 wireguard-server
Installation Serveur VPN WireGuard – RockyLinux
1°) Mise à jour
[root@wireguard-server ~]# dnf -y update
2°) Désactivation IPv6 (Option)
[root@open-serveurvpn ~]# echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf [root@open-serveurvpn ~]# echo "net.ipv6.conf.all.autoconf = 0" >> /etc/sysctl.conf [root@open-serveurvpn ~]# echo "net.ipv6.conf.default.disable_ipv6 = 1" >> /etc/sysctl.conf [root@open-serveurvpn ~]# echo "net.ipv6.conf.default.autoconf = 0" >> /etc/sysctl.conf [root@open-serveurvpn ~]# sysctl -p
3°) Installation des dépendances
[root@wireguard-server ~]# dnf install epel-release [root@wireguard-server ~]# yum install elrepo-release
4°) Installation WireGuard VPN
[root@wireguard-server ~]# dnf search wireguard
[root@wireguard-server ~]# dnf -y install wireguard-tools kmod-wireguard
5°) Création des clefs Public/Privée pour le Server
[root@wireguard-server ~]# cd /etc/wireguard/ [root@wireguard-server wireguard]# wg genkey | tee /etc/wireguard/privatekey | wg pubkey | tee /etc/wireguard/publickey [root@wireguard-server wireguard]# cat publickey H9JrgVaNJh9wmB25K4wlQlG/fVii1um+mhkGApPJXUs= [root@wireguard-server wireguard]# cat privatekey 8DLZHyjeS2HHozkYpeaZJM64oGOwYDcbU/i+E1FjQ0Y=
6°) Création/Configuration du server VPN
[root@wireguard-server wireguard]# vi wg0.conf [Interface] Address = 100.10.0.1/24 SaveConfig = true ListenPort = 51820 PrivateKey = 8DLZHyjeS2HHozkYpeaZJM64oGOwYDcbU/i+E1FjQ0Y= 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
[root@wireguard-server wireguard]# chmod 600 /etc/wireguard/{privatekey,wg0.conf}
[root@wireguard-server wireguard]# echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf [root@wireguard-server wireguard]# sysctl –p
7°) Démarrage du server VPN
[root@wireguard-server wireguard]# wg-quick up wg0
[root@wireguard-server wireguard]# ip addr
Le VPN est monté sur la Carte Virtuelle wg0 et le Subnet 100.10.0.0/24
8°) Démarrage du service » boot machine »
[root@wireguard-server wireguard]# systemctl enable wg-quick@wg0 [root@wireguard-server wireguard]# wg-quick down wg0 [root@wireguard-server wireguard]# systemctl start wg-quick@wg0 [root@wireguard-server wireguard]# systemctl status wg-quick@wg0
[root@wireguard-server wireguard]# wg show wg0
[root@wireguard-server wireguard]# ip a show wg0
Côté Firewall
[root@wireguard-server wireguard]# firewall-cmd --list-all
Installation Client Linux VPN WireGuard – RockyLinux
1°) Mise à jour
[root@wireguard-client01 ~]# dnf -y update
2°) Désactivation IPv6 (Option)
[root@wireguard-client01 ~]# echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf [root@wireguard-client01 ~]# echo "net.ipv6.conf.all.autoconf = 0" >> /etc/sysctl.conf [root@wireguard-client01 ~]# echo "net.ipv6.conf.default.disable_ipv6 = 1" >> /etc/sysctl.conf [root@wireguard-client01 ~]# echo "net.ipv6.conf.default.autoconf = 0" >> /etc/sysctl.conf [root@wireguard-client01 ~]# sysctl -p
3°) Installation des dépendances
[root@wireguard-client01 ~]# dnf install epel-release elrepo-release
4°) Installation WireGuard VPN
[root@wireguard-client01 ~]# dnf install kmod-wireguard wireguard-tools –y
5°) Création des certificats Client01
[root@wireguard-client01 ~]# cd /etc/wireguard/ [root@wireguard-client01 wireguard]# wg genkey | tee /etc/wireguard/privatekey | wg pubkey | tee /etc/wireguard/publickey [root@wireguard-client01 wireguard]# cat /etc/wireguard/privatekey gLHwqTDBJtw2wYfCdqvBthcmpDsDqtCC+FKeKOZaaVo= [root@wireguard-client01 wireguard]# cat /etc/wireguard/publickey bXbsDi3C2PThp8Eq8dmPtmiwNteEhexjyq4NHAtg/0U=
6°) Création/Configuration du client01 VPN
[root@wireguard-client01 wireguard]# vi wg0.conf
[Interface] #Clef Privée du client PrivateKey = gLHwqTDBJtw2wYfCdqvBthcmpDsDqtCC+FKeKOZaaVo= #Adresse du client sur le VPN Address = 100.10.0.2/24 [Peer] #Clef Public du serveur PublicKey = H9JrgVaNJh9wmB25K4wlQlG/fVii1um+mhkGApPJXUs= #Adresse et port du Serveur WireGuard Endpoint = wireguard-server:51820 AllowedIPs = 0.0.0.0/0
7°) Ajout Clef Public du client01 sur le serveur WireGuard
- Clef Public du client01 : bXbsDi3C2PThp8Eq8dmPtmiwNteEhexjyq4NHAtg/0U=
- Adresse du Client sur le VPN : 100.10.0.2
[root@wireguard-server wireguard]# wg set wg0 peer bXbsDi3C2PThp8Eq8dmPtmiwNteEhexjyq4NHAtg/0U= allowed-ips 100.10.0.2
8°) Démarrage du client VPN
[root@wireguard-client01 wireguard]# wg-quick up wg0
[root@wireguard-client01 wireguard]# ip addr
Le VPN (Client01) est monté sur la Carte Virtuelle wg0 et le Subnet 100.10.0.0/24
9°) Démarrage du service « boot machine »
[root@wireguard-client01 wireguard]# systemctl enable wg-quick@wg0 [root@wireguard-client01 wireguard]# wg-quick down wg0 [root@wireguard-client01 wireguard]# systemctl start wg-quick@wg0 [root@wireguard-client01 wireguard]# systemctl status wg-quick@wg0
[root@wireguard-client01 wireguard]# wg show wg0
[root@wireguard-client01 wireguard]# ip a show wg0
10°) Check connexion
Check de wireguard-client01 => wireguard-server via réseau VPN
[root@wireguard-client01 wireguard]# ping -c 3 100.10.0.1
Check de wireguard-server => wireguard-client01 via réseau VPN
[root@wireguard-server log]# ping -c 3 100.10.0.2
Connexion SSH du client01 sur le Serveur
[root@wireguard-client01 wireguard]# ssh -l root 100.10.0.1
On se connecte bien sur la machine serveur à partir de notre client via le réseau VPN.
Views: 3