Image

Base de connaissances → Consolidation des réseaux locaux (accès aux appareils locaux via serveur VDS)

[Serveurs virtuels]
Date de publication: 07.03.2024

Il existe des tâches où vous devez accéder à un équipement situé sur un réseau local avec accès à Internet, mais sans adresse IP externe. Dans ce cas, il peut y avoir plusieurs réseaux et appareils locaux. Il existe plusieurs services différents pour cela. Dans cet exemple, nous examinerons l'installation d'un service PPTP sur un serveur VDS exécutant Debian 12.

Notre objectif est de configurer la partie serveur du service, à laquelle nous pouvons connecter des appareils du réseau local et ainsi y accéder à distance, puisque le serveur VDS dispose d'une IP dédiée.

Par exemple : Vous avez installé dans votre bureau ou votre maison de campagne un serveur qui se connecte via Internet mobile. Souvent, les opérateurs mobiles ne fournissent pas d’adresse IP permanente et dédiée aux particuliers. Afin de pouvoir s'y connecter via Internet, nous configurerons la partie serveur du service PPTP sur VDS Debian 12, et votre serveur domestique comme partie client, où il se connectera au serveur.

1. Installation de services

apt install ppp pptpd

1.1 Configuration du service PPTP /etc/pptpd.conf

Décidons du réseau local et apportons la configuration au formulaire

localip 10.10.10.1
remoteip 10.10.10.2-254

Si vous avez commandé un serveur avec plusieurs adresses IP externes, vous pouvez ajouter une ligne qui indiquera clairement sur quelle IP notre service fonctionnera.

listen external_ip

1.2 Ajouter des options à la fin du fichier /etc/ppp/pptpd-options

mtu 1400
mru 1400
auth
require-mppe

Modifier les paramètres si nécessaire

ms-dns 8.8.8.8
ms-dns 8.8.4.4

1.3 Décommentez l'option /etc/sysctl.conf

net.ipv4.ip_forward=1

Appliquez les paramètres :

sysctl -p

1.4 Mettons en place un pare-feu, dans notre cas iptables

apt install iptables

1.4.1 Ajouter des règles, où eth0 est le nom de l'interface externe

iptables -A INPUT -p gre -j ACCEPT
iptables -A INPUT -m tcp -p tcp --dport 1723 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

1.4.2 Activation du réseau local entre les clients connectés, où eth0 est le nom de l'interface externe

iptables --table nat --append POSTROUTING --out-interface ppp0 -j MASQUERADE
iptables -I INPUT -s 10.10.10.0/24 -i ppp0 -j ACCEPT
iptables --append FORWARD --in-interface eth0 -j ACCEPT

1.4.3 Désactivation de l'accès à Internet via le serveur VDS

Si nécessaire, lorsque le but est de combiner les réseaux locaux et d'accéder aux équipements locaux pour que les appareils continuent à utiliser leur Internet, ajoutez une règle où eth0 est l'interface avec l'ip externe.

iptables -I FORWARD -s 10.10.10.0/24 -o eth0 -j DROP

Faites attention à la partie client, vous devrez décocher l'option Utiliser la passerelle par défaut sur le réseau distant. Nous fédérerons les réseaux locaux, mais l'accès à Internet se fera via un fournisseur local, et non via un serveur VDS.

1.4.4 Sauvons les règles

iptables-save > /etc/iptables.conf

1.4.5 Ajouter des règles au démarrage, ajouter une ligne à la fin du fichier /etc/network/interfaces

pre-up /sbin/iptables-restore < /etc/iptables.conf

1.5 Ajouter des utilisateurs au fichier /etc/ppp/chap-secrets

Dans cet exemple, l'utilisateur 1 se voit attribuer n'importe quelle adresse IP libre, tandis que l'utilisateur 2 recevra toujours une adresse IP statique.

user1	pptpd	password1	"*"
user2	pptpd	password2	"10.10.10.10"

1.6 Ajouter au démarrage et appliquer les paramètres

systemctl enable pptpd
service pptpd restart

2. Afficher les connexions actives

Vous pouvez voir toutes les connexions actives et leurs adresses IP à l'aide de commandes.

2.1 Utiliser ifconfig

ppp0 : flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1396
         inet 10.10.10.1 masque de réseau 255.255.255.255 destination 10.10.10.2
         ppp txqueuelen 3 (protocole point à point)
         Paquets RX 323 octets 49503 (48,3 Ko)
         Erreurs RX 0 abandonné 0 dépassement 0 image 0
         Paquets TX 22 octets 626 (626,0 B)
         Erreurs TX 0 abandonné 0 dépassement 0 transporteur 0 collision 0

ppp1 : flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1396
         inet 10.10.10.1 masque de réseau 255.255.255.255 destination 10.10.10.10
         ppp txqueuelen 3 (protocole point à point)
         Paquets RX 24 octets 896 (896,0 B)
         Erreurs RX 0 abandonné 0 dépassement 0 image 0
         Paquets TX 24 octets 890 (890,0 B)
         Erreurs TX 0 abandonné 0 dépassement 0 transporteur 0 collision 0

2.2 Utiliser l'itinéraire

10.10.10.2      0.0.0.0         255.255.255.255 UH    0      0        0 ppp0
10.10.10.10     0.0.0.0         255.255.255.255 UH    0      0        0 ppp1

2.3 Utilisation du statut pptpd du service

 pptpd.service - PoPToP Point to Point Tunneling Server
     Loaded: loaded (/lib/systemd/system/pptpd.service; enabled; preset: enabled)
     Active: active (running) since Thu 2024-03-07 13:42:51 MSK; 4h 5min ago
       Docs: man:pptpd(8)
             man:pptpctrl(8)
             man:pptpd.conf(5)
   Main PID: 480 (pptpd)
      Tasks: 5 (limit: 1099)
     Memory: 4.3M
        CPU: 9.462s
     CGroup: /system.slice/pptpd.service
             ├─480 /usr/sbin/pptpd --fg
             ├─605 "pptpd [123.123.123.123:97EE - 0400]"
             ├─606 /usr/sbin/pppd local file /etc/ppp/pptpd-options 115200 10.10.10.1:10.10.10.3 ipparam 123.123.123.123 plugin /usr/lib/pptpd/pptpd-logwtmp.so pptpd-original-ip 123.123.123.123>
             ├─986 "pptpd [123.123.123.123:D114 - 0580]"
             └─987 /usr/sbin/pppd local file /etc/ppp/pptpd-options 115200 10.10.10.1:10.10.10.2 ipparam 123.123.123.123 plugin /usr/lib/pptpd/pptpd-logwtmp.so pptpd-original-ip 123.123.123.123>

Le serveur est configuré et prêt pour les connexions.

Voir également:





Aucun commentaire pour l'instant