Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 10-12-2017 17:21:54

ztheoz
Membre
Distrib. : Debian Stretch
Noyau : Linux 4.9.0-3-amd64
Inscription : 12-04-2017

Convertir une connection VPN en HTTP proxy

Bonjour,
j'aimerais utiliser un un packet sous debian à travers un proxy, mais ce dernier n'accepte que les proxy HTTP, or je n'en n'ai pas. Je n'ai à ma disposition qu'une connexion VPN et un proxy SOCKS 5.
Je me demandais s'il était possible d'héberger un proxy HTTP sur mon serveur dont les données passeraient à travers un tunnel VPN.
Comme ça j'ai un proxy du type localhost:8080 dont les données sont redirigées à travers une connexion VPN.
Cela est-il faisable?
Merci!

Hors ligne

#2 10-12-2017 17:24:51

raleur
Membre
Inscription : 03-10-2014

Re : Convertir une connection VPN en HTTP proxy

Oui, bien sûr.

En ligne

#3 10-12-2017 17:47:32

ztheoz
Membre
Distrib. : Debian Stretch
Noyau : Linux 4.9.0-3-amd64
Inscription : 12-04-2017

Re : Convertir une connection VPN en HTTP proxy

raleur a écrit :

Oui, bien sûr.



D'accord, je pensais utiliser Tinyproxy, cela fera-t-il l'affaire ou faut-il que j'en prenne un autre?

Dernière modification par ztheoz (10-12-2017 17:47:52)

Hors ligne

#4 10-12-2017 18:20:27

raleur
Membre
Inscription : 03-10-2014

Re : Convertir une connection VPN en HTTP proxy

Aucune idée. Je n'y connais pas grand-chose en proxy. Mais si tu veux des conseils tu devrais expliquer pour quel usage tu as besoin d'un proxy.

Dernière modification par raleur (10-12-2017 18:20:41)

En ligne

#5 10-12-2017 19:12:42

ztheoz
Membre
Distrib. : Debian Stretch
Noyau : Linux 4.9.0-3-amd64
Inscription : 12-04-2017

Re : Convertir une connection VPN en HTTP proxy

Bon alors j'ai crée un proxy avec tinyproxy, mais il faudrait que je force tous les packets passant par le proxy vers l'interface tun0 et je n'y arrive pas.
Tinyproxy utilise un utilisateur spécifique, tinyproxy, et j'ai donc essayé de forcer tous les packets de cet utilisateur vers tun0, sans succès, les commandes ne devaient pas être bonnes.
Quelqu'un connait la manip à suivre?
Merci

Hors ligne

#6 10-12-2017 20:04:15

raleur
Membre
Inscription : 03-10-2014

Re : Convertir une connection VPN en HTTP proxy

ztheoz a écrit :

j'ai donc essayé de forcer tous les packets de cet utilisateur vers tun0


Comment ?
Quel est le contenu de la table de routage actuelle ?

ip route show table all

Dernière modification par raleur (10-12-2017 21:19:47)

En ligne

#7 10-12-2017 21:04:32

ztheoz
Membre
Distrib. : Debian Stretch
Noyau : Linux 4.9.0-3-amd64
Inscription : 12-04-2017

Re : Convertir une connection VPN en HTTP proxy

raleur a écrit :

Comment ?



iptables -t mangle -A OUTPUT -m owner --uid-owner 125 -j MARK --set-mark 2
ip rule add fwmark 2 table 3
ip route add default dev tun0 via 10.8.10.6 scope link metric 1024
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE



raleur a écrit :

Quelle est le contenu de la table de routage actuelle ?

ip route show table all



default via 192.168.1.1 dev enp9s0
default via 10.21.10.6 dev tun0 scope link metric 1024
10.21.10.5 dev tun0 proto kernel scope link src 10.21.10.6
169.254.0.0/16 dev enp9s0 scope link metric 1000
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1
192.168.1.0/24 dev enp9s0 proto kernel scope link src 192.168.1.17
local 10.21.10.6 dev tun0 table local proto kernel scope host src 10.21.10.6
broadcast 127.0.0.0 dev lo table local proto kernel scope link src 127.0.0.1
local 127.0.0.0/8 dev lo table local proto kernel scope host src 127.0.0.1
local 127.0.0.1 dev lo table local proto kernel scope host src 127.0.0.1
broadcast 127.255.255.255 dev lo table local proto kernel scope link src 127.0.0.1
broadcast 172.17.0.0 dev docker0 table local proto kernel scope link src 172.17.0.1
local 172.17.0.1 dev docker0 table local proto kernel scope host src 172.17.0.1
broadcast 172.17.255.255 dev docker0 table local proto kernel scope link src 172.17.0.1
broadcast 192.168.1.0 dev enp9s0 table local proto kernel scope link src 192.168.1.17
local 192.168.1.17 dev enp9s0 table local proto kernel scope host src 192.168.1.17
broadcast 192.168.1.255 dev enp9s0 table local proto kernel scope link src 192.168.1.17
2a01:cb08:896d:ce00::/64 dev enp9s0 proto kernel metric 256  expires 887sec pref medium
fe80::/64 dev enp9s0 proto kernel metric 256  pref medium
fe80::/64 dev vethc8100cb proto kernel metric 256  pref medium
fe80::/64 dev docker0 proto kernel metric 256  pref medium
fe80::/64 dev tun0 proto kernel metric 256  pref medium
default via fe80::8ef8:13ff:fe03:a12 dev enp9s0 proto ra metric 1024  expires 167sec hoplimit 64 pref high
unreachable default dev lo proto kernel metric 4294967295  error -101 pref medium
local ::1 dev lo table local proto none metric 0  pref medium
local 2a01:cb08:896d:ce00:ea40:f2ff:fe75:7d77 dev lo table local proto none metric 0  pref medium
local fe80::42:d5ff:fe46:ed35 dev lo table local proto none metric 0  pref medium
local fe80::c73:7fff:fe4c:ec27 dev lo table local proto none metric 0  pref medium
local fe80::357c:ba4b:4458:4513 dev lo table local proto none metric 0  pref medium
local fe80::ea40:f2ff:fe75:7d77 dev lo table local proto none metric 0  pref medium
ff00::/8 dev enp9s0 table local metric 256  pref medium
ff00::/8 dev vethc8100cb table local metric 256  pref medium
ff00::/8 dev docker0 table local metric 256  pref medium
ff00::/8 dev tun0 table local metric 256  pref medium
unreachable default dev lo proto kernel metric 4294967295  error -101 pref medium

Dernière modification par ztheoz (10-12-2017 22:31:32)

Hors ligne

#8 10-12-2017 21:16:45

raleur
Membre
Inscription : 03-10-2014

Re : Convertir une connection VPN en HTTP proxy

Tu as oublié de spécifier la table 3 dans ta route.
L'interface de sortie indiquée dans la règle de MASQUERADE est incorrecte.
Ce serait plus parlant de spécifier le nom de l'utilisateur plutôt que l'UID.

Dernière modification par raleur (10-12-2017 21:19:13)

En ligne

#9 10-12-2017 22:33:36

ztheoz
Membre
Distrib. : Debian Stretch
Noyau : Linux 4.9.0-3-amd64
Inscription : 12-04-2017

Re : Convertir une connection VPN en HTTP proxy

raleur a écrit :

Tu as oublié de spécifier la table 3 dans ta route.
L'interface de sortie indiquée dans la règle de MASQUERADE est incorrecte.
Ce serait plus parlant de spécifier le nom de l'utilisateur plutôt que l'UID.



Euh du coup ça donne quoi une fois ajouté, car je ne m'y connais pas trop dans le routage kernal_panic.gif?
Merci !

Hors ligne

#10 11-12-2017 21:55:57

raleur
Membre
Inscription : 03-10-2014

Re : Convertir une connection VPN en HTTP proxy

Un petit effort, essaie au moins de trouver par toi-même. Il suffit de remplacer les valeurs incorrectes que j'ai mentionnées par les valeurs logiques pour ta configuration.

En ligne

#11 12-12-2017 18:40:04

ztheoz
Membre
Distrib. : Debian Stretch
Noyau : Linux 4.9.0-3-amd64
Inscription : 12-04-2017

Re : Convertir une connection VPN en HTTP proxy

Bon, alors j'ai changé les commandes: maintenant j'entre ça :

iptables -t mangle -A OUTPUT -m owner --uid-owner 118 -j MARK --set-mark 2
ip rule add fwmark 2 table 3
ip route add default dev tun0 via 10.95.10.6 scope link metric 1024 table 3
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE


(je garde l'uid pour le moment, je changerais ça après)

Le problème est que quand j'entre

sudo -u tinyproxy curl ifconfig.me


ça me retourne

curl: (6) Could not resolve host: ifconfig.me



ou encore

sudo -u tinyproxy ping google.com


ping: google.com: Temporary failure in name resolution



Portant le tunnel est encore up.
Les commandes que j'ai entrés sont elles fausses, ou est-ce un autre problème?
Merci.

Hors ligne

#12 13-12-2017 01:21:07

raleur
Membre
Inscription : 03-10-2014

Re : Convertir une connection VPN en HTTP proxy

Quel(s) DNS utilises-tu dans /etc/resolv.conf ?

En ligne

#13 13-12-2017 08:04:43

ztheoz
Membre
Distrib. : Debian Stretch
Noyau : Linux 4.9.0-3-amd64
Inscription : 12-04-2017

Re : Convertir une connection VPN en HTTP proxy

raleur a écrit :

Quel(s) DNS utilises-tu dans /etc/resolv.conf ?


Voici le contenu de fichier

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 192.168.1.1
search home
 

Hors ligne

#14 13-12-2017 10:59:45

raleur
Membre
Inscription : 03-10-2014

Re : Convertir une connection VPN en HTTP proxy

Etant donné que c'est aussi l'adresse de passerelle de la route par défaut, je suppose que 192.168.1.1 est l'adresse de la box internet ou d'un routeur qui fait office de serveur DNS. En tout cas c'est une adresse du LAN qui ne doit pas être routée par le VPN. Or la seule route de la table 3 envoie tout par le VPN. Il faut donc dupliquer la route pour le LAN

192.168.1.0/24 dev enp9s0 proto kernel scope link src 192.168.1.17


dans la table de routage 3 :

ip route add 192.168.1.0/24 dev enp9s0 table 3



Ou bien créer une règle de routage placée avant celle du VPN (donc créée après) pour forcer le routage des paquets destinés aux adresses du LAN avec la table de routage normale :

ip rule add to 192.168.1.0/24 table normal



Note bien que les règles et routes ne sont pas persistantes. Une route est détruite quand l'interface correspondante est désactivée. Les règles iptables et règles de routage sont réinitialisées au démarrage.

En ligne

Pied de page des forums