From 8110a9a3eb3280092a69d916cd135aedcdfe4120 Mon Sep 17 00:00:00 2001 From: Aldo Cortesi Date: Wed, 4 Apr 2012 11:24:58 +1200 Subject: Start prepping docs for 0.8 Also add an interactive upstream-cert option to mitmproxy, and repair help for R shortcut. --- doc-src/_layout.html | 2 +- doc-src/_websitelayout.html | 2 +- doc-src/index.html | 2 ++ doc-src/index.py | 2 ++ doc-src/mitmproxy.html | 31 +++++++++++++++++-------------- doc-src/replacements.html | 0 doc-src/upstreamcerts.html | 15 +++++++++++++++ 7 files changed, 38 insertions(+), 16 deletions(-) create mode 100644 doc-src/replacements.html create mode 100644 doc-src/upstreamcerts.html (limited to 'doc-src') diff --git a/doc-src/_layout.html b/doc-src/_layout.html index f48f1e58..89b14f59 100644 --- a/doc-src/_layout.html +++ b/doc-src/_layout.html @@ -14,7 +14,7 @@ $!nav if this.title!="docs" else ""!$ -

mitmproxy 0.7 docs

+

mitmproxy 0.8 docs

diff --git a/doc-src/_websitelayout.html b/doc-src/_websitelayout.html index 061e8504..ab079c0a 100644 --- a/doc-src/_websitelayout.html +++ b/doc-src/_websitelayout.html @@ -29,7 +29,7 @@
$!nav if this.title!="docs" else ""!$ - $!title if this.title!="docs" else "

mitmproxy 0.7 docs

"!$ + $!title if this.title!="docs" else "

mitmproxy 0.8 docs

"!$ $!body!$
diff --git a/doc-src/index.html b/doc-src/index.html index 557deafd..3caf41eb 100644 --- a/doc-src/index.html +++ b/doc-src/index.html @@ -9,6 +9,8 @@
  • Server-side replay
  • Sticky cookies and auth
  • Reverse proxy mode
  • +
  • Upstream Certs
  • +
  • Replacements
  • Anticache
  • Filter expressions
  • diff --git a/doc-src/index.py b/doc-src/index.py index a2296e70..17fa8b19 100644 --- a/doc-src/index.py +++ b/doc-src/index.py @@ -73,6 +73,8 @@ pages = [ Page("clientreplay.html", "Client-side replay"), Page("serverreplay.html", "Server-side replay"), Page("sticky.html", "Sticky cookies and auth"), + Page("upstreamcerts.html", "Upstream Certs"), + Page("replacements.html", "Replacements"), Page("reverseproxy.html", "Reverse proxy mode"), Page("anticache.html", "Anticache"), Page("filters.html", "Filter expressions"), diff --git a/doc-src/mitmproxy.html b/doc-src/mitmproxy.html index 3910aa2d..5d7d15d9 100644 --- a/doc-src/mitmproxy.html +++ b/doc-src/mitmproxy.html @@ -45,19 +45,22 @@ which shows you exactly what's there without any changes. You can change modes using the _m_ key. -## Key/Value Editor +## Grid Editor -It turns out that ordered key/value data is pervasive in HTTP communications, -so mitmproxy has a built-in editor to help edit and create this kind of data. -There are three ways to reach the __K/V Editor__ from the __Flow View__ screen: +Much of the data that we'd like to interact with in mitmproxy is structured. +For instance, headers, queries and form data can all be thought of as a list of +key/value pairs. Mitmproxy has a built-in editor that lays this type of data +out in a grid for easy manipulation. -- Editing request or response headers (_e_ for edit, then _h_ for headers) -- Editing a query string (_e_ for edit, then _q_ for query) -- Editing a URL-encoded form (_e_ for edit, then _f_ for form) +At the moment, the Grid Editor is used in four parts of mitmproxy: -If there is is no form or query string, an empty __K/V Editor__ will be started -to let you add one. Here is the __K/V Editor__ showing the headers from a -request: +- Editing request or response headers (_e_ for edit, then _h_ for headers in flow view) +- Editing a query string (_e_ for edit, then _q_ for query in flow view) +- Editing a URL-encoded form (_e_ for edit, then _f_ for form in flow view) +- Editing replacement patterns (_R_ globally) + +If there is is no data, an empty editor will be started to let you add some. +Here is the editor showing the headers from a request: @@ -67,10 +70,10 @@ you are in edit mode for the specified field: -Modify the field as desired, and press escape or enter to exit edit mode when -you're done. You can also add a key/value pair (_a_ key), delete a pair (_d_ -key), spawn an external editor on a field (_e_ key). Be sure to consult the -context-sensitive help (_?_ key) for more. +Modify the field as desired, then press escape to exit edit mode when you're +done. You can also add a row (_a_ key), delete a row (_d_ key), spawn an +external editor on a field (_e_ key). Be sure to consult the context-sensitive +help (_?_ key) for more. # Example: Interception diff --git a/doc-src/replacements.html b/doc-src/replacements.html new file mode 100644 index 00000000..e69de29b diff --git a/doc-src/upstreamcerts.html b/doc-src/upstreamcerts.html new file mode 100644 index 00000000..804286d9 --- /dev/null +++ b/doc-src/upstreamcerts.html @@ -0,0 +1,15 @@ +- command-line: _--upstream-cert_ +- mitmproxy shortcut: _o_, then _u_ + +In its normal mode of operation, mitmproxy will use the target domain specified +in a client's proxy request to generate an interception certificate. When +__upstream-cert__ mode is activated a different procedure is followed: we first +connect to the specified remote server to retrieve the server's __Common Name__ +and __Subject Alternative Names__. This feature is especially useful when the +client specifies an IP address rather than a host name in the proxy request. If +this is the case, we can only generate a certificate if we can establish the +__CN__ and __SANs__ from the upstream server. + +Note that __upstream-cert__ mode does not work when the remote server relies on +[Server Name Indication](http://en.wikipedia.org/wiki/Server_Name_Indication). +Luckily, SNI is still not very widely used. -- cgit v1.2.3