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代理了

posted @ 2020-12-29 17:40  小得盈满  阅读(1490)  评论(0编辑  收藏  举报