anyproxy學習4-Linux(Centos)搭建anyproxy環境

前言

anyproxy能夠跨平臺使用,前面第一篇是搭建在windows機器上,本篇講如何在linux上搭建anyproxy環境,固然有mac的小夥伴也能夠用mac去搭建一個環境。html

nodejs安裝

anyproxy是依賴於nodejs的,因此第一步先安裝nodejs,nodejs下載地址:https://nodejs.org/en/download/node

找到須要下載的版本號,右鍵複製出下載地址https://nodejs.org/dist/v10.15.0/node-v10.15.0-linux-x64.tar.xzlinux

  • 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/bin/node
[root@yoyo nodejs]# node -v
v10.15.0

安裝anyproxy

直接用npm安裝常常會下載失敗,須要先安裝cnpm, 安裝完成以後輸入cnpm -v查看版本號web

[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安裝anyproxyshell

cnpm install -g anyproxynpm

安裝完成後找到anyproxy的安裝位置windows

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/anyproxycurl

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
參考http://www.javashuo.com/article/p-ykyrzkoo-mk.html

相關文章
相關標籤/搜索