投稿    登录
  《Python3网络爬虫开发实战》赠书活动正在进行中!详情请戳赠书活动!欢迎参与!非常感谢!

[Python3网络爬虫开发实战] 1.7.2-mitmproxy的安装

Python 崔庆才 7533浏览 119评论

mitmproxy是一个支持HTTP和HTTPS的抓包程序,类似Fiddler、Charles的功能,只不过它通过控制台的形式操作。

此外,mitmproxy还有两个关联组件,一个是mitmdump,它是mitmproxy的命令行接口,利用它可以对接Python脚本,实现监听后的处理;另一个是mitmweb,它是一个Web程序,通过它以清楚地观察到mitmproxy捕获的请求。

本节中,我们就来了解一下mitmproxy、mitmdump和mitmweb的安装方式。

1. 相关链接

2. pip安装

最简单的安装方式还是使用pip,直接执行如下命令即可安装:

这是最简单和通用的安装方式,执行完毕之后即可完成mitmproxy的安装,另外还附带安装了mitmdump和mitmweb这两个组件。如果不想用这种方式安装,也可以选择后面列出的专门针对各个平台的安装方式或者Docker安装方式。

3. Windows下的安装

可以到GitHub上的Releases页面(链接为:https://github.com/mitmproxy/mitmproxy/releases/)获取安装包,如图1-59所示。 图1-59 下载页面

比如,当前的最新版本为2.0.2,则可以选择下载Windows下的exe安装包mitmproxy-2.0.2-windows-installer.exe,下载后直接双击安装包即可安装。

注意,在Windows上不支持mitmproxy的控制台接口,但是可以使用mitmdump和mitmweb。

4. Linux下的安装

在Linux下,可以下载编译好的二进制包(下载地址https://github.com/mitmproxy/mitmproxy/releases/),此发行包一般是最新版本,它包含了最新版本的mitmproxy和内置的Python 3环境,以及最新的OpenSSL环境。

如果你的环境里没有Python 3和OpenSSL环境,建议使用此种方式安装。

下载之后,需要解压并将其配置到环境变量:

这样就可以将3个可执行文件移动到了/usr/bin目录。而一般情况下,/usr/bin目录都已经配置在了环境变量下,所以接下来可以直接调用这3个工具了。

5. Mac下的安装

Mac下的安装非常简单,直接使用Homebrew即可,命令如下:

执行命令后,即可完成mitmproxy的安装。

6. Docker安装

mitmproxy也支持Docker,其DockerHub的地址为https://hub.docker.com/r/mitmproxy/mitmproxy/

在Docker下,mitmproxy的安装命令为:

这样就在8080端口上启动了mitmproxy和mitmdump。

如果想要获取CA证书,可以选择挂载磁盘选项,命令如下:

这样就可以在~/.mitmproxy目录下找到CA证书。

另外,还可以在8081端口上启动mitmweb,命令如下:

更多启动方式可以参考Docker Hub的安装说明。

7. 证书配置

对于mitmproxy来说,如果想要截获HTTPS请求,就需要设置证书。mitmproxy在安装后会提供一套CA证书,只要客户端信任了mitmproxy提供的证书,就可以通过mitmproxy获取HTTPS请求的具体内容,否则mitmproxy是无法解析HTTPS请求的。

首先,运行以下命令产生CA证书,并启动mitmdump:

接下来,我们就可以在用户目录下的.mitmproxy目录里面找到CA证书,如图1-60所示。

图1-60 证书文件

证书一共5个,表1-1简要说明了这5个证书。

表1-1 5个证书及其说明

名称

描述

mitmproxy-ca.pem

PEM格式的证书私钥

mitmproxy-ca-cert.pem

PEM格式证书,适用于大多数非Windows平台

mitmproxy-ca-cert.p12

PKCS12格式的证书,适用于Windows平台

mitmproxy-ca-cert.cer

与mitmproxy-ca-cert.pem相同,只是改变了后缀,适用于部分Android平台

mitmproxy-dhparam.pem

PEM格式的秘钥文件,用于增强SSL安全性

下面我们介绍一下Windows、Mac、iOS和Android平台下的证书配置过程。

Windows

双击mitmproxy-ca.p12,就会出现导入证书的引导页,如图1-61所示。

图1-61 证书导入向导

直接点击“下一步”按钮即可,会出现密码设置提示,如图1-62所示。

图1-62 密码设置提示

这里不需要设置密码,直接点击“下一步”按钮即可。

接下来需要选择证书的存储区域,如图1-63所示。这里点击第二个选项“将所有的证书都放入下列存储”,然后点击“浏览”按钮,选择证书存储位置为“受信任的根证书颁发机构”,接着点击“确定”按钮,然后点击“下一步”按钮。

图1-63 选择证书存储区域

最后,如果有安全警告弹出,如图1-64所示,直接点击“是”按钮即可。

图1-64 安全警告

这样就在Windows下配置完CA证书了。

Mac

Mac下双击mitmproxy-ca-cert.pem即可弹出钥匙串管理页面,然后找到mitmproxy证书,打开其设置选项,选择“始终信任”即可,如图1-65所示。

图1-65 证书配置

iOS

将mitmproxy-ca-cert.pem文件发送到iPhone上,推荐使用邮件方式发送,然后在iPhone上可以直接点击附件并识别安装,如图1-66所示。

图1-66 证书安装页面

点击“安装”按钮之后,会跳到安装描述文件的页面,点击“安装”按钮,此时会有警告提示,如图1-67所示。

图1-67 安装警告页面

继续点击右上角的“安装”按钮,安装成功之后会有已安装的提示,如图1-68所示。

图1-68 安装成功页面

如果你的iOS版本是10.3以下的话,此处信任CA证书的流程就已经完成了。

如果你的iOS版本是10.3及以上版本,还需要在“设置”→“通用”→“关于本机”→“证书信任设置”将mitmproxy的完全信任开关打开,如图1-69所示。此时,在iOS上配置信任CA证书的流程就结束了。

图1-69 证书信任设置

Android

在Android手机上,同样需要将证书mitmproxy-ca-cert.pem文件发送到手机上,例如直接复制文件。

接下来,点击证书,便会出现一个提示窗口,如图1-70所示。

图1-70 证书安装页面

这时输入证书的名称,然后点击“确定”按钮即可完成安装。

转载请注明:静觅 » [Python3网络爬虫开发实战] 1.7.2-mitmproxy的安装

喜欢 (2)or分享 (0)

我的个人微信公众号,联系我请直接在公众号留言即可~

扫码或搜索:进击的Coder

进击的Coder

微信公众号 扫一扫关注

想结交更多的朋友吗?

来进击的Coder瞧瞧吧

进击的Coder

QQ群号 99350970 立即加入

进击的Coder灌水太多?

这里是纯粹的技术领地

激进的Coder

QQ群号 627725766 立即加入

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请狠狠点击下面的

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(119)个小伙伴在吐槽
  1. that could be the finish of this post. Here youll locate some websites that we feel youll value, just click the hyperlinks over
    Sexy chat2019-01-16 19:54 (1分钟前)回复
  2. Every when in a while we opt for blogs that we study. Listed beneath would be the most current sites that we opt for
    Hot webcam2019-01-16 18:33 (1小时前)回复
  3. Sites of interest we've a link to
    Tory Burch2019-01-16 12:13 (8小时前)回复
  4. the time to study or go to the material or web sites we've linked to beneath the
    gucci handbags2019-01-16 11:47 (8小时前)回复
  5. The details mentioned in the article are several of the ideal out there
  6. here are some links to web-sites that we link to since we feel they may be worth visiting
    sexy Melody webcam2019-01-15 04:26 (2天前)回复
  7. please stop by the sites we stick to, which includes this a single, as it represents our picks through the web
    sweet Sofia cam2019-01-15 02:48 (2天前)回复
  8. just beneath, are numerous entirely not associated sites to ours, however, they may be surely worth going over
    sexy Latina duo2019-01-14 23:42 (2天前)回复
  9. we came across a cool internet site which you could appreciate. Take a search for those who want
    sexy gaming Chat2019-01-14 23:23 (2天前)回复
  10. we like to honor several other web web sites on the web, even though they arent linked to us, by linking to them. Under are some webpages worth checking out
    attacco di panico2019-01-14 05:59 (3天前)回复
  11. Wonderful story, reckoned we could combine several unrelated information, nevertheless definitely worth taking a appear, whoa did a single find out about Mid East has got far more problerms too
    нестерпимая жара2019-01-13 20:52 (3天前)回复
  12. Here are a few of the web-sites we advise for our visitors
    Free bonus online Malaysia2019-01-13 07:20 (4天前)回复
  13. Wonderful story, reckoned we could combine a few unrelated data, nonetheless definitely really worth taking a look, whoa did one understand about Mid East has got extra problerms too
    Adult sex free2019-01-12 17:00 (4天前)回复
  14. Every the moment in a when we select blogs that we read. Listed beneath are the most current sites that we select
    Sexycams2019-01-12 16:43 (4天前)回复
1 6 7 8