tinyproxy是一款用于POSIX操作系统的轻量级HTTP/HTTPS代理服务程序,非常小巧快速,便于部署,性能也不差,因此适合在嵌入式设备上使用,tinyproxy的仓库和文档链接分别是:

仓库:https://github.com/tinyproxy/tinyproxy

文档:https://tinyproxy.github.io/

tinyproxy参数不多,很容易理解,主要支持下面的功能特性:

1. 支持http/https流量代理和转发,https只需简单配置即可

2. 支持反向代理和负载均衡,上游服务协议可以是:http、socks4/5

3. 支持自定义添加header请求头

4. 支持客户端访问控制:按照网段限制和禁止;按照用户名和密码做basic auth

5. 支持超时、客户端并发限制,可以配置指定的网卡投递流量

上面基本上就是tinyproxy的全部设置了,可以看到是非常的简单,安装直接克隆或者下载仓库源码,编译即可,具体步骤如下:

git clone https://github.com/tinyproxy/tinyproxy.git
cd tinyproxy
./autogen.sh
./configure --prefix=/usr/local/tinyproxy
make
make install

整个编译安装的过程非常快,这里安装到/usr/local/tinyproxy目录下,默认的安装目录是: /usr/local,然后编辑配置文件:/usr/local/tinyproxy/etc/tinyproxy/tinyproxy.conf,基本配置如下:

User nobody
Group nobody
# 绑定端口号
Port 8608
# 监听的网络接口 默认会监听所有的接口
#Listen 192.168.0.1
# 设置代理流量要走的接口
Bind 192.168.0.36
# 最大连接空闲时间
Timeout 600 DefaultErrorFile "/usr/local/tinyproxy/share/tinyproxy/default.html"
StatFile "/usr/local/tinyproxy/share/tinyproxy/stats.html" LogLevel Info # 最大客户端连接数
MaxClients 100
# 访问来源限制
Allow 127.0.0.1
Allow ::1
Allow 172.16.0.0/24 ViaProxyName "tinyproxy" # 设置允许的SSL流量端口
ConnectPort 443
ConnectPort 563

上面是一些基本的配置,另外对于日志,pid,用户名密码需要时单独配置即可。

重点说一下Listen配置,这个tinyproxy服务监听的网络接口,也就是说通过什么ip可以访问过来,默认是所有接口,也就是0.0.0.0,所以我这里没有配置。但是Bind的含义是所有代理的流量应该从那个接口发送出去,最常见的就是要配置成访问外网的接口,比如内网交换机的网段是172.16.0.0/24,这里面的机器都是无法访问外网的,但是其中1个机器有两个网卡,网卡192.168.0.0/24可以通过路由器访问到外网,对于具有多个网卡的服务器,需要单独设置Bind的接口,这样所有内网代理的流量都会被转发到这个接口中,其实tinyproxy很多时候就是用在这种内网需要访问互联网的应用场景下。

然后ConnectPort是允许SSL的流量端口,这种对https类型的代理访问很有用,然后其他的配置都很容易理解了。

最后启动服务:

/usr/local/tinyproxy/bin/tinyproxy -c /usr/local/tinyproxy/etc/tinyproxy/tinyproxy.conf

如果觉得路径比较麻烦,将bin加到环境变量path下,然后将tinyproxy.conf放到/etc下即可,启动命令会短很多: tinyproxy -c /etc/tinyproxy.conf

启动后在其他的机器就可以配置http_proxy、https_proxy变量或者修改专门的配置来使用http代理了

tinyproxy轻量代理服务器安装的更多相关文章

  1. 轻量应用服务器安装 phpMyAdmin

    第一步:在phpMyAdmin官方网站http://www.phpmyadmin.net/downloads/下载源码包并解压 cd /usr/local/src wget https://files ...

  2. 编写轻量ajax组件01-对比webform平台上的各种实现方式

    前言 Asp.net WebForm 和 Asp.net MVC(简称MVC) 都是基于Asp.net的web开发框架,两者有很大的区别,其中一个就是MVC更加注重http本质,而WebForm试图屏 ...

  3. 比Wireshark更轻量、更方便的抓包软件:Charles

    转:http://blog.csdn.net/lixing333/article/details/42776187 之前写过一篇通过Wireshark进行抓包,分析网络连接的文章<通过WireS ...

  4. 采用轻量ServiceMesh实现灰度发布的实践

    软件总会有缺陷的,解决问题的同时往往会引入新的问题,关键是看这些问题是否在我们的控制范围内,“灰度发布”就是让问题受控的方法之一. 前言 我们的 CTO 经常说:“研发团队最首要的任务是提供稳定的服务 ...

  5. 阿里云轻量应用服务器 配置mysql详解(转载)

    1.服务器规格 1.地域选择 考虑个人地址因素因此选择了华南. 2.选择应用镜像/系统镜像 这个应该看个人需求,因为我只是想用来放数据库的,所以就随便选了个WordPress. 选好之后购买就完事了, ...

  6. api-hook,更轻量的接口测试工具

    前言 在网站的开发过程中,接口联调和测试是至关重要的一环,其直接影响产品的核心价值,而目前也有许多技术方案和工具加持,让我们的开发测试工作更加便捷.接口作为数据传输的重要载体,数据格式和内容具有多样性 ...

  7. Raspkate - 基于.NET的可运行于树莓派的轻量型Web服务器

    最近在业余时间玩玩树莓派,刚开始的时候在树莓派里写一些基于wiringPi库的C语言程序来控制树莓派的GPIO引脚,从而控制LED发光二极管的闪烁,后来觉得,是不是可以使用HTML5+jQuery等流 ...

  8. 一种简单,轻量,灵活的C#对象转Json对象的方案

    简单,是因为只有一个类 轻量,是因为整个类代码只有300行 灵活,是因为扩展方式只需要继承重写某个方法即可 补充:修正无法处理可空值类型的bug 首先我将这个类称之为JsonBuilder,我希望它以 ...

  9. 一种简单,轻量,灵活的C#对象转Json对象的方案(续)

    本文参考资料 一种简单,轻量,灵活的C#对象转Json对象的方案 [源码]Literacy 快速反射读写对象属性,字段 一段废话 之前我已经介绍了这个方案的名称为JsonBuilder,这套方案最大的 ...

  10. Dapper.NET——轻量ORM

    Dapper.NET使用 http://www.cnblogs.com/yankliu-vip/p/4182892.html 本文目录 Dapper.NET使用 1.为什么选择Dapper 2.以Da ...

随机推荐

  1. Java面向对象(下)--static/final/代码块/抽象/接口/内部类

    目录 1 关键字:static 2 理解main方法的语法 3 类的成员之四:代码块 4关键字:final 5 抽象类与抽象方法 6 接口(interface) 7 类的成员之五:内部类 static ...

  2. 基于python的socket通信之阿里云socket端口不通的解决方案

    问题描述: 使用python脚本进行socket业务流程,前几天还可以通信很好的,今天突然发现端口不通了.那就排查端口为啥不通了呢? 方案一:设置阿里云安全组 这个网上不少例子,笔者也按照这个操作过, ...

  3. java项目打包成jar包

    参考,欢迎点击原文:https://www.bilibili.com/video/BV16K411H7Tt?from=search&seid=12445640905127816624(B站) ...

  4. stream使用汇总

    整理了下java使用stream处理list的几个便捷的方法 准备数据 List<KnowledgeInfoTable> knowledgeInfoTables = knowledgeIn ...

  5. 【个人笔记】Nestjs使用TypeORM注意点

    在Nestjs使用TypeORM还是有一些注意点. entities路径配置注意点 在nestjs中使用TypeORM,需要配置数据库连接(以MySQL为例).需要特别注意的是配置参数里面的entit ...

  6. python面向对象(多态)

    # 1.什么是多态:同一事物有多种形态 class Animal: # 同一类事物:动物 def talk(self): pass class Cat(Animal): # 动物的形态之一:猫 def ...

  7. 记录--静态网站 H5 跳小程序,以及踩坑

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 背景 我司有智慧功成家APP和对应的小程序,现在已经实现APP分享到微信,微信点击分享链接直接进入小程序. 目前有一个问题就是我们APP在 ...

  8. LOTO示波器实测过压保护芯片LP5300工作效果

      过压保护电路是电子产品设置中经常要用到的,以前都是用分立元件搭的各种经典电路,最近LOTO虚拟示波器客户推荐了一款很便宜的集成的过压保护芯片LP5300,体积很小,使用简单,外接两个电容就可以了, ...

  9. Java内存马1-传统web内存马

    1.前置知识 (1)Tomcat Tomcat是一个开源的.轻量级的.用于Java Servlet和JavaServer Pages(JSP)的Web应用程序服务器.它是Apache软件基金会的一个项 ...

  10. 改Bug的经验

    如果修复某个Bug花了很长时间,这时候就要问问自己为什么,怎么做才吸取经验教训,在类似的问题上不再出问题,以及采用的方法,使用的工具是否还有改进的地方: 当所有问题都解决之后,一定要梳理下从最初找Bu ...