• 【亲测有效】3分钟 从零安装高匿名http协议带账号密码的代理服务 步骤超简单 仅限用于学习交流使用 勿用于其他用途


    1,环境介绍:

    OS:CentOS Linux release 7.6.1810 (Core)

    tinyproxy 版本:Release 1.11.1  ps:1.10版本后支持设置用户密码,类似squid

    2,安装步骤,配置文件,启动:

    官网及下载地址:​​​​​​

    https://github.com/tinyproxy/tinyproxy        ​

    https://github.com/tinyproxy/tinyproxy/releases/tag/1.11.1

    https://github.com/tinyproxy/tinyproxy/releases/download/1.11.1/tinyproxy-1.11.1.tar.gz

    wget https://github.com/tinyproxy/tinyproxy/releases/download/1.11.1/tinyproxy-1.11.1.tar.gz

    解压,安装:

    1. tar xvpf tinyproxy-1.11.1.tar.gz
    2. cd tinyproxy-1.11.1
    3. ./autogen.sh
    4. ./configure
    5. make
    6. make install

    执行后会产生可执行程序:/usr/local/bin/tinyproxy 配置文件:/usr/local/etc/tinyproxy/tinyproxy.conf

    默认的配置文件可以不管,我们创建自定义的配置文件 tinyproxy.conf,只需要简单配置几个核心参数即可:

    1. mkdir /etc/tinyproxy/
    2. vi /etc/tinyproxy/tinyproxy.conf
    3. # 用户和组
    4. User nobody
    5. Group nobody
    6. # 监听端口
    7. Port 8888
    8. # 在多网卡的情况下,设置出口 IP 是否与入口 IP 相同。默认情况下是关闭的
    9. BindSame yes
    10. # 超时时间
    11. Timeout 30
    12. # 这个地方建议建立一个空文件给到报错时读取的文件模板,默认的模板会打印tinyproxy等信息,其他人可以通过输入错误认证信息得到tinyproxy代理服务名字,版本等。
    13. DefaultErrorFile "/usr/local/share/tinyproxy/default_nooutput.html"
    14. #DefaultErrorFile "/usr/local/share/tinyproxy/default.html"
    15. #该选项配置被当作统计主机的主机名或者IP地址:每当收到对该主机的请求时,Tinyproxy 会返回内部统计信息页面,而不会将请求转发给该主机。此页面的模板可以使用 StatFile 配置项进行配置。StatHost 的默认值为 tinyproxy.stats。
    16. StatHost "127.0.0.1"
    17. StatFile "/usr/local/share/tinyproxy/stats.html"
    18. # 指定日志位置
    19. LogFile "/var/log/tinyproxy/tinyproxy.log"
    20. LogLevel Info
    21. # 设置最大客户端链接数
    22. MaxClients 1024
    23. #RFC 2616 要求代理将 Via 标头添加到 HTTP 请求中,但使用真实主机名可能会引起安全问题。 如果设置了 ViaProxyName 选项,其字符串值将用作 Via 标头中的主机名。 否则,将使用服务器的主机名。
    24. ViaProxyName "baidu"
    25. # 将此选项设置为Yes将通知Tinyproxy将包含客户端IP地址的标头X-Tinyproxy添加到请求中。
    26. # 如果是yes 则在header头中会添加原始ip,非高匿名模式,默认是 no
    27. # 如果是yes 代理提交出去的header中会包含:"X-Tinyproxy": "127.0.0.1"
    28. XTinyproxy no
    29. # 该选项设置为 yes 时,Tinyproxy 不会将 Via 标头添加到请求中。 这实际上就使 Tinyproxy 进入了隐身模式。请注意,RFC 2616 要求代理设置 Via 头,因此启用此选项会破坏合规性。 除非您知道自己在做什么,否则不要禁用 Via 标头...
    30. # 默认是 no ,遵循了RFC 2616协议,代理需要带上头说明自己是代理服务过来的请求
    31. # 如果是 no 代理提交出去的header中会包含:"Via": "1.1 xxxx (tinyproxy/1.11.1)"
    32. DisableViaHeader yes
    33. #以上两条修改后就能做到高匿名
    34. # 权限校验
    35. BasicAuth xxx yyy

    设置启动脚本:

    1. vi /usr/bin/tp
    2. #!/bin/bash
    3. if [ $# -lt 1 ]
    4. then
    5. echo "No Args Input..."
    6. exit ;
    7. fi
    8. case $1 in
    9. "start")
    10. echo " =================== 启动 ==================="
    11. nohup tinyproxy -d -c /etc/tinyproxy/tinyproxy.conf > /dev/null 2>&1 &
    12. ;;
    13. "stop")
    14. echo " =================== 关闭 ==================="
    15. ps -ef|grep tinyproxy|grep -v grep|awk '{print "kill -9 "$2}'|sh
    16. ;;
    17. "restart")
    18. echo " =================== 重启 ==================="
    19. ps -ef|grep tinyproxy|grep -v grep|awk '{print "kill -9 "$2}'|sh
    20. nohup tinyproxy -d -c /etc/tinyproxy/tinyproxy.conf > /dev/null 2>&1 &
    21. ;;
    22. "status")
    23. echo " =================== 状态 ==================="
    24. ps -ef|grep tinyproxy|grep -v grep
    25. ;;
    26. *)
    27. echo "Input Args Error..."
    28. ;;
    29. esac

    设置权限:

    chmod 777 /usr/bin/tp

    启动控制:

    1. tp start
    2. tp stop
    3. tp status
    4. tp restart

    查看日志

    tail -f /var/log/tinyproxy/tinyproxy.log

    3,正式测试:

    在另一台公网ip机器上用curl测试,成功没有显示任何代理信息,真正做到了http协议高匿名+账号密码验证 代理服务:

    1. curl -x http://xxx:yyy@xxx.xxx.xxx.xxx:8888 http://httpbin.org/get?show_env=1
    2. {
    3. "args": {
    4. "show_env": "1"
    5. },
    6. "headers": {
    7. "Accept": "*/*",
    8. "Host": "httpbin.org",
    9. "User-Agent": "curl/7.29.0",
    10. "X-Amzn-Trace-Id": "Root=2-6361231232a-2a123d67c1231231231644946e55a",
    11. "X-Forwarded-For": "xxx.xxx.xxx.xxx",
    12. "X-Forwarded-Port": "80",
    13. "X-Forwarded-Proto": "http"
    14. },
    15. "origin": "xxx.xxx.xxx.xxx",
    16. "url": "http://httpbin.org/get?show_env=1"
    17. }

    4,参考资料:

    Tinyproxy安装与配置(ip代理) - 林先生

    http://httpbin.org/get?show_env=1

    TinyProxy 使用帮助 - 简书

    ​​https://github.com/tinyproxy/tinyproxy​

  • 相关阅读:
    【能效管理】电力监控系统在某商业数据中心的应用分析
    《canvas》之第15章 边界检测
    回顾(第六课)
    Docker 基本管理
    Flutter 中的 Table 小部件:全面指南
    挑战100天 AI In LeetCode Day03(热题+面试经典150题)
    【实战-08】flink 消费kafka自定义序列化
    女孩姓屈有诗意的名字
    【深度学习】深度学习中模型计算量(FLOPs)和参数量(Params)等的理解以及四种在python应用的计算方法总结
    Qt的事件
  • 原文地址:https://blog.csdn.net/jrckkyy/article/details/127661866