Anyproxy的安装和使用

之前我的一篇文章介绍了怎么用anyproxy中间人代理的方法来爬取微信公众号,那anyproxy怎么安装?anyproxy怎么在一台机器上开多个实例?anyproxy怎么做到开机自启动?还有怎么防止别人盗用自己搭建的anyproxy服务器?

1、第一个问题,anyproxy怎么安装,首先是拿到一台云主机,先安装node(因为anyproxy需要node环境),再安装npm(npm是用来管理node的),然后用npm安装anyproxy,最后用npm安装pm2(pm2是用来管理anyproxy的)。下面以Ubuntu16.04为例,使用root用户,安装node,执行命令,

apt install nodejs-legacy

检查node是否安装成功,执行命令,

node --version

安装npm,执行命令,

apt install npm

检查npm是否安装成功,执行命令,

npm --version

安装anyproxy,执行命令,

npm install anyproxy -g

注意后面的-g不能少,检查anyproxy是否安装成功,执行命令,

anyproxy --version

安装pm2,执行命令,

npm install pm2 -g

后面的-g也不能少,检查pm2是否安装成功,执行命令,

pm2 --version

然后执行命令启动anyproxy,

anyproxy

这里有可能会出现TypeError: Buffer.alloc is not a function的错误,


anyproxy启动错误

这是因为node版本和npm版本不够,需要升级node和npm,升级npm,执行命令,

npm install npm -g

升级node,执行两条命令,

npm install -g n 
n stable

但是你可能会发现执行node --version和npm --version还是显示原来的版本,其实你已经升级好node和npm的了,只是当前命令行窗口还没刷新过来,如果你新开一个命令行窗口执行node --version和npm --version,就会显示升级后的版本的了。现在再启动执行命令anyproxy启动anyproxy,如果出现以下就是anyproxy启动成功,


anyproxy启动成功

进一步访问网址进行anyproxy的启动验证,访问服务器ip:8002,


anyproxy网址访问

但是这样启动anyproxy只能代理http,如果要能代理https,需要执行生成ca证书的命令,
anyproxy-ca

回车确认下去既可,然后执行以下命令来启动anyproxy,

anyproxy -i

anyproxy就可以代理https了,但是这样子无法关闭命令行,所以需要用到pm2来管理anyproxy,可以执行命令,

pm2 start anyproxy -x -- -i

通过pm2来初始化并启动一个anyproxy,启动anyproxy后可以随时关闭命令行,若要查看anyproxy启动状况,执行命令,

pm2 list

若要关闭anyproxy,执行命令,

pm2 stop anyproxy

若要再启动anyproxy,执行命令,

pm2 start anyproxy

若要重启anyproxy,执行命令,

pm2 restart anyproxy
pm2管理anyproxy

2、第二个问题,anyproxy怎么在一台机器上开多个实例,上面的第一点只说到了用pm2开一个anyproxy实例,其实anyproxy是可以开多个实例的,因为anyproxy可以指定端口指定规则文件来启动。先用回直接anyproxy启动的方式来演示怎么启动不同端口不同规则文件的anyproxy实例,启动第一个anyproxy实例,执行命令,

anyproxy -i -p 8001 -w 8002 -r /usr/local/lib/node_modules/anyproxy/lib/rule_default.js

访问服务器ip:8002检查是否成功,-p参数后面跟的代理端口即手机wifi连接anyproxy代理时的端口,-w参数后面跟的是web端口即在浏览器上查看代理情况的端口,-r参数后面跟的是rule规则文件路径,rule_default.js的文件路径默认是在/usr/local/lib/node_modules/anyproxy/lib/下,其实开多个实例主要是因为rule规则文件的不同。这里的启动你可能会发现有一点不同,


anyproxy指定rule规则文件启动i参数就失效

启动语句比平时多了一句,both "-i(--intercept)" and rule.beforeDealHttpsRequest are specified, the "-i" option will be ignored,这句话的意思就是如果rule规则文件中定义了beforeDealHttpsRequest函数, 那么是否代理https将完全由这个函数的返回来决定;如果没有定义这个函数,那么是否代理https就由启动anyproxy时是否传入i参数来决定;所以说这第一个anyproxy实例其实是不能代理https的。那么这里要开的第二个anyproxy实例的rule规则文件可以修改为注释掉beforeDealHttpsRequest函数,


注释掉beforeDealHttpsRequest函数

文件也放在/usr/local/lib/node_modules/anyproxy/lib/下,命名为rule_default2.js,执行命令,
anyproxy -i -p 8003 -w 8004 -r /usr/local/lib/node_modules/anyproxy/lib/rule_default2.js

访问服务器ip:8004检查是否成功,这里的启动就没有both "-i(--intercept)" and rule.beforeDealHttpsRequest are specified, the "-i" option will be ignored这句提示了,


anyproxy指定注释掉beforeDealHttpsRequest函数的rule规则文件的启动

证明第二个anyproxy实例是可以代理https的。那么用回pm2来启动多个anyproxy实例,就是执行两条命令,

pm2 start anyproxy --name anyproxy1 -- -i -p 8001 -w 8002 -r /usr/local/lib/node_modules/anyproxy/lib/rule_default.js
pm2 start anyproxy --name anyproxy2 -- -i -p 8003 -w 8004 -r /usr/local/lib/node_modules/anyproxy/lib/rule_default2.js
pm2多开anyproxy

--name参数后面跟的是pm2的服务名,在--参数后面添加anyproxy启动的各种参数,访问服务器ip:8002和服务器ip:8004检查是否成功。

3、第三个问题,anyproxy怎么做到开机自启动,只需执行命令,

pm2 save
pm2保存当前运行的应用

保存当前pm2运行的各个应用,重启时就会启动保存的各个应用。再执行命令,

pm2 startup
pm2生成开机服务

生成开机服务,重启云服务器检查是否成功。

4、第四个问题,怎么防止别人盗用自己搭建的anyproxy服务器,其实很简单,只要设置为只允许公司内网访问就可以了,回家想访问通过公司的vpn访问。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,015评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,262评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,727评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,986评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,363评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,610评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,871评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,582评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,297评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,551评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,053评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,385评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,035评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,079评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,841评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,648评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,550评论 2 270

推荐阅读更多精彩内容