1. 程式人生 > >把你的Centos設定成代理ip伺服器

把你的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生密碼檔案路徑
繼續新增下面內容: