美文网首页
CenterOS使用qurid搭建高匿代理服务器

CenterOS使用qurid搭建高匿代理服务器

作者: 艾胖胖胖 | 来源:发表于2018-12-25 15:56 被阅读0次

    一、环境介绍

    操作系统:CentOS 7 x64
    
    

    二、概念

    我们根据其向目标地址发送请求时,REMOTE_ADDR, HTTP_VIA,HTTP_X_FORWARDED_FOR三个变量不同。将它分为:透明代理、匿名代理、混淆代理、高匿代理。

    • 透明代理(Transparent Proxy)
    REMOTE_ADDR = Proxy IP
    HTTP_VIA = Proxy IP
    HTTP_X_FORWARDED_FOR = Your IP
    

    透明代理虽然可以直接“隐藏”你的IP地址,但是还是可以从HTTP_X_FORWARDED_FOR来查到你是谁。

    • 匿名代理(Anonymous Proxy)
    REMOTE_ADDR = proxy IP
    HTTP_VIA = proxy IP
    HTTP_X_FORWARDED_FOR = proxy IP
    

    匿名代理比透明代理进步了一点:别人只能知道你用了代理,无法知道你是谁。

    • 混淆代理(Distorting Proxies)
    REMOTE_ADDR = Proxy IP
    HTTP_VIA = Proxy IP
    HTTP_X_FORWARDED_FOR = Random IP address
    

    别人还是能知道你在用代理,但是会得到一个假的IP地址,伪装的更逼真

    • 高匿代理(Elite proxy或High Anonymity Proxy)
    REMOTE_ADDR = Proxy IP
    HTTP_VIA = not determined
    HTTP_X_FORWARDED_FOR = not determined
    

    高匿代理让别人根本无法发现你是在用代理。考虑到后台人员可以轻而易举的根据这些变量来判断出哪些访问是使用了代理,我们在做爬虫的项目的时候尽可能的使用高匿代理

    三、squid代理服务器搭建

    • 安装
    yum install squid -y
    
    • 配置
    vi /etc/squid/squid.conf
    
    //用户名密码配置,加在http_access deny all之前
    auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd
    acl auth_user proxy_auth REQUIRED
    http_access allow auth_user
    
    //修改端口号,默认端口号为3128
    http_port 3128
    
    
    // 文件最后加上  高匿配置
    request_header_access X-Forwarded-For deny all
    request_header_access From deny all
    request_header_access Via deny all
    
    

    为了防止端口被扫描到导致代理服务器流量被滥用,建议修改默认端口和增加用户密码配置

    • 配置密码
    // 安装htpasswd
    yum -y install httpd-tools
    
    // 在  /etc/squid/passwd中生成登录用户名和密码
    htpasswd  -c /etc/squid/passwd 您的用户名
    
    • 重启服务
    service  squid restart
    
    • 开放端口
    // 开启端口
    
    firewall-cmd --zone=public --add-port=3128/tcp --permanent
    
    命令含义:
    
    --zone #作用域
    
    --add-port=3128/tcp  #添加端口,格式为:端口/通讯协议
    
    --permanent  #永久生效,没有此参数重启后失效
    
    // 重启防火墙
    
    firewall-cmd --reload
    
    //查看开启的端口
    firewall-cmd --list-ports
    

    四、测试

    import requests
    
    
    url = 'https://httpbin.org/headers'
    proxies = {
        'https': 'https://ail:123456@45.76.212.133:3128',
    }
    res = requests.get(url, proxies=proxies, timeout=3)
    print(res.text)
    

    若你的代理需要使用HTTP Basic Auth,可以使用 http: // user:password @ host / 语法

    结果为:


    image.png

    相关文章

      网友评论

          本文标题:CenterOS使用qurid搭建高匿代理服务器

          本文链接:https://www.haomeiwen.com/subject/vbfflqtx.html