网格

 找回密码
 立即注册

安装 TinyProxy

[复制链接]
69伙伴 发表于 2022-1-20 18:38:57 | 显示全部楼层 |阅读模式
2022-01-29
增加.心得
1.不会编译安装,按照步骤更新到最新源 之后用yum安装即可
2.不建议 长期开启端口,用手动开启方式。
理由:别人使用一周 出现了一个恐怖的问题,日志每秒已10M的速度增长。。。
恢复镜像后,关闭日志记录吧。。 tcp链接爆炸(连接数过过过过多。。)
这周关闭过日志,更换过端口。虽然匿名无法使用,但是经不住被一群群代理扫
最后没辙,到网页里开启了 web防火墙配置,禁止了除了80,443意外的所有端口。
世界才又恢复安静!
切记,切记 ,切记! 用的时候手动启动
-------------------------------------分割线--------------

演示环境 CentOS 7.6 64bit
编译装最新版本失败,换用源安装。
更新最新源参考下链接
http://www.wgpro.com/forum.php?mod=viewthread&tid=1873&extra=page%3D1

tinyproxy版本1.8.3不支持账号密码验证,而新版本1.10.0支持
官方地址  https://github.com/tinyproxy/tinyproxy
使用https功能需要占用443端口

  1. # 安装
  2. yum -y install tinyproxy
复制代码


查看下版本
  1. tinyproxy -v
复制代码

tinyproxy 1.11.0


  1. # 启动 start|stop|status|restart
  2. $ service tinyproxy start

  3. # 卸载
  4. yum erase tinyproxy
复制代码


配置 TinyProxy 改端口8888和宝塔冲突

  1. 看下这里的文件大小 (这里的配置文件是旧的 复制下面的配置到这里)
  2. /etc/tinyproxy/tinyproxy.conf

  3. /usr/local/etc/tinyproxy/tinyproxy.conf
  4. 或者用找下位置   find / -name tinyproxy.conf


  5. Port 8888 #改成自己喜欢的比如8080

  6. 修改 200行
  7. Allow 127.0.0.1    #注释掉这行,允许所有ip访问 如# Allow 127.0.0.1
  8. Allow ::1

  9. # BasicAuth: HTTP "Basic Authentication" for accessing the proxy.
  10. # If there are any entries specified, access is only granted for authenticated
  11. # users.
  12. #BasicAuth user password
  13. BasicAuth admin 123456 #这里增加用户 已BasicAuth 开头 用户名不能用user


复制代码




启动命令不行得做shell脚本启动

  1. # 启动(不采用后台启动,方便调试)
  2. tinyproxy -d -c /etc/tinyproxy/tinyproxy.conf

  3. # 指定配置文件启动(后台启动)
  4. tinyproxy -c /etc/tinyproxy/tinyproxy.conf

  5. # 杀掉进程
  6. ps -ef|grep tinyproxy|grep -v grep|awk '{print "kill -9 "$2}'|sh
复制代码



访问测试

  1. 看服务器全部ip
  2. hostname -I

  3. # 不加验证参数不会正常返回
  4. curl -x http://127.0.0.1:8080 http://httpbin.org/get

  5. # 正常返回
  6. curl -x http://admin:123456@127.0.0.1:8080 http://httpbin.org/get

  7. 查看端口
  8. netstat -an | grep 8080
复制代码
回复

使用道具 举报

 楼主| 69伙伴 发表于 2022-1-20 22:28:19 | 显示全部楼层
下面我们来看下几个主要的配置参数:

•   User

指定运行 TinyProxy 的用户,默认为 nobody。

User nobody
•   Group

指定运行 TinyProxy 的用户组,默认为 nobody。

Group nobody
•   Listen

指定 TinyProxy 绑定的网卡接口,默认是绑定到所有可用的网卡接口的。

#Listen 192.168.0.1
如需绑定到指定网卡接口,只需去掉对应的注释并指定网卡对应 IP 地址即可。

Listen 192.168.1.100
•   Port

指定 TinyProxy 的监听端口, 默认为 8888。

Port 8888
•   Allow

指定可访问 TinyProxy 设备的 IP 或网段,默认仅允许本机访问。

Allow 127.0.0.1
如果你想允许所有人使用该代理,注释 Allow 选项即可。

# Allow 127.0.0.1
如果你想增加多个可访问的网段,可以用多个 Allow 选项同时定义不同网段即可。

# 添加多段 IP 地址
Allow 10.10.6.0/24
Allow 192.168.8.0/24
Allow 172.16.1.13

•BindSame

在多网卡的情况下,设置出口 IP 是否与入口 IP 相同。默认情况下是关闭的。

例如:服务器上存在 IP 1.2.3.4,当你请求该 IP 对应的 Tinyproxy 代理时,也通过 1.2.3.4 做为出口访问目标网站。

#BindSame yes
•   StartServers

指定 TinyProxy 初始启动的子进程数量, 默认是 10 个。

StartServers 10
•   MaxClients

设置最大客户端链接数,默认为 100。

MaxClients 100
•   Logfile

指定日志文件位置, 默认为 /var/log/tinyproxy/tinyproxy.log。

LogFile /var/log/tinyproxy/tinyproxy.log
•   Syslog

指定 TinyProxy 是否开启 Syslog 来记录日志,默认为关闭的。

#Syslog On
注:Logfile 和 Syslog 只能同时启用一个。如果两个都不启用的话 TinyProxy 会将日志直接输出到终端的标准输出。

•   PidFile

指定 Pid 文件位置, 默认为 /var/run/tinyproxy/tinyproxy.pid,在 PidFile 文件不存在时会运行失败。

PidFile "/var/run/tinyproxy/tinyproxy.pid"
•   DisableViaHeader

指定是否在 Header 中显示 Tinyproxy 相关信息,默认是关闭的。如果开启将不会在 Header 中显示 Tinyproxy 相关信息,相当于 Tinyproxy 是隐身模式。

#DisableViaHeader Yes
•   Filter

指定设置过滤内容文件的位置,默认为 /etc/tinyproxy/filter。

Filter "/etc/tinyproxy/filter"
•   FilterURLs

设置使用 URL 或是域名方式进行过滤,默认是基于 URL 方式过滤的。域名过滤只检查域名段,URL 过滤则检查整个 URL。

FilterURLs On
•   FilterExtended

设置使用 POSIX 基本或者扩展的正则表达式来匹配过滤规则,默认为使用基本的。

# FilterExtended On
•   FilterCaseSensitive

设置是否使用区分大小写的正则表达式,默认为不区分大小写。

#FilterCaseSensitive On
•   FilterDefaultDeny

设置默认过滤策略。如果将该指令注释掉或设为 No,过滤规则为禁止访问规则。该值默认为 Yes,过滤规则为只允许访问过滤文件中的地址。

FilterDefaultDeny Yes
过滤规则配置示例:

1. 在 /etc/tinyproxy/filter 文件中添加代理允许或拒绝的域名地址。

hi-linux.com
过滤文件中的域名地址也是支持正则表达式的。

\.google\.com$
^hi-linux\.com$
2. 仅允许代理请求 hi-linux.com 的内容,配置如下:

Filter "/etc/tinyproxy/filter"
FilterURLs On
FilterDefaultDeny Yes
3. 仅允许代理请求除 hi-linux.com 域名以外的内容,配置如下:

Filter "/etc/tinyproxy/filter"
FilterURLs On
FilterDefaultDeny No
运行 TinyProxy
•   运行 TinyProxy 非常简单,使用官方提供的脚本即可。

# 启动 TinyProxy
$ service tinyproxy start

# 停止 TinyProxy
$ service tinyproxy stop

# 重启 TinyProxy
$ service tinyproxy restart
•   如果服务器有启用防火墙,记得开放相应的 TinyProxy 端口

$ iptables -I INPUT -p tcp –dport 8888 -j ACCEPT
•   测试代理是否正常工作

$ curl --proxy 192.168.1.100:8888 -k http://www.wgpro.com/
如果出现对应网页的源代码,则证明代理工作正常。

•   查看 TinyProxy 请求日志

$ tail -f /var/log/tinyproxy/tinyproxy.log
回复

使用道具 举报

【附件·直接下】 不用注册

联系我们 ( 京ICP备16001788号 ) | 京公网安备 11010502049360号 | 2012- WGPro.CoM |

GMT+8, 2022-7-4 17:25

Powered by Discuz! X3.4

快速回复 返回顶部 返回列表