PPTPD erreur port

Bonsoir,
je débute sur Debian et je possède un VPS Debian 8. Je voulais installer PPTPD pour ainsi créer un VPN. J’ai donc suivi un tutoriel sur internet.

Le problème

Lorsque j’essaie de me connecter au VPN, Windows me renvoie une erreur de type le port a été fermé.
Ce problème persiste après plusieurs tentatives avec plusieurs tutoriaux.

Est-ce que quelqu’un a une idée svp?

Tu peux vérifier ta configuration de PPTPD pour voir si c’est bien le port que tu attends que tu as configuré.
Ensuite, tu peux lancer netstat -ltupn | grep -i pptp en tant que root voir si le service se lance, ouvre un port, et le bon.
Ensuite, tu peux vérifier si tu n’as pas une règle iptables (si tu as un doute, envoie le retour de la commande iptables-save) qui bloque ce traffic.
Ensuite, tu peux vérifier que ta machine Windows a bien accès au serveur PPTPD (essaie un petit ping des familles).
Et enfin, tu vérifies bien que tu as mis le bon port dans la configuration de ton client Windows.

Si tu ne comprends rien aux retours de commandes, n’hésite pas à le poster pour demander un avis.

Bonjour,
Déjà quand je fais la première commande pour vérifier le service ça me l’exécute sans me renvoyer de messages donc je suppose que ça marche.

Mais pour les règles iptables y’en à beaucoup trop je pense que je devrais toute les supprimer…Je comprends juste pas comment le faire proprement.

Bonjour.

Non, elle est sensée retourner la liste des ports ouverts pour PPTP, si elle ne retourne rien, ça veut dire deux choses :

  • soit le service ne se lance pas ou n’ouvre pas de port
  • soit le service lance un processus qui ne porte pas le nom “pptp”.

Je ne peux pas t’aider, je ne connais ni l’état actuel de ton système, ni l’état que tu désires obtenir. Pour ton information, sache que les règles iptables appliquées ne reviennent pas toutes seules au redémarrage, à moins qu’un service ou un script ne s’en charge.

Voilà le résultat de iptables-save si ça peut aider

root@AquaVPS:~# iptables-save
# Generated by iptables-save v1.4.21 on Tue Jul 25 10:34:01 2017
*nat
:PREROUTING ACCEPT [8:528]
:POSTROUTING ACCEPT [5:357]
:OUTPUT ACCEPT [5:357]
:AS0_DPFWD_TCP - [0:0]
:AS0_DPFWD_UDP - [0:0]
:AS0_NAT - [0:0]
:AS0_NAT_POST_REL_EST - [0:0]
:AS0_NAT_PRE - [0:0]
:AS0_NAT_PRE_REL_EST - [0:0]
:AS0_NAT_TEST - [0:0]
-A PREROUTING -m state --state RELATED,ESTABLISHED -j AS0_NAT_PRE_REL_EST
-A PREROUTING -d 149.91.88.95/32 -p udp -m udp --dport 1194 -m state --state NEW -j AS0_DPFWD_UDP
-A PREROUTING -d 149.91.88.95/32 -p tcp -m tcp --dport 443 -m state --state NEW -j AS0_DPFWD_TCP
-A POSTROUTING -m state --state RELATED,ESTABLISHED -j AS0_NAT_POST_REL_EST
-A POSTROUTING -m mark --mark 0x2000000/0x2000000 -j AS0_NAT_PRE
-A AS0_DPFWD_TCP -j ACCEPT
-A AS0_DPFWD_TCP -j ACCEPT
-A AS0_DPFWD_UDP -j ACCEPT
-A AS0_DPFWD_UDP -j ACCEPT
-A AS0_NAT -o venet0 -j SNAT --to-source 149.91.88.95
-A AS0_NAT -j ACCEPT
-A AS0_NAT_POST_REL_EST -j ACCEPT
-A AS0_NAT_PRE -m mark --mark 0x8000000/0x8000000 -j AS0_NAT
-A AS0_NAT_PRE -d 169.254.0.0/16 -j AS0_NAT_TEST
-A AS0_NAT_PRE -d 192.168.0.0/16 -j AS0_NAT_TEST
-A AS0_NAT_PRE -d 172.16.0.0/12 -j AS0_NAT_TEST
-A AS0_NAT_PRE -d 10.0.0.0/8 -j AS0_NAT_TEST
-A AS0_NAT_PRE -j AS0_NAT
-A AS0_NAT_PRE_REL_EST -j ACCEPT
-A AS0_NAT_TEST -o as0t+ -j ACCEPT
-A AS0_NAT_TEST -m mark --mark 0x4000000/0x4000000 -j ACCEPT
-A AS0_NAT_TEST -d 172.27.224.0/20 -j ACCEPT
-A AS0_NAT_TEST -j AS0_NAT
COMMIT
# Completed on Tue Jul 25 10:34:01 2017
# Generated by iptables-save v1.4.21 on Tue Jul 25 10:34:01 2017
*raw
:PREROUTING ACCEPT [227:27032]
:OUTPUT ACCEPT [223:32199]
COMMIT
# Completed on Tue Jul 25 10:34:01 2017
# Generated by iptables-save v1.4.21 on Tue Jul 25 10:34:01 2017
*mangle
:PREROUTING ACCEPT [8:528]
:INPUT ACCEPT [203:23289]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [190:25603]
:POSTROUTING ACCEPT [190:25603]
:AS0_MANGLE_PRE_REL_EST - [0:0]
:AS0_MANGLE_TUN - [0:0]
-A PREROUTING -m state --state RELATED,ESTABLISHED -j AS0_MANGLE_PRE_REL_EST
-A PREROUTING -i as0t+ -j AS0_MANGLE_TUN
-A AS0_MANGLE_PRE_REL_EST -j ACCEPT
-A AS0_MANGLE_TUN -j MARK --set-xmark 0x2000000/0xffffffff
-A AS0_MANGLE_TUN -j ACCEPT
COMMIT
# Completed on Tue Jul 25 10:34:01 2017
# Generated by iptables-save v1.4.21 on Tue Jul 25 10:34:01 2017
*filter
:INPUT ACCEPT [8:528]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [190:25603]
:AS0_ACCEPT - [0:0]
:AS0_IN - [0:0]
:AS0_IN_NAT - [0:0]
:AS0_IN_POST - [0:0]
:AS0_IN_PRE - [0:0]
:AS0_IN_ROUTE - [0:0]
:AS0_OUT - [0:0]
:AS0_OUT_LOCAL - [0:0]
:AS0_OUT_POST - [0:0]
:AS0_OUT_S2C - [0:0]
:AS0_WEBACCEPT - [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j AS0_ACCEPT
-A INPUT -i lo -j AS0_ACCEPT
-A INPUT -m mark --mark 0x2000000/0x2000000 -j AS0_IN_PRE
-A INPUT -d 149.91.88.95/32 -p tcp -m state --state NEW -m tcp --dport 915 -j AS0_ACCEPT
-A INPUT -d 149.91.88.95/32 -p tcp -m state --state NEW -m tcp --dport 914 -j AS0_ACCEPT
-A INPUT -d 149.91.88.95/32 -p udp -m state --state NEW -m udp --dport 917 -j AS0_ACCEPT
-A INPUT -d 149.91.88.95/32 -p udp -m state --state NEW -m udp --dport 916 -j AS0_ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j AS0_WEBACCEPT
-A INPUT -d 149.91.88.95/32 -p tcp -m state --state NEW -m tcp --dport 943 -j AS0_WEBACCEPT
-A FORWARD -m state --state RELATED,ESTABLISHED -j AS0_ACCEPT
-A FORWARD -m mark --mark 0x2000000/0x2000000 -j AS0_IN_PRE
-A FORWARD -o as0t+ -j AS0_OUT_S2C
-A OUTPUT -o as0t+ -j AS0_OUT_LOCAL
-A AS0_ACCEPT -j ACCEPT
-A AS0_IN -d 172.27.224.1/32 -j ACCEPT
-A AS0_IN -j AS0_IN_POST
-A AS0_IN_NAT -j MARK --set-xmark 0x8000000/0x8000000
-A AS0_IN_NAT -j ACCEPT
-A AS0_IN_POST -o as0t+ -j AS0_OUT
-A AS0_IN_POST -j DROP
-A AS0_IN_PRE -d 169.254.0.0/16 -j AS0_IN
-A AS0_IN_PRE -d 192.168.0.0/16 -j AS0_IN
-A AS0_IN_PRE -d 172.16.0.0/12 -j AS0_IN
-A AS0_IN_PRE -d 10.0.0.0/8 -j AS0_IN
-A AS0_IN_PRE -j ACCEPT
-A AS0_IN_ROUTE -j MARK --set-xmark 0x4000000/0x4000000
-A AS0_IN_ROUTE -j ACCEPT
-A AS0_OUT -j AS0_OUT_POST
-A AS0_OUT_LOCAL -p icmp -m icmp --icmp-type 5 -j DROP
-A AS0_OUT_LOCAL -j ACCEPT
-A AS0_OUT_POST -j DROP
-A AS0_OUT_S2C -j AS0_OUT
-A AS0_WEBACCEPT -j ACCEPT
COMMIT
# Completed on Tue Jul 25 10:34:01 2017

Après ce que j’aimerais avoir c’est un serveur VPN.
Le support m’a dit que le réseau de mon vps n’est pas géré par eth0. Est-ce que c’est possible que ça empêche pptpd de fonctionner correctement ?

Aucune idée, envoie-nous le retour de ip a et la configuration de PPTP, on pourra te dire.

Bonsoir,
Désolé du retard, voici ce que me donne ip a

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: venet0: <BROADCAST,POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN 
    link/void 
    inet 127.0.0.2/32 scope host venet0
    inet 149.91.88.95/32 brd 149.91.88.95 scope global venet0:0

Ah, ben, ton interface, c’est venet0. Tu dois sûrement remplacer les occurence de eth0 de ta configuration de PPTP par venet0. Fais le test et dis-nous quoi.

Bon j’ai essayé de faire ce que j’ai pu
j’ai renplacé
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
par
iptables -t nat -A POSTROUTING -o venet0 -j MASQUERADE

Mais je n’arrive toujours pas à me connecter.

J’ai essayé de refaire la commande du début voilà le résultat

root@AquaVPS:~# netstat -alpn | grep :1723 tcp 0 0 0.0.0.0:1723 0.0.0.0:* LISTEN 471/pptpd tcp 0 0 149.91.88.95:1723 31.222.116.31:49246 TIME_WAIT -

Bon, a priori, ça ne vient pas de la configuration réseau vu que le service écoute sur le port 1723 et qu’un client a pu établir une connexion TCP.
Petit question, l’adresse IP que tu as collé comme 31.222.116.31 correspond à l’adresse IP du client ?

Sinon, à part :

Pourquoi tu fais du NAT sur ton VPS ? Il est routeur ?

Oui l’IP c’est bien de celle là que j’essaie de me connecter au vpn.

Sinon mon vps je le paye tous les mois chez pulseheberg donc il me semble qu’il soit routeur à moins que je dise une énorme bêtise.

Si, c’est une bêtise, tu n’as que deux interfaces, lo et venet0. Il te faut au moins une interface de plus (ou une adresse IP secondaire) pour être routeur.
Du coup, tu peux virer toutes les règles de NAT.

D’accord mais le problème c’est que dans tous les tutos ils parlent de nat justement. Donc ça risque de pas marcher si je les mets pas ?

C’est une utilisation assez courante pour une machine qui est serveur VPN.

Je ne vois pas le rapport.

Il y aura une interface ppp* lorsqu’un VPN PPTP sera établi.

L’interface au réseau local est venet0. Alors d’où sortent toutes ces règles iptables faisant référence à des interfaces nommées as0t* ?

Au passage, ce jeu de règles iptables me semble un tantinet compliqué. A quoi sert-il ?

Pour le as0t je n’en sais vraiment rien.

Pour les règles iptables j’ai lu que c’était pour le routage et la translation d’adresse.
Après je peux pas vous en dire plus je débute sur debian 🤷

À mon humble avis, tu devrais virer toutes les règles de NAT qui concernent le VPN et tenter déjà d’établir une liaison PPTP. Et tu verras après pour le NAT.

Tu veux dire que tu as appliqué ce jeu de règles sans le comprendre ? Il ne faut jamais faire cela. Être débutant n’est pas une excuse. On ne doit jamais exécuter une commande qu’on ne comprend pas car c’est le meilleur moyen de faire des bêtises.

Ce jeu de règles contient bien plus que ce qui est nécessaire pour le NAT et le routage. Une simple règle de masquerading serait suffisante :

iptables -t nat -A POSTROUTING -o venet0 -j MASQUERADE

Même en faisant cette commande je n’arrive toujours pas à me connecter.

EDIT:
Quand je me connecte, ça me met connexion… pendant 10-20 secondes puis ça me dit que ça a pas marché. Peut-être que ça aidera.

bonsoir,
J’ai enfin compris d’ou venait le problème:
aqua@AquaVPS:~$ ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: venet0: <BROADCAST,POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN link/void inet 127.0.0.2/32 scope host venet0 inet 149.91.88.95/32 brd 149.91.88.95 scope global venet0:0
Comme vous pouvez le voir, il est écrit que mon addresse ip locale est 127.0.0.1 et 127.0.0.2
Donc si j’ai compris le problème vient du fait que je n’ai pas d’ip locale.