简介
Tinyproxy是一个开源、轻量级的HTTP代理服务器,它旨在提供一种简单的方法来在防火墙后面共享Internet连接,或者在大型网络中为多个用户提供HTTP访问
特点
轻量级:Tinyproxy非常小巧,安装包只有几十MB大小,因此非常适合在资源有限的环境中使用
高效:Tinyproxy使用高效的内存管理和多线程技术,能够快速响应客户端请求并处理大量并发连接
易于管理:Tinyproxy的配置文件非常简洁易懂,即使没有太多网络知识的人也可以轻松上手
支持多种平台:Tinyproxy支持多种操作系统,包括Linux、macOS和Windows等
安装
# centos
sudo yum install tinyproxy
# ubuntu
sudo apt install tinyproxy
# docker安装
1. 无配置持久化
docker run -d -p 8787:8888 --name tinyproxy vimagick/tinyproxy:latest
2. 加配置持久化
docker run -d -p 8787:8888 -v /etc/tinyproxy/tinyproxy.conf:/etc/tinyproxy/tinyproxy.conf -v /etc/tinyproxy/filter:/etc/tinyproxy/filter --name tinyproxy vimagick/tinyproxy:latest
配置
# vim /etc/tinyproxy/tinyproxy.conf
涉及修改块:
# 注释掉这一行 # Allow 127.0.0.1 # 修改端口号 Port 8787
# 参数解释:
Allow 是允许访问的主机IP,不写就是允许所有主机访问
Port 是代理访问端口号
配置扩展
# 配置访问站点限制,打开以下配置 :
Filter "/etc/tinyproxy/filter" FilterURLs On FilterExtended On FilterCaseSensitive On FilterDefaultDeny No
# 参数解释:
FilterDefaultDeny :
当这个参数设置为No 或者 被注释掉,就代表filter文件内的内容为黑名单
当这个参数设置为Yes 就代表filter内的内容为白名单。
示例:
# 当FilterDefaultDeny值设置为Yes时,只可以通过代理访问以下网站,即白名单
cat /etc/tinyproxy/filter
mp.csdn.net www.baidu.com
启动
systemctl enable tinyproxy.service
systemctl status tinyproxy.service
systemctl start/stop/restart tinyproxy.service
验证:
curl -v --proxy http://192.168.11.1:8787 www.baidu.com
日志路径:
/var/log/tinyproxy/tinyproxy.log
应用实践
docker代理:
# 配置# 验证vi /etc/systemd/system/docker.service.d/http-proxy.conf [Service] Environment = "http_proxy=http://192.168.11.1:8787" "NO_PROXY=localhost,127.0.0.1" Environment = "https_proxy=http://192.168.11.1:8787" "NO_PROXY=localhost,127.0.0.1"
docker pull nginx:latest
全局代理:
# 配置
vi /etc/profile export http_proxy=http://192.168.11.1:8787/ export https_proxy=http://192.168.11.1:8787/
使环境变量生效
# source /etc/profile
# 验证
curl www.baidu.com