anyproxy学习4-Linux(Centos)搭建anyproxy环境

前言

anyproxy可以跨平台使用,前面第一篇是搭建在windows机器上,本篇讲如何在linux上搭建anyproxy环境,当然有mac的小伙伴也可以用mac去搭建一个环境。

nodejs安装

anyproxy是依赖于nodejs的,所以第一步先安装nodejs,nodejs下载地址:https://nodejs.org/en/download/

找到需要下载的版本号,右键复制出下载地址https://nodejs.org/dist/v10.15.0/node-v10.15.0-linux-x64.tar.xz

  • cd 到local目录

  • 新建一个nodejs的目录

  • cd到nodejs目录,用wget下载

  • tar xf 解压文件

  • mv 重命名为node10

  • ln -s设置node软链接

  • 输入node -v查看版本号

[root@yoyo nodejs]# cd / [root@yoyo /]# cd /usr/local/ [root@yoyo local]# mkdir nodejs [root@yoyo nodejs]# wget https://nodejs.org/dist/v10.15.0/node-v10.15.0-linux-x64.tar.xz [root@yoyo nodejs]# tar xf node-v10.15.0-linux-x64.tar.xz [root@yoyo nodejs]# ll total 21088 drwxrwxr-x 6 500 500 4096 Dec 26 14:27 node-v10.15.0-linux-x64 -rw-r--r-- 1 root root 12307872 Dec 26 14:28 node-v10.15.0-linux-x64.tar.xz [root@yoyo nodejs]# mv node-v10.15.0-linux-x64 nodejs10 [root@yoyo nodejs]# ln -s /usr/local/nodejs/nodejs10/bin/node /usr/local/bin [root@yoyo nodejs]# node -v v10.15.0

安装anyproxy

直接用npm安装经常会下载失败,需要先安装cnpm, 安装完成之后输入cnpm -v查看版本号

[root@yoyo nodejs]# npm install -g cnpm --registry=https://registry.npm.taobao.org [root@yoyo nodejs]# cnpm -v cnpm@6.0.0 (/usr/lib/node_modules/cnpm/lib/parse_argv.js) npm@6.5.0 (/usr/lib/node_modules/cnpm/node_modules/npm/lib/npm.js) node@10.15.0 (/usr/local/nodejs/nodejs10/bin/node) npminstall@3.19.1 (/usr/lib/node_modules/cnpm/node_modules/npminstall/lib/index.js) prefix=/usr/local/nodejs/nodejs10 linux x64 3.10.0-693.2.2.el7.x86_64 registry=https://registry.npm.taobao.org [root@yoyo nodejs]#

使用cnpm安装anyproxy

cnpm install -g anyproxy

安装完成后找到anyproxy的安装位置

find指令查找anyproxy的位置

find / -name  'anyproxy’

[root@yoyo ~]# find / -name 'anyproxy' /tmp/npm-9279-e5ff661b/registry.npmjs.org/anyproxy /root/.npminstall_tarball/a/n/y/p/anyproxy /root/.npm/anyproxy /root/.npm/registry.npmjs.org/anyproxy /usr/local/nodejs/nodejs10/bin/anyproxy /usr/local/nodejs/nodejs10/lib/node_modules/anyproxy /usr/local/nodejs/nodejs10/lib/node_modules/anyproxy/bin/anyproxy [root@yoyo ~]#

安装CA证书

anyproxy默认抓http请求,如果想抓https请求需安装CA证书,cd到anyproxy的安装bin目录,也就是上面查找到的/usr/local/nodejs/nodejs10/bin/anyproxy

cd /usr/local/nodejs/nodejs10/bin/
node anyproxy-ca

[root@yoyo ~]# cd /usr/local/nodejs/nodejs10/bin [root@yoyo bin]# node anyproxy-ca detecting CA status... AnyProxy CA exists, but not be trusted ? Would you like to open the folder and trust it ? Yes [root@yoyo bin]#

启动anyproxy服务

可以使用node启动anyproxy服务,先cd到anyproxy的安装目录

node anyproxy -i

但这样会有一个问题,窗口关闭后,就不会运行了,可以使用setsid方式挂后台启动服务

setsid node anyproxy -i —ignore-unauthorized-ssl >anyproxy.log

—ignore-unauthorized-ssl是忽略https证书异常

[AnyProxy Log][2019-05-17 08:41:10]: The root CA file path is: /root/.anyproxy/certificates/rootCA.crt [AnyProxy Log][2019-05-17 08:41:10]: Http proxy started on port 8001 [AnyProxy Log][2019-05-17 08:41:10]: web interface started on port 8002

设置代理端口是8001,web页面打开的端口是8002,打开浏览器输入http://localhost:8002/ (或者http://127.0.0.1:8002)就能打开anyproxy页面了
其它机器访问的话,需开放8001和8002端口,浏览器输入http://linux机器的ip:8002/进入到web页面

测试anyproxy环境

在电脑上输入http://安装AnyProxy机器的IPp:8002/进入到web页面

用curl发请求测试的方法如下

  • 直接请求服务器:curl http://httpbin.org/get

  • 通过代理服务器请求:curl http://httpbin.org/get --proxy http://127.0.0.1:8001

使用xshell远程连接linux服务器,输入curl http://httpbin.org/get --proxy http://127.0.0.1:8001,然后刷新浏览器页面,就能看到抓到的请求了

停掉anyproxy服务

停掉anyproxy服务可以先ps查到进程,再kill掉

ps -ef | grep anyproxy
kill -9 进程id

[root@yoyo bin]# ps -ef | grep anyproxy root 29981 1 4 08:35 ? 00:00:01 node anyproxy -i root 30105 29771 0 08:36 pts/1 00:00:00 grep --color=auto anyproxy [root@yoyo bin]# kill -9 29981 [root@yoyo bin]#

设置代理

我们需要在被代理的手机上安装证书,这样在AnyProxy上才能以明文的方式查看https请求内容。在手机上安装证书有两种方式:

  • 直接在手机浏览器中打开http://ip:8002/fetchCrtFile(IP换成安装AnyProxy机器的IP)

  • 在安装浏览器上打开http://ip:8002/,RootCA界面然后扫描二维码,在浏览器中打开安装证书
    确保手机和AnyProxy机器在一个局域网,手机上设置代理,设置代理ip为anypeoxy主机的ip,端口是8001

参考https://www.cnblogs.com/yoyoketang/p/10867050.htm

(0)

相关推荐

  • Web环境搭建

    文章目录 欢迎学习Ubuntu搭建Web开发环境 1 安装系统(ubuntu16.04LTS) 2 检查更新.安装完整语言包 3 安装虚拟机 4 安装GIT 5 Node.js安装 6 npm安装 7 ...

  • Centos使用alternatives切换Java版本

    原文链接:http://blog.csdn.net/sdcxyz/article/details/45078717 这个工具的大概原理是 在/usr/bin目录下创建一个符号链接,指向/etc/alt ...

  • 苹果M1芯片上借助Linux虚拟机搭建Docker环境

    结果展示 前言 苹果M1芯片的Mac电脑目前使用Docker desktop app,对于我目前开发时必须的本地FastDFS环境影响很大,研究到一套在M1芯片上搭建ARM base Linux虚拟机 ...

  • Linux学习9-CentOS搭建nginx环境

    前言 之前我们搭建网站的时候,把war包放到tomcat下就能运行起来了,为什么部署上线的时候,又用到了nginx呢? nginx可以做多台服务器的负载均衡,当用户非常少的时候,可以用一台服务直接部署 ...

  • Linux学习3-yum安装java和Tomcat环境

    前言 linux上安装软件,可以用yum非常方便,不需要下载解压,一个指令就能用yum安装java和tomcat环境. 前面一篇已经实现在阿里云服务器上搭建一个禅道系统的网站,算是小有成就,但并不是每 ...

  • anyproxy学习1-windows平台安装和抓手机app上https请求

    前言 做接口测试肯定离不开抓包,目前比较流行的抓包工具是fiddler和charles,相信并不陌生.这里介绍一个阿里公司研发的一个抓包神器,只需打开web页面,就能抓到手机app上的http和htt ...

  • anyproxy学习2-rule模块实现接口mock功能

    前言 AnyProxy不仅仅可以抓包,还可以拦截请求并修改服务端响应,实现接口mock功能. 面试时候经常会问到第三方支付如何测试这种,如果对接的第三方没提供测试环境,那么就需要搭建一个mock服务器 ...

  • anyproxy学习3-修改返回内容(beforeSendResponse)

    前言 fiddler可以抓包打断点后,修改返回的内容,便于模拟各种返回结果.anyproxy也可以通过写rule模块规则,模拟返回状态码.头部.body beforeSendResponse befo ...

  • jenkins学习1-docker快速搭建jenkins环境

    前言 jenkins的环境搭建方法有很多,本篇使用docker快速搭建一个jenkins环境. 环境准备: linux服务器 docker docker运行jenkins 先下载jenkins镜像ht ...

  • 安卓(Android)手机安装Linux 系统并搭建 jdk 环境与tomcat 服务器

    一.安装Aid Learning(手机App ) 1.Aid Learning 描叙 这是非常好玩的一个APP,Aid Learning FrameWork是一个在Android手机上构建了一个带图形 ...

  • 云服务器 手动搭建 LNMP 环境(CentOS 7)

    操作场景 LNMP 环境是指在 Linux 系统下,由 Nginx + MySQL/MariaDB + PHP 组成的网站服务器架构.本文档介绍如何在腾讯云云服务器(CVM)上手动搭建 LNMP 环境 ...