mirror of
https://github.com/Grasscutters/mitmproxy.git
synced 2024-11-26 10:16:27 +00:00
Docs and Readme
- Don't keep a full duplicate readme just for pypi. Pypi really needs to learn to read markdown. - Style and content adjustments
This commit is contained in:
parent
8b768983a7
commit
e93b343ac4
23
README.mkd
23
README.mkd
@ -1,9 +1,9 @@
|
|||||||
__mitmproxy__ is an SSL-capable man-in-the-middle proxy for HTTP. It provides a
|
__mitmproxy__ is an interactive, SSL-capable man-in-the-middle proxy for HTTP
|
||||||
console interface that allows traffic flows to be inspected and edited on the
|
with a console interface.
|
||||||
fly.
|
|
||||||
|
|
||||||
__mitmdump__ is the command-line version of mitmproxy, with the same
|
__mitmdump__ is the command-line version of mitmproxy. Think tcpdump for HTTP.
|
||||||
functionality but without the user interface. Think tcpdump for HTTP.
|
|
||||||
|
__libmproxy__ is the library that mitmproxy and mitmdump are built on.
|
||||||
|
|
||||||
Complete documentation and a set of practical tutorials is included in the
|
Complete documentation and a set of practical tutorials is included in the
|
||||||
distribution package, and is also available at
|
distribution package, and is also available at
|
||||||
@ -18,14 +18,15 @@ Features
|
|||||||
- Replay the client-side of an HTTP conversations.
|
- Replay the client-side of an HTTP conversations.
|
||||||
- Replay HTTP responses of a previously recorded server.
|
- Replay HTTP responses of a previously recorded server.
|
||||||
- Reverse proxy mode to forward traffic to a specified server.
|
- Reverse proxy mode to forward traffic to a specified server.
|
||||||
|
- Transparent proxy mode on OSX and Linux.
|
||||||
- Make scripted changes to HTTP traffic using Python.
|
- Make scripted changes to HTTP traffic using Python.
|
||||||
- SSL certificates for interception are generated on the fly.
|
- SSL certificates for interception are generated on the fly.
|
||||||
|
- And much, much more.
|
||||||
|
|
||||||
Download
|
Download
|
||||||
--------
|
--------
|
||||||
|
|
||||||
Releases and rendered documentation can be found on the mitmproxy website:
|
Releases and documentation can be found on the mitmproxy website:
|
||||||
|
|
||||||
[mitmproxy.org](http://mitmproxy.org)
|
[mitmproxy.org](http://mitmproxy.org)
|
||||||
|
|
||||||
@ -42,7 +43,7 @@ Come join us in the #mitmproxy channel on the OFTC IRC network
|
|||||||
|
|
||||||
We also have a mailing list, hosted here:
|
We also have a mailing list, hosted here:
|
||||||
|
|
||||||
http://groups.google.com/group/mitmproxy
|
[groups.google.com/group/mitmproxy](http://groups.google.com/group/mitmproxy)
|
||||||
|
|
||||||
|
|
||||||
Requirements
|
Requirements
|
||||||
@ -51,17 +52,17 @@ Requirements
|
|||||||
* [Python](http://www.python.org) 2.7.x.
|
* [Python](http://www.python.org) 2.7.x.
|
||||||
* [PyOpenSSL](http://pypi.python.org/pypi/pyOpenSSL) 0.13 or newer.
|
* [PyOpenSSL](http://pypi.python.org/pypi/pyOpenSSL) 0.13 or newer.
|
||||||
* [pyasn1](http://pypi.python.org/pypi/pyasn1) 0.1.2 or newer.
|
* [pyasn1](http://pypi.python.org/pypi/pyasn1) 0.1.2 or newer.
|
||||||
* [urwid](http://excess.org/urwid/) version 0.9.8 or newer.
|
* [urwid](http://excess.org/urwid/) version 1.1 or newer.
|
||||||
* [PIL](http://www.pythonware.com/products/pil/) version 1.1 or newer.
|
* [PIL](http://www.pythonware.com/products/pil/) version 1.1 or newer.
|
||||||
* [lxml](http://lxml.de/) version 2.3 or newer.
|
* [lxml](http://lxml.de/) version 2.3 or newer.
|
||||||
* [netlib](http://pypi.python.org/pypi/netlib) 0.1 or newer.
|
* [netlib](http://pypi.python.org/pypi/netlib) 0.2.2 or newer.
|
||||||
|
|
||||||
The following auxiliary components may be needed if you plan to hack on
|
The following auxiliary components may be needed if you plan to hack on
|
||||||
mitmproxy:
|
mitmproxy:
|
||||||
|
|
||||||
* The test suite uses the [nose](http://readthedocs.org/docs/nose/en/latest/) unit testing
|
* The test suite uses the [nose](http://readthedocs.org/docs/nose/en/latest/) unit testing
|
||||||
framework and requires [human_curl](https://github.com/Lispython/human_curl) and
|
framework and requires [human_curl](https://github.com/Lispython/human_curl) and
|
||||||
[pathod](http://pypi.python.org/pypi/pathod).
|
[pathod](http://pathod.org).
|
||||||
* Rendering the documentation requires [countershape](http://github.com/cortesi/countershape).
|
* Rendering the documentation requires [countershape](http://github.com/cortesi/countershape).
|
||||||
|
|
||||||
__mitmproxy__ is tested and developed on OSX, Linux and OpenBSD. Windows is not
|
__mitmproxy__ is tested and developed on OSX, Linux and OpenBSD. Windows is not
|
||||||
|
83
README.txt
83
README.txt
@ -1,84 +1,11 @@
|
|||||||
**mitmproxy** is an SSL-capable man-in-the-middle proxy for HTTP. It provides a
|
**mitmproxy** is an interactive, SSL-capable man-in-the-middle proxy for HTTP
|
||||||
console interface that allows traffic flows to be inspected and edited on the
|
with a console interface.
|
||||||
fly.
|
|
||||||
|
|
||||||
**mitmdump** is the command-line version of mitmproxy, with the same
|
**mitmdump** is the command-line version of mitmproxy. Think tcpdump for HTTP.
|
||||||
functionality but without the user interface. Think tcpdump for HTTP.
|
|
||||||
|
**libmproxy** is the library that mitmproxy and mitmdump are built on.
|
||||||
|
|
||||||
Complete documentation and a set of practical tutorials is included in the
|
Complete documentation and a set of practical tutorials is included in the
|
||||||
distribution package, and is also available at mitmproxy.org_.
|
distribution package, and is also available at mitmproxy.org_.
|
||||||
|
|
||||||
|
|
||||||
Features
|
|
||||||
--------
|
|
||||||
|
|
||||||
- Intercept HTTP requests and responses and modify them on the fly.
|
|
||||||
- Save complete HTTP conversations for later replay and analysis.
|
|
||||||
- Replay the client-side of an HTTP conversations.
|
|
||||||
- Replay HTTP responses of a previously recorded server.
|
|
||||||
- Reverse proxy mode to forward traffic to a specified server.
|
|
||||||
- Make scripted changes to HTTP traffic using Python.
|
|
||||||
- SSL certificates for interception are generated on the fly.
|
|
||||||
|
|
||||||
|
|
||||||
Download
|
|
||||||
--------
|
|
||||||
|
|
||||||
Releases and rendered documentation can be found on the mitmproxy website:
|
|
||||||
|
|
||||||
mitmproxy.org_
|
|
||||||
|
|
||||||
Source is hosted on github:
|
|
||||||
|
|
||||||
`github.com/cortesi/mitmproxy`_
|
|
||||||
|
|
||||||
|
|
||||||
Community
|
|
||||||
---------
|
|
||||||
|
|
||||||
Come join us in the #mitmproxy channel on the OFTC IRC network
|
|
||||||
(irc.oftc.net, port 6667).
|
|
||||||
|
|
||||||
We also have a mailing list, hosted here:
|
|
||||||
|
|
||||||
http://groups.google.com/group/mitmproxy
|
|
||||||
|
|
||||||
|
|
||||||
Requirements
|
|
||||||
------------
|
|
||||||
|
|
||||||
* Python_ 2.7.x.
|
|
||||||
* PyOpenSSL_ 0.13 or newer.
|
|
||||||
* pyasn1_ 0.1.2 or newer.
|
|
||||||
* urwid_ version 0.9.8 or newer.
|
|
||||||
* PIL_ version 1.1 or newer.
|
|
||||||
* lxml_ version 2.3 or newer.
|
|
||||||
|
|
||||||
The following auxiliary components may be needed if you plan to hack on
|
|
||||||
mitmproxy:
|
|
||||||
|
|
||||||
* The test suite uses the nose_ unit testing
|
|
||||||
framework.
|
|
||||||
* Rendering the documentation requires countershape_.
|
|
||||||
|
|
||||||
**mitmproxy** is tested and developed on OSX, Linux and OpenBSD. Windows is not
|
|
||||||
supported at the moment.
|
|
||||||
|
|
||||||
You should also make sure that your console environment is set up with the
|
|
||||||
following:
|
|
||||||
|
|
||||||
* EDITOR environment variable to determine the external editor.
|
|
||||||
* PAGER environment variable to determine the external pager.
|
|
||||||
* Appropriate entries in your mailcap files to determine external
|
|
||||||
viewers for request and response contents.
|
|
||||||
|
|
||||||
.. _mitmproxy.org: http://mitmproxy.org
|
.. _mitmproxy.org: http://mitmproxy.org
|
||||||
.. _github.com/cortesi/mitmproxy: http://github.com/cortesi/mitmproxy
|
|
||||||
.. _python: http://www.python.org
|
|
||||||
.. _PyOpenSSL: http://pypi.python.org/pypi/pyOpenSSL
|
|
||||||
.. _pyasn1: http://pypi.python.org/pypi/pyasn1
|
|
||||||
.. _PIL: http://www.pythonware.com/products/pil/
|
|
||||||
.. _lxml: http://lxml.de/
|
|
||||||
.. _urwid: http://excess.org/urwid/
|
|
||||||
.. _nose: http://readthedocs.org/docs/nose/en/latest/
|
|
||||||
.. _countershape: http://github.com/cortesi/countershape
|
|
||||||
|
5
doc-src/02-docstyle.css
Normal file
5
doc-src/02-docstyle.css
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
.terminal {
|
||||||
|
color: #c0c0c0;
|
||||||
|
font-size: 1em;
|
||||||
|
background: #000000;
|
||||||
|
}
|
@ -17,7 +17,7 @@
|
|||||||
<div class="span3">
|
<div class="span3">
|
||||||
<div class="well sidebar-nav">
|
<div class="well sidebar-nav">
|
||||||
<ul class="nav nav-list">
|
<ul class="nav nav-list">
|
||||||
$!nav("intro.html", this, state)!$
|
$!nav("index.html", this, state)!$
|
||||||
$!nav("install.html", this, state)!$
|
$!nav("install.html", this, state)!$
|
||||||
$!nav("mitmproxy.html", this, state)!$
|
$!nav("mitmproxy.html", this, state)!$
|
||||||
$!nav("mitmdump.html", this, state)!$
|
$!nav("mitmdump.html", this, state)!$
|
||||||
@ -58,7 +58,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="span9">
|
<div class="span9">
|
||||||
<h1>@!pageTitle!@</h1>
|
<h1>@!this.title!@</h1>
|
||||||
$!body!$
|
$!body!$
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -1 +1,4 @@
|
|||||||
|
|
||||||
|
@!index_contents!@
|
||||||
|
|
||||||
|
|
||||||
|
@ -6,37 +6,24 @@ sys.path.insert(0, "..")
|
|||||||
from libmproxy import filt
|
from libmproxy import filt
|
||||||
|
|
||||||
MITMPROXY_SRC = "~/git/public/mitmproxy"
|
MITMPROXY_SRC = "~/git/public/mitmproxy"
|
||||||
|
this.layout = countershape.Layout("_layout.html")
|
||||||
if ns.options.website:
|
this.titlePrefix = "mitmproxy 0.9 - "
|
||||||
ns.title = countershape.template.Template(None, "<h1>@!this.title!@</h1>")
|
|
||||||
this.layout = countershape.Layout("_websitelayout.html")
|
|
||||||
else:
|
|
||||||
ns.title = countershape.template.Template(None, "<h1>@!this.title!@</h1>")
|
|
||||||
this.layout = countershape.Layout("_layout.html")
|
|
||||||
|
|
||||||
this.markup = markup.Markdown()
|
this.markup = markup.Markdown()
|
||||||
|
|
||||||
ns.docMaintainer = "Aldo Cortesi"
|
ns.docMaintainer = "Aldo Cortesi"
|
||||||
ns.docMaintainerEmail = "aldo@corte.si"
|
ns.docMaintainerEmail = "aldo@corte.si"
|
||||||
ns.copyright = u"\u00a9 mitmproxy project, 2012"
|
ns.copyright = u"\u00a9 mitmproxy project, 2013"
|
||||||
|
|
||||||
ns.index = countershape.widgets.SiblingPageIndex('/index.html', divclass="pageindex")
|
|
||||||
|
|
||||||
def mpath(p):
|
def mpath(p):
|
||||||
p = os.path.join(MITMPROXY_SRC, p)
|
p = os.path.join(MITMPROXY_SRC, p)
|
||||||
return os.path.expanduser(p)
|
return os.path.expanduser(p)
|
||||||
|
|
||||||
ns.license = file(mpath("LICENSE")).read()
|
|
||||||
ns.index_contents = file(mpath("README.mkd")).read()
|
ns.index_contents = file(mpath("README.mkd")).read()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
top = os.path.abspath(os.getcwd())
|
|
||||||
def example(s):
|
def example(s):
|
||||||
d = file(mpath(s)).read()
|
d = file(mpath(s)).read()
|
||||||
extemp = """<div class="example">%s<div class="example_legend">(%s)</div></div>"""
|
extemp = """<div class="example">%s<div class="example_legend">(%s)</div></div>"""
|
||||||
return extemp%(countershape.template.Syntax("py")(d), s)
|
return extemp%(countershape.template.Syntax("py")(d), s)
|
||||||
|
|
||||||
|
|
||||||
ns.example = example
|
ns.example = example
|
||||||
|
|
||||||
filt_help = []
|
filt_help = []
|
||||||
@ -73,10 +60,8 @@ def nav(page, current, state):
|
|||||||
return pre + '<a href="%s">%s</a></li>'%(model.UrlTo(page), p.title)
|
return pre + '<a href="%s">%s</a></li>'%(model.UrlTo(page), p.title)
|
||||||
ns.nav = nav
|
ns.nav = nav
|
||||||
|
|
||||||
|
|
||||||
pages = [
|
pages = [
|
||||||
Page("index.html", "docs"),
|
Page("index.html", "Introduction"),
|
||||||
Page("intro.html", "Introduction"),
|
|
||||||
Page("install.html", "Installation"),
|
Page("install.html", "Installation"),
|
||||||
Page("mitmproxy.html", "mitmproxy"),
|
Page("mitmproxy.html", "mitmproxy"),
|
||||||
Page("mitmdump.html", "mitmdump"),
|
Page("mitmdump.html", "mitmdump"),
|
||||||
|
@ -13,7 +13,7 @@ sudo pip install mitmproxy
|
|||||||
## From Source
|
## From Source
|
||||||
|
|
||||||
- When installing from source, you will need to install the
|
- When installing from source, you will need to install the
|
||||||
[dependencies](@!urlTo("intro.html")!@) by hand.
|
[dependencies](@!urlTo("index.html")!@) by hand.
|
||||||
- Then run the following command from the base of the source distribution:
|
- Then run the following command from the base of the source distribution:
|
||||||
|
|
||||||
<pre>
|
<pre>
|
||||||
|
@ -1,4 +0,0 @@
|
|||||||
|
|
||||||
@!index_contents!@
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user