网络爬虫这个词大家应该不陌生,网站找到免费代理IP质量非常差,我们可以利用爬虫服务器的资源,通过它,来搭建一个自己的代理服务。具体要怎么操作,我们大家可以一起看看步骤。
squid搭建与配置过程:
文中使用的服务器是centos系统。
1、安装squid
使用yum直接安装即可yum install squid -y,安装完成后配置文件在/etc/squid/目录下。
2、配置basic认证
不得不说现在网络上扫描器实在太多了。笔者在一台机器上使用默认端口3128开启了squid服务,没有配置访问认证,测试结束后忘记关闭squid服务,过了几个小时就发现服务器负载太高,查看日志(/var/log/squid/)发现是已经被人扫到并用上了。
看来必需要配置访问认证了
(1)生成passwords文件 在本机上执行
# 安装htpasswd工具 yum install httpd-tools -y # 生成passwords文件 htpasswd -c passwords authorized_user
(2)输入两次密码后生成passwords文件
配置squid认证 将passwords文件上传到爬虫服务器/etc/squid/目录下,编辑/etc/squid/squid.conf文件,添加
# test mypass
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
高匿配置
squid默认配置为透明代理,通过squid发送请求时squid会添加x-forwarded-for与via请求头,对方会发现你在使用代理,并根据这个得知你的真实ip,对于爬取数据必需要使用高匿代理,在配置文件中添加如下内容
# High Anonymity Configuration
via off
forwarded_for delete
request_header_access From deny all
3、批量安装
上面已经介绍了搭建与配置squid的步骤,下面介绍如何通过python批量安装。首先需要通过ssh连接到服务器,使用paramiko库可以通过ssh连接到远程服务器,建立连接后执行上面的命令就可以了,没什么可说的就直接贴代码了
ssh = SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
try:
# 1. 建立ssh连接
ssh.connect(**server)
logger.debug(">>> 1. 建立ssh连接")
# 2. 安装squid
stdin, stdout, stderr = ssh.exec_command('yum install squid -y')
if stdout.channel.recv_exit_status() == 0:
logger.debug(">>> 2. 安装squid完成")
with ssh.open_sftp() as sess:
# 3. 添加认证账号
sess.put(AUTH_FILE, '/etc/squid/passwords')
logger.debug(">>> 3. 上传auth文件完成")
# 4. 更新squid.conf配置文件
sess.put(SQUID_CONF, '/etc/squid/squid.conf')
logger.debug(">>> 4. 上传squid.conf完成")
# 5. systemctl start squid启动服务
stdout = ssh.exec_command('systemctl start squid')[1]
if stdout.channel.recv_exit_status() == 0:
logger.debug('>>> 5. squid服务已启动')
else:
logger.error("squid服务启动失败: " + ''.join(stdout.readlines()))
else:
logger.error("安装squid失败, ip: %s" % server['hostname'])
except Exception as err:
logger.error('处理%s失败', server['hostname'])
ssh.close()
以上就是部署的主要步骤以及重点代码部分,大家可以自行尝试。
相关文章内容简介
1 搭建爬虫代理服务器
网络爬虫这个词大家应该不陌生,网站找到免费代理IP质量非常差,我们可以利用爬虫服务器的资源,通过它,来搭建一个自己的代理服务。具体要怎么操作,我们大家可以一起看看步骤。 squid搭建与配置过程: 文中使用的服务器是centos系统。 1、安装squid 使用yum直接安装即可yum∵install∵squid∵-y,安装完成后配置文件在/etc/squid/目录下。 ... [阅读全文]
最新标签
推荐阅读
06
2018-08
代理IP有哪些用途?
网络发展得非常迅速,互联网时代,电脑端跟手机端都会有一个IP地址,这个IP就是我们在使用设备进行网络操作的时候的一个身份认证。这是网络通过IP来识别不同的客户端的途径。
06
2018-08
爬虫使用代理IP 可以选择什么代理方式?
爬虫工作需要多次反复对网站数据进行抓取,这一操作很容易触犯到网站的反爬虫机制,因为IP访问的次数超出限制,所以我们如果想要解决这一问题,那么就要用到代理IP。
06
2018-08
代理IP如何隐藏IP地址?
为什么我们上网的时候需要隐藏自己的真实IP?现在网络盗用信息以及网络诈骗频频发生,使用网站的时候,我们需要保护好个人信息以及隐私,这样我们才能够有安全的网络环境。
22
2019-11
网络爬虫代理IP如同选择手机上一样,留意IP池大的应用规则!
网络爬虫代理IP如同选择手机上一样,留意IP池大的应用规则!
热门文章
在线咨询
客户经理
公众号
关注公众号,免费领试用
大客户