aboutsummaryrefslogtreecommitdiffstats
path: root/doc-src/transparent/linux.html
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2014-01-27 14:16:23 +1300
committerAldo Cortesi <aldo@nullcube.com>2014-01-27 14:16:23 +1300
commitf47d89ff4e710f6d2df755fe526e91a5cf236cfa (patch)
tree61c35a397e569619ae7022fb006279d86a0d88eb /doc-src/transparent/linux.html
parent47c7e37723b416605f232cd85818f41d865a9f85 (diff)
downloadmitmproxy-f47d89ff4e710f6d2df755fe526e91a5cf236cfa.tar.gz
mitmproxy-f47d89ff4e710f6d2df755fe526e91a5cf236cfa.tar.bz2
mitmproxy-f47d89ff4e710f6d2df755fe526e91a5cf236cfa.zip
Revert "Move the doc tree out into its own repo."
This reverts commit 8f88fcedd601c0033b4469b66626a83011879baf.
Diffstat (limited to 'doc-src/transparent/linux.html')
-rw-r--r--doc-src/transparent/linux.html43
1 files changed, 43 insertions, 0 deletions
diff --git a/doc-src/transparent/linux.html b/doc-src/transparent/linux.html
new file mode 100644
index 00000000..96b7132a
--- /dev/null
+++ b/doc-src/transparent/linux.html
@@ -0,0 +1,43 @@
+On Linux, mitmproxy integrates with the iptables redirection mechanism to
+achieve transparent mode.
+
+<ol class="tlist">
+
+ <li> <a href="@!urlTo('ssl.html')!@">Install the mitmproxy
+ certificates on the test device</a>. </li>
+
+ <li> Enable IP forwarding:
+
+ <pre class="terminal">sysctl -w net.ipv4.ip_forward=1</pre>
+
+ You may also want to consider enabling this permanently in
+ <b>/etc/sysctl.conf</b>.
+
+ </li>
+
+ <li> Create an iptables ruleset that redirects the desired traffic to the
+ mitmproxy port. Details will differ according to your setup, but the
+ ruleset should look something like this:
+
+<pre class="terminal">iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
+iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 8080</pre>
+
+ </li>
+
+ <li> Fire up mitmproxy. You probably want a command like this:
+
+ <pre class="terminal">mitmproxy -T --host</pre>
+
+ The <b>-T</b> flag turns on transparent mode, and the <b>--host</b>
+ argument tells mitmproxy to use the value of the Host header for URL
+ display.
+
+ </li>
+
+ <li> Finally, configure your test device to use the host on which mitmproxy is
+ running as the default gateway.</li>
+
+</ol>
+
+
+For a detailed walkthrough, have a look at the <a href="@!urlTo('tutorials/transparent-dhcp.html')!@"><i>Transparently proxify virtual machines</i></a> tutorial.