利用tinyproxy在Linux上搭建HTTP Proxy Server

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

    搭建×××服务在以前的文章中已经写过了,不一样的是,路由部分须要视状况从新设定,由于没有作这个实验,我的猜测是保留一个到×××服务器公网IP地址的路由,再把默认路由指向×××服务器公网IP地址。本文介绍的是第二种方案,在另外一台具备公网访问能力的ECS实例上搭建HTTP Proxy服务,具体的方案是利用tinyproxy在Linux上搭建HTTP Proxy Server。github

tinyproxy是一个开源的很是轻量级但又十分高效的HTTP Proxy服务程序,支持HTTPS和自定义HTTP Header,更多信息能够查看tinyproxy在GitHub Page上的项目主页:https://tinyproxy.github.io/bash

若是想作更细致的功能,能够考虑用Squid代替tinyproxy。服务器

步骤很是简单,分为两步:1.在服务端安装和配置tinyproxy;2.在客户端配置HTTP/HTTPS访问。ide

1.在服务端安装和配置tinyproxy测试

以CentOS6.x为例ui

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

部分截图以下图所示:阿里云

p_w_picpath

2.在客户端配置HTTP/HTTPS访问.net

# 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

在客户端上测试一下:3d

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

部分截图以下图所示:

p_w_picpath

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

--end--

相关文章
相关标签/搜索