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. Docker:Failed to copy files, no space left on device

    主页 个人微信公众号:密码应用技术实战 个人博客园首页:https://www.cnblogs.com/informatics/ 问题描述 在Mac上进行docker构建时,偶尔会遇到以下问题 Fai ...

  2. [.Net]使用Soa库+Abp搭建微服务项目框架(二):面向服务体系的介绍

    ​ 上一章我们建立了一个典型的面向领域设计的Abp小项目,如果按照常规的开发方式,会遇到什么问题呢? 先来完善一下这个小项目,在定义好各实体类后,运行Miguration并向数据库里写入一些初始数据. ...

  3. hire 聘用 受雇 租金 单词记忆

    hire 基本解释 vt. 聘用:录用:雇用:租用 vi. 受雇:得到工作 n. 租金:酬金,工钱:[非正式用语] 被雇佣的人:销售部的两个新雇员 来自Proto-Germanic*hurjan,租, ...

  4. Apollo3-Blue-MCU芯片典型硬件电路解析

    一 芯片简介 1.简介 Apollo3 Blue Wireless SoC是一款超低功耗无线mcu芯片,它的运行功耗降至6μA/ MHz以下.该器件采用ARM Cortex M4F内核,运行频率高达9 ...

  5. IDEA或Android Studio用书签功能标识代码

    原文地址:IDEA或Android Studio用书签功能标识代码 | Stars-One的杂货小窝 在之前的维护工作中,有时候翻源码的时候,找到了一个文件的某行关键,之后一层层进去之后,又突然不记得 ...

  6. KTL 最新版

    K,K线,Candle蜡烛图. T,技术分析,工具平台 L,公式Language语言使用c++14,Lite小巧简易. 项目仓库:https://github.com/bbqz007/KTL Core ...

  7. 记录--Vue PC前端扫码登录

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 需求描述 目前大多数PC端应用都有配套的移动端APP,如微信,淘宝等,通过使用手机APP上的扫一扫功能去扫页面二维码图片进行登录,使得用户 ...

  8. docker相关命令杂理

    - 2020.11.16docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]] #保存现有的镜像 # docker commit -a "r ...

  9. 重新启动mysql

    liu@liu-virtual-machine:~$ ps aux|grep mysqld mysql 5252 0.2 4.5 1496516 181200 ? Sl 11:01 0:01 /usr ...

  10. KingabseES 隐式游标属性值(SQL%attribute)

    隐式游标介绍 Oracle数据库迁移到KingbaseES数据库,不需要将源PL/SQL脚本,大规模修改为KES语法,因为KingbaseES支持大部分PLSQL语法. 1.隐式游标 隐式游标是由 P ...