利用tinyproxy在Linux上搭建HTTP Proxy Server
??? 之所以需要用到HTTP Proxy Server并不是為了要***,而是為了讓沒有公網(wǎng)IP地址的內(nèi)網(wǎng)主機通過有公網(wǎng)IP地址的外網(wǎng)主機訪問Internet。舉個例子,阿里云ECS在購買時可以不購買公網(wǎng)IP地址,但這種沒有公網(wǎng)IP地址的ECS云主機(實例)是沒有訪問Internet的能力的,也就是說無法在這臺實例上下載文件,這在部署應(yīng)用如部署MySQL時可能遇到無法完成安裝問題。解決的辦法有兩種,一種是在另一臺具有公網(wǎng)訪問能力的ECS實例上搭建***服務(wù),另一種是在另一臺具有公網(wǎng)訪問能力的ECS實例上搭建HTTP Proxy服務(wù)。
??? 搭建***服務(wù)在之前的文章中已經(jīng)寫過了,不同的是,路由部分需要視情況重新設(shè)定,因為沒有做這個實驗,個人猜想是保留一個到***服務(wù)器公網(wǎng)IP地址的路由,再把默認(rèn)路由指向***服務(wù)器公網(wǎng)IP地址。本文介紹的是第二種方案,在另一臺具有公網(wǎng)訪問能力的ECS實例上搭建HTTP Proxy服務(wù),具體的方案是利用tinyproxy在Linux上搭建HTTP Proxy Server。
tinyproxy是一個開源的非常輕量級但又十分高效的HTTP Proxy服務(wù)程序,支持HTTPS和自定義HTTP Header,更多信息可以查看tinyproxy在GitHub Page上的項目主頁:https://tinyproxy.github.io/。
如果想做更細致的功能,可以考慮用Squid代替tinyproxy。
步驟非常簡單,分為兩步:1.在服務(wù)端安裝和配置tinyproxy;2.在客戶端配置HTTP/HTTPS訪問。
1.在服務(wù)端安裝和配置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:阿里云內(nèi)網(wǎng)訪問公網(wǎng),tinyproxy,HTTP Proxy
--end--
總結(jié)
以上是生活随笔為你收集整理的利用tinyproxy在Linux上搭建HTTP Proxy Server的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: XCode6报数组越界错误的问题
- 下一篇: Ubuntu下安装和使用zookeepe