利用tinyproxy在Linux上搭建HTTP Proxy Server
??? 之所以需要用到HTTP Proxy Server并不是為了要***,而是為了讓沒有公網IP地址的內網主機通過有公網IP地址的外網主機訪問Internet。舉個例子,阿里云ECS在購買時可以不購買公網IP地址,但這種沒有公網IP地址的ECS云主機(實例)是沒有訪問Internet的能力的,也就是說無法在這臺實例上下載文件,這在部署應用如部署MySQL時可能遇到無法完成安裝問題。解決的辦法有兩種,一種是在另一臺具有公網訪問能力的ECS實例上搭建***服務,另一種是在另一臺具有公網訪問能力的ECS實例上搭建HTTP Proxy服務。
??? 搭建***服務在之前的文章中已經寫過了,不同的是,路由部分需要視情況重新設定,因為沒有做這個實驗,個人猜想是保留一個到***服務器公網IP地址的路由,再把默認路由指向***服務器公網IP地址。本文介紹的是第二種方案,在另一臺具有公網訪問能力的ECS實例上搭建HTTP Proxy服務,具體的方案是利用tinyproxy在Linux上搭建HTTP Proxy Server。
tinyproxy是一個開源的非常輕量級但又十分高效的HTTP Proxy服務程序,支持HTTPS和自定義HTTP Header,更多信息可以查看tinyproxy在GitHub Page上的項目主頁:https://tinyproxy.github.io/。
如果想做更細致的功能,可以考慮用Squid代替tinyproxy。
步驟非常簡單,分為兩步:1.在服務端安裝和配置tinyproxy;2.在客戶端配置HTTP/HTTPS訪問。
1.在服務端安裝和配置tinyproxy
以CentOS6.x為例
yum?-q?-y?install?tinyproxy??? cp?/etc/tinyproxy/tinyproxy.conf?/etc/tinyproxy/tinyproxy.conf$(date?+%Y%m%d%H%M%S)~???? /tinyproxy.conf?<<-'eof'???? Listen?10.171.168.179???? Allow?10.171.168.0/21???? Allow?172.16.0.0/12???? Allow?100.64.0.0/10???? Allow?10.0.0.0/8???? Allow?10.16.0.0/16???? eof service?tinyproxy?start部分截圖如下圖所示:
2.在客戶端配置HTTP/HTTPS訪問
#?client?setting??? cat?>>/etc/profile<<eof???? #?HTTP/HTTPS?proxy?setting???? export?http_proxy=10.171.168.179:8888???? export?https_proxy=10.171.168.179:8888???? #?end?HTTP/HTTPS?proxy?setting???? eof在客戶端上測試一下:
export?http_proxy=10.171.168.179:8888??? wget?http://soft.vpser.net/lnmp/lnmp1.4.tar.gz???? ls?lnmp1.4.tar.gz???? rm?-f?lnmp1.4.tar.gz export?https_proxy=10.171.168.179:8888??? wget?https://github.com/favicon.ico???? ls?favicon.ico???? rm?-f?favicon.ico部分截圖如下圖所示:
tag:阿里云內網訪問公網,tinyproxy,HTTP Proxy
--end--
總結
以上是生活随笔為你收集整理的利用tinyproxy在Linux上搭建HTTP Proxy Server的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: XCode6报数组越界错误的问题
- 下一篇: 【安装】Linux系统(X64)安装Or