zoukankan      html  css  js  c++  java
  • 把你的Centos设置成代理ip服务器

    前言:最近在公司做爬虫相关的工作,做过数据抓取的都知道,写程序抓取数据的过程并不像平常我们用浏览器打开网页那么简单!大多数的网站为了自己站点的性能和数据安全都设置了各种反爬策略。最常见的就是添加验证码,需要用户登陆,单个IP有次数和频率限制等等!所以广大的爬虫工程师在抓取数据之前都要先调研一下这个网站的反爬策略!当我们不能正常访问网站时,我们可以在程序中设置代理IP来判断网站是不是封禁了我们的IP。在做判断之前我们先要有一个可用的代理IP地址!
    环境:阿里云CES centos6.5、tinyproxy或者squid代理软件,本地客户机
    tinyproxy和squid都是比较优秀的代理软件,tinyproxy比较小众,虽然没有squid的功能丰富,但是小巧简单,也能满足我们普通yonghu的需求。squid是一款优秀的代理软件,有很丰富的ACL管理功能,虽然squid很强大,但是并不一定适合我们,下面是tinyproxy和squid的安装和使用教程!
    使用tinyproxy:
    安装
    yum install tinyproxy
    配置
    vim /etc/tinyproxy/tinyproxy.conf
    修改Port 端口号为你想设定的值
    将Allow 选项后面的IP改成你想使用这个代理的客户机的IP,如果你想任何人都可以访问,把这行前面加个#注释一下就行了
    使用
    service tinyproxy stop
    service tinyproxy start
    service tinyproxy restart
    来停止、启动、重启tinystart
    将tinyproxy设置开机启动
    chkconfig --level 2345 tinyproxy on
    设置防火墙
    iptables -I INPUT -p tcp --dport 设置的代理端口 -j ACCEPT  && service iptables save &&service iptables restart
    使用squid:
    1、安装
    yum update
    yum install squid
    yum install httpd
    chkconfig --level 2345 squid on
    chkconfig --level 2345 httpd on
    2、配置
    2.1找到生成密码的htpasswd目录
    find / -name htpasswd
    2.2进入找到的htpasswd目录执行
    ./htpdpwad -c /etc/squid/password username
    username换成你想设置的用户名
    会车执行后会让你输入密码,确认密码!
    2.3找到squid的用户验证程序
    find / -name ncsa_auth
    2.4修改squid的配置只让认证的用户访问
    vim /etc/squid/squid.conf
    添加下面内容
    auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/password
    将上面命令中的/usr/lib/squid/ncsa_auth换成你在机器上找到的步骤2.3的目录,将/etc/squid/password密码文件换成步骤2.1生密码文件路径
    继续添加下面内容:
    认证程序进程数
    auth_param basic children 3
    认证有效时间
    auth_param basic credentialsttl 2 hours
    设置允许认证的用户访问
    acl auth_user proxy_auth REQUIRED
    http_access allow auth_user
    设置允许全部用户访问
    http_access allow all
    设置端口号
    http_port 端口号
    2.5启动squid
    service squidstop
    service squidstart
    service squidrestart

  • 相关阅读:
    Variable() placeholder() constant() 的区别
    scrapy-redis+selenium+webdriver 部署到linux上
    scrapy-redis+selenium+webdriver解决动态代理ip和user-agent的问题(全网唯一完整代码解决方案)
    [学习记录]NLTK常见操作二(分句,分词,词干提取)
    [学习记录]NLTK常见操作一(去网页标记,统计词频,去停用词)
    [学习记录]python正则表达式
    [学习记录]MySQL之初级查询语句(select,where)
    [学习记录]pymysql的基本操作
    [学习记录]MySQL临时整理
    [学习记录]面对wxpython的长跑(100米:wxpython安装,相关文件,wx.App,wx.Frame)
  • 原文地址:https://www.cnblogs.com/pythonClub/p/9879446.html
Copyright © 2011-2022 走看看