简介
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
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论