Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente | Prochaine révision Les deux révisions suivantes | ||
utilisateurs:hypathie:tutos:proxy-transparent [18/10/2014 06:19] Hypathie [configuration d'iptables (NAT)] |
utilisateurs:hypathie:tutos:proxy-transparent [18/10/2014 06:20] Hypathie [configuration d'iptables (NAT)] |
||
---|---|---|---|
Ligne 284: | Ligne 284: | ||
- | ===== configuration d'iptables (NAT) ===== | ||
- | Nous n'avons pour l'instant que l'IP masquerade mis en place : | ||
- | |||
- | |||
- | * Il faut ajouter : | ||
- | |||
- | <code root> | ||
- | iptables -t nat -A PREROUTING -s 192.168.0.1 -p tcp --dport 80 -j ACCEPT | ||
- | iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT\ | ||
- | --to-destination 192.168.0.1:3128 | ||
- | iptables -t mangle -A PREROUTING -p tcp --dport 3128 -j DROP | ||
- | iptables -t nat -A PREROUTING -i eth1 -s 192.168.1.0/24\ | ||
- | -p tcp --dport 80 -j REDIRECT --to-port 3128 | ||
- | iptables -t nat -I PREROUTING 1 -i eth1 -s 192.168.1.0/24\ | ||
- | -p tcp -m tcp --dport 80 -j ACCEPT | ||
- | </code> | ||
- | |||
- | * Ce qui donne : | ||
- | <code root>iptables -L -t nat</code> | ||
- | |||
- | <code>Chain PREROUTING (policy ACCEPT) | ||
- | target prot opt source destination | ||
- | ACCEPT tcp -- debian-serveur.mondomaine.hyp anywhere tcp dpt:http | ||
- | DNAT tcp -- anywhere anywhere tcp dpt:http to:192.168.0.1:3128 | ||
- | REDIRECT tcp -- 192.168.1.0/24 anywhere tcp dpt:http redir ports 3128 | ||
- | |||
- | Chain INPUT (policy ACCEPT) | ||
- | target prot opt source destination | ||
- | |||
- | Chain OUTPUT (policy ACCEPT) | ||
- | target prot opt source destination | ||
- | |||
- | Chain POSTROUTING (policy ACCEPT) | ||
- | target prot opt source destination | ||
- | MASQUERADE all -- anywhere anywhere</code> | ||
- | |||
- | <code root>iptables -L PREROUTING -t mangle</code> | ||
- | <code>iptables -L -t mangle | ||
- | Chain PREROUTING (policy ACCEPT) | ||
- | target prot opt source destination | ||
- | DROP tcp -- anywhere anywhere tcp dpt:3128</code> | ||
- | |||
- | <note> | ||
- | **Pour mangle**, une petite citation extrait du [[http://wiki.squid-cache.org/ConfigExamples/Intercept/LinuxDnat|site officiel de squid]] : | ||
- | |||
- | Due to the NAT security vulnerabilities it is also a very good idea | ||
- | to block external access to the internal receiving port. | ||
- | This has to be done in the mangle part of iptables before DNAT happens | ||
- | so that intercepted traffic does not get dropped. | ||
- | |||
- | **Par contre, concernant les deux interfaces, il faut lancer les commandes iptables pour le DNAT sur l'interface côté lan, et sur l'IP du serveur proxy du réseau côté web.** | ||
- | |||
- | </note> | ||
- | ===Configurer /etc/sysctl.conf === | ||
- | * Pour masquerade, vérifier que les lignes suivantes comportes ces valeurs : | ||
- | |||
- | <code> | ||
- | # Controls IP packet forwarding | ||
- | net.ipv4.ip_forward = 1 | ||
- | |||
- | # Controls source route verification | ||
- | net.ipv4.conf.default.rp_filter = 0 | ||
- | </code> | ||
- | * Faire rendre en compte une éventuelle modification : | ||
- | <code root>sysctl -p</code> | ||
=====Vérifications==== | =====Vérifications==== |