tinyproxy轻量代理服务器安装
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轻量代理服务器安装的更多相关文章
- 轻量应用服务器安装 phpMyAdmin
第一步:在phpMyAdmin官方网站http://www.phpmyadmin.net/downloads/下载源码包并解压 cd /usr/local/src wget https://files ...
- 编写轻量ajax组件01-对比webform平台上的各种实现方式
前言 Asp.net WebForm 和 Asp.net MVC(简称MVC) 都是基于Asp.net的web开发框架,两者有很大的区别,其中一个就是MVC更加注重http本质,而WebForm试图屏 ...
- 比Wireshark更轻量、更方便的抓包软件:Charles
转:http://blog.csdn.net/lixing333/article/details/42776187 之前写过一篇通过Wireshark进行抓包,分析网络连接的文章<通过WireS ...
- 采用轻量ServiceMesh实现灰度发布的实践
软件总会有缺陷的,解决问题的同时往往会引入新的问题,关键是看这些问题是否在我们的控制范围内,“灰度发布”就是让问题受控的方法之一. 前言 我们的 CTO 经常说:“研发团队最首要的任务是提供稳定的服务 ...
- 阿里云轻量应用服务器 配置mysql详解(转载)
1.服务器规格 1.地域选择 考虑个人地址因素因此选择了华南. 2.选择应用镜像/系统镜像 这个应该看个人需求,因为我只是想用来放数据库的,所以就随便选了个WordPress. 选好之后购买就完事了, ...
- api-hook,更轻量的接口测试工具
前言 在网站的开发过程中,接口联调和测试是至关重要的一环,其直接影响产品的核心价值,而目前也有许多技术方案和工具加持,让我们的开发测试工作更加便捷.接口作为数据传输的重要载体,数据格式和内容具有多样性 ...
- Raspkate - 基于.NET的可运行于树莓派的轻量型Web服务器
最近在业余时间玩玩树莓派,刚开始的时候在树莓派里写一些基于wiringPi库的C语言程序来控制树莓派的GPIO引脚,从而控制LED发光二极管的闪烁,后来觉得,是不是可以使用HTML5+jQuery等流 ...
- 一种简单,轻量,灵活的C#对象转Json对象的方案
简单,是因为只有一个类 轻量,是因为整个类代码只有300行 灵活,是因为扩展方式只需要继承重写某个方法即可 补充:修正无法处理可空值类型的bug 首先我将这个类称之为JsonBuilder,我希望它以 ...
- 一种简单,轻量,灵活的C#对象转Json对象的方案(续)
本文参考资料 一种简单,轻量,灵活的C#对象转Json对象的方案 [源码]Literacy 快速反射读写对象属性,字段 一段废话 之前我已经介绍了这个方案的名称为JsonBuilder,这套方案最大的 ...
- Dapper.NET——轻量ORM
Dapper.NET使用 http://www.cnblogs.com/yankliu-vip/p/4182892.html 本文目录 Dapper.NET使用 1.为什么选择Dapper 2.以Da ...
随机推荐
- xxl-job的基本使用
xxl-job的基本使用 xxl-job是分布式的调度平台调度执行器执行任务,使用的是DB锁(for update)来保证集群分布式调用的一致性,学习简单,操作容易,成本不高. 准备阶段 服务端配置 ...
- Edge 语音识别 生成文字 显示在input new webkitSpeechRecognition()
Edge 语音识别 生成文字 显示在input new webkitSpeechRecognition() 代码 <html> <head> <style> bod ...
- async await $api vue
async getDataNew () { const res = await this.$api('apiPath') if (res && res.status === 20) { ...
- linux-关于conio.h文件的文件缺失问题
链接: https://pan.baidu.com/s/1Qzo4CkJB1_5E-3rDLtfG4Q 提取码: fh65 编辑以下这个依赖库就可以了 $ cd libconio-1.0.0 $ ./ ...
- 网页上发起qq聊天
找到以前记录的小笔记,同步过来吧 <!DOCTYPE HTML> <html> <head> <meta charset="UTF-8"& ...
- C++ 传递数组引用
不用额外变量可以在函数中得到数组长度信息,函数的形参声明为数组引用 #include <iostream> using namespace std; void f(int(&a) ...
- offer收割机--js的隐式类型转换规则整理
类型转换 文中的值类型等价于所说的基础类型,其范围是(boolean,string,number) 转换为基础类型 布尔值 undefined, null, false, NaN,'', 0 --&g ...
- eviacam在Arch/Manjaro Linux下的安装
安装base-devel 安装编译工具,默认的依赖里没有编译工具 sudo yay -S base-devel 如果安装编译工具,会报类似下面的错误: 安装eviacam yay -S eviacam ...
- Elasticsearch按照某个字段去重查询
索引较多: index-1_t_order index-2_t_order index-32_t_order 根据pay_amount排序,order_no去重,最后分页. 说明:1.collapse ...
- RelationNet:学习目标间关系来增强特征以及去除NMS | CVPR 2018
论文基于NLP的注意力机制提出了目标关系模块,通过与其它目标的比对增强当前目标的特征,而且还可以代替NMS进行端到端的重复结果去除,思想十分新颖,效果也不错 来源:晓飞的算法工程笔记 公众号 论文 ...