前言:最近在公司做爬虫相关的工作,做过数据抓取的都知道,写程序抓取数据的过程并不像平常我们用浏览器打开网页那么简单!大多数的网站为了自己站点的性能和数据安全都设置了各种反爬策略。最常见的就是添加验证码,需要用户登陆,单个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

把你的Centos设置成代理ip服务器的更多相关文章

  1. 网站设置成代理后,chrome chrome HTTP ERROR 502

    在阿里云上设置CNAME代理后,发现www.xxxx.com出现502,但是http://xxxx.com却可以访问. ping了一下都可以,网上搜了搜原来和nginx.conf配置有关 配置如下,上 ...

  2. VMware下安装的CentOS7.5,设置成静态IP后ping不通外网

    网上很多都说用下面的方法即可解决 在CentOS中 ping www.baidu.com 无法ping通,可能原因是DNS没配置好 方法一: 修改vim /etc/resolv.conf 增加如下内容 ...

  3. centos设置上网代理

    假设我们要设置代理为 IP:PORT 1.网页上网网页上网设置代理很简单,在firefox浏览器下 Edit-->>Preferences-->>Advanced-->& ...

  4. Linux/CentOS设置全局代理(http)

    说明:为什么说是http代理,其实这个还不能说是全称走代理,罪名写的区别就是ICMP协议这个设置就无效,只能说是90%的应用都可以使用这个设置来实现代理访问,只有个别不行,比如一些软件根本不走http ...

  5. 怎么将linux的动态IP设置成静态IP

    例如我的eth0网卡信息如下 eth0 Link encap:Ethernet HWaddr :0C::AA:B2:CA inet addr:192.168.79.135 Bcast:192.168. ...

  6. 设置完代理IP,手机连接WiFi时连不上,一直在转

    fiddler抓包,设置代理后,会出现手机连不上网的情况,针对这个情况处理方式为: 首先如果已经连接上WiFi了,但是提示“不可上网”,那就把WiFi断开重新连接下. 不行的话就试试下面的办法 一.配 ...

  7. Centos设置网络(固定IP)

    简介 设置为桥接模式,即将虚拟机的虚拟网络适配器与主机的物理网络适配器进行交接,虚拟机中的虚拟网络适配器可通过主机中的物理网络适配器直接访问到外部网络. 配置 虚拟机设置为桥接模式 进入网络配置文件, ...

  8. selenium爬虫设置headers,代理IP等方法

    https://blog.csdn.net/xc_zhou/article/details/80823855

  9. Nginx 如何设置反向代理 多服务器,配置区分开来,单独文件保存单个服务器 server 主机名配置,通过 include 实现

    samcao 关注 2015.06.15 10:08* 字数 0 阅读 408评论 0喜欢 0   网络结构如上图.可能你只有一个公网的Ip地址. 但是您的内网有个网站需要映射至外网.而又不想添加其它 ...

随机推荐

  1. Github Pages 搭建网站

    参考网站: https://pages.github.com/ http://gitbeijing.com/pages.html 搬进github:http://gitbeijing.com

  2. 实验long raw 和 blob两种数据类型遇到dblink的表现

    首先long raw从Oracle 10g开始就不再被建议使用,建议用blob代替.同理,long建议用clob代替. 本文从运维角度实验long raw 和 blob两种数据类型在遇到dblink时 ...

  3. php 文件远程下载

    getFile(“http://pic4.nipic.com/20091217/3885730_124701000519_2.jpg”,”,’xuxin’);/*** php实现下载远程图片保存到本地 ...

  4. Nginx使用rewrite重新定向

    [Rewrite重定向]Nginx使用rewrite重新定向   使用nginx做重新定向. nginx参考网址:http://blog.sina.com.cn/s/blog_97688f8e0100 ...

  5. CentOS下挂载数据盘

    CentOS下挂载数据盘 1.显示磁盘使用情况:#df 2.显示磁盘:#fdisk -l 3.格式化分区:#mkfs.ext4 /dev/vdb1           //注:将/dev/vdb1格式 ...

  6. MYSQLi数据访问批量删除

    <link href="../bootstrap.min.css" rel="stylesheet" type="text/css" ...

  7. Mysql版本java问题(com.mysql.cj.jdbc.Driver和com.mysql.jdbc.Driver)

    老版本com.mysql.jdbc.Driver已弃用 String url1 = "jabc:mysql://127.0.0.1:3306/test"; String url1 ...

  8. python 数据较大 性能分析

    前提:若有一个几百M的文件需要解析,某个函数需要运行很多次(几千次),需要考虑性能问题 性能分析模块:cProfile 使用方法:cProfile.run("func()"),其中 ...

  9. How to export a model from SolidWorks to Google SketchUp

    How to export a model from SolidWorks to Google SketchUp While Google SketchUp is not a professional ...

  10. 使用Java函数接口及lambda表达式隔离和模拟外部依赖更容易滴单测

    概述 单测是提升软件质量的有力手段.然而,由于编程语言上的支持不力,以及一些不好的编程习惯,导致编写单测很困难. 最容易理解最容易编写的单测,莫过于独立函数的单测.所谓独立函数,就是只依赖于传入的参数 ...