利用tinyproxy在Linux上搭建HTTP Proxy Server

栏目: 后端 · 前端 · 发布时间: 7年前

内容简介:利用tinyproxy在Linux上搭建HTTP Proxy Server

之所以需要用到HTTP Proxy Server并不是为了要翻墙,而是为了让没有公网IP地址的内网主机通过有公网IP地址的外网主机访问Internet。举个例子,阿里云ECS在购买时可以不购买公网IP地址,但这种没有公网IP地址的ECS云主机(实例)是没有访问Internet的能力的,也就是说无法在这台实例上下载文件,这在部署应用如部署 MySQL 时可能遇到无法完成安装问题。解决的办法有两种,一种是在另一台具有公网访问能力的ECS实例上搭建VPN服务,另一种是在另一台具有公网访问能力的ECS实例上搭建HTTP Proxy服务。

搭建VPN服务在之前的文章中已经写过了,不同的是,路由部分需要视情况重新设定,因为没有做这个实验,个人猜想是保留一个到VPN服务器公网IP地址的路由,再把默认路由指向VPN服务器公网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

部分截图如下图所示:

利用tinyproxy在Linux上搭建HTTP Proxy Server

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

部分截图如下图所示:

利用tinyproxy在Linux上搭建HTTP Proxy Server

tag:阿里云内网访问公网,tinyproxy,HTTP Proxy

--end--


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Node.js in Action

Node.js in Action

Mike Cantelon、Marc Harter、TJ Holowaychuk、Nathan Rajlich / Manning Publications / 2013-11-25 / USD 44.99

* Simplifies web application development * Outlines valuable online resources * Teaches Node.js from the ground up Node.js is an elegant server-side JavaScript development environment perfect for scal......一起来看看 《Node.js in Action》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

SHA 加密
SHA 加密

SHA 加密工具

html转js在线工具
html转js在线工具

html转js在线工具