24
2019
11
18:15:53

CentOS 7 搭建 TinyProxy 代理

Tinyproxy是一个轻量级的用于POSIX操作系统的http/https代理守护进程。在设计之初就遵循着更快并且更小的原则。在相关的运用案例中,它是一种理想的解决方案,例如在一个需要全部HTTP代理特性的嵌入式部署的案例中。然而,对于需要更大的代理案例来说,它是不可用的。


Tinyproxy本身是小巧的,几乎不需要占用系统资源。安装后,内存占用通常在2M左右,CPU负载随同步连接的数量线性增加(取决于连接的速度)。因此,Tinyproxy可以在一台旧机器上运行,也可以在网络设备上运行,比如基于linux的宽带路由器,而不会对性能产生任何明显的影响。


安装环境:阿里云CentOS7 香港服务器


1. 安装 TinyProxy


在Red Hat Enterprise Linux或其衍生产品(如CentOS)上,可以通过运行yum install tinyproxy从EPEL存储库安装Tinyproxy。


yum -y install tinyproxy

2. 配置 TinyProxy


vim /etc/tinyproxy/tinyproxy.conf

修改 Port 端口,默认为 8888


Port 12801


注释掉 Allow,表示允许所有人访问代理


#Allow 127.0.0.1


隐藏掉Via请求头部,去掉下面的注释


DisableViaHeader Yes


更多配置项,下面是列举一些配置文件默认的,不需要配置:


PidFile "/var/run/tinyproxy/tinyproxy.pid"


LogFile "/var/log/tinyproxy/tinyproxy.log"


LogLevel Info


MaxClients 100


MinSpareServers 5


MaxSpareServers 20


StartServers 10


3. 启动 TinyProxy


systemctl start tinyproxy.service

更多命令如下:


systemctl restart tinyproxy.service

 

systemctl stop tinyproxy.service

 

systemctl status tinyproxy.service

 

systemctl enable tinyproxy.service

4. 关闭防火墙或开放端口访问


方式1:关闭防火墙


/etc/init.d/iptables stop

方式2:开放端口访问


iptables -A INPUT -p tcp --dport 12801 -j ACCEPT

重启防火墙


/etc/init.d/iptables restart

注意:若采用的阿里云、腾讯云、AWS等云服务器,记得要在安全策略里开放端口号


5. 验证生效


1)命令行测试验证(服务器本地测试)


使用TinyProxy拉取google.com的页面信息:


curl -x 127.0.0.1:12801 google.com

可以看到成功拉取了谷歌的页面信息,说明我们的配置是成功。




2)Firefox测试(本机测试)


打开火狐浏览器,选择:选项-网络代理-设置,进入配置界面,根据下图进行配置:




配置完成后,我们使用百度搜索IP,搜索结果如下:




IP地址是我们服务器的地址,说明代理正常访问。然而,如果我们访问谷歌,会得到如下页面:




 


我们无法访问谷歌,不但如此,其他类似的网站我们也是无法访问的。这是为什么?首先,我们看下面的图,当我们想要访问外网的时候,这个请求数据包必然会经过防火墙的检查:




现在我们使用代理,但是依然需要经过防火墙的检查:




由于客户端与TinyProxy之间的请求数据是没有加密的,所以我们无法通过检查。


有人可能疑问,HTTPS是加密的请求,那么为什么不能绕过防火墙呢?


这是因为客户端在进行加密通信以前,需要进行连接握手。在连接握手时,身份认证证书信息(即服务器的公钥)是明文传输的,墙此时就会阻断特定证书的加密连接。


 


参考链接:


https://segmentfault.com/a/1190000011532677


http://blog.51cto.com/tianshili/1733869


http://tinyproxy.github.io/


理解$hadow$ocks与Privoxy原理

————————————————

版权声明:本文为CSDN博主「sjailjq」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:

https://blog.csdn.net/sjailjq/article/details/81570592




操作系统:阿里云CentOS 7.4 64位

安装方法:

yum install tinyproxy

配置:

vi /etc/tinyproxy/tinyproxy.conf

Port 8888 //预设是8888 Port,你可以更改

Allow 127.0.0.1 //将127.0.0.1改成你自己的IP

//Allow 192.168.1.0/24    #表示一个网络的IP

//例如你的IP 是1.2.3.4,你改成Allow 1.2.3.4,那只有你才可以连上这个Proxy

//若你想任何IP都可以连到Proxy在Allow前面打#注释

启动停止服务

chkconfig tinyproxy on

service tinyproxy start

service tinyproxy stop

service tinyproxy restart

本地测试

打开终端输入:

curl -x <IP>:<PORT> www.baidu.com

返回百度页面代码,说明代理成功。

其他

如果是阿里云服务器,还需要配置一个安全规则,把你设置的代理端口配置进去:

 

查看代理请求日志

tail -f /var/log/tinyproxy/tinyproxy.log


推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://hqyman.cn/post/1053.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: