上文中,说明了 Squid3 IP Proxy 隐藏原IP,这里就搭建Squid 3密码账号IP代理进行整理,涉及环境 Ubuntu 18.04。

Step 1: htpasswd 和 htdigest 工具

htpasswd和htdigest工具是用于生成Squid密码的,直接安装命令

sudo apt-get install apache2-utils

安装完成后,使用命令如下所示

htpasswd -c /etc/squid/.squid_users xifarm
New password:
Re-type new password:
Adding password for user xifarm

创建的密码在/etc/squid/.squid_users里面存储,我们可以再增加一个用户

htpasswd /etc/squid/.squid_users runwulink
New password:
Re-type new password:
Adding password for user runwulink

这里可以“查看”一下刚才创建的2个账号

cat /etc/squid/.squid_users
xifarm:$apr1$IyfTZICg$2fPImX5o14XC2KPF1kZWv/
runwulink:$apr1$5o0XKeto$m6c5B5KK5ZAK/7A/VIgYB/

验证账号密码用这个脚本--防止我们遗忘密码账号

chown squid /etc/squid/.squid_users
/usr/lib64/squid/basic_ncsa_auth /etc/squid/.squid_users
xifarm password
OK
runwulink password
OK

Step2: 配置squid.conf 密码账号

auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/.squid_users
auth_param basic children 5
auth_param basic realm Proxy Authentication Required
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off

acl auth_users proxy_auth xifarm runwulink
http_access allow auth_users

basic_ncsa_auth 配置密码文件路径 /etc/squid/.squid_users
auth_param basic children 5 指明了这里最多开放5个账号
auth_param basic casesensitive off 大小写不明感
acl auth_users proxy_auth xifarm runwulink

开启Squid测试

systemctl restart squid

Step3:代理使用

wget命令为例

wget google.com
--2019-12-1 00:38:21-- http://google.com/
Connecting to 192.168.49.69:3128... connected.
Proxy request sent, awaiting response... 407 Proxy Authentication Required
2018-12-1 00:38:21 ERROR 407: Proxy Authentication Required.

这里会报407错误:密码账号没有设置原因。

wget --proxy-user=amos --proxy-password=password google.com
--2018-12-1 00:39:36-- http://google.com/
Connecting to 192.168.49.69:3128... connected.
Proxy request sent, awaiting response... 301 Moved Permanently
Location: http://www.google.com/ [following]
--2018-12-1 00:39:37-- http://www.google.com/
Reusing existing connection to 192.168.49.69:3128.
Proxy request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: ‘index.html.8’

index.html.8 [ <=> ] 11.72K --.-KB/s in 0.1s

2018-12-1 00:39:38 (97.6 KB/s) - ‘index.html.8’ saved [12001]

小经验

  • 查询Squid错误的日志vi /var/log/squid/access.log
  • 注意命令行路径 /usr/lib/squid/basic_ncsa_auth 以你安装Squid的为准!
  • 默认是3128端口,这个端口已经被滥用了,注意修改端口,且适用Squid密码账号方式保护流量

搭建Squid3 密码账号IP代理的更多相关文章

  1. python之squid实现免费 IP代理 (windows win7 单机 本机 本地 正向代理 区分 HTTPS)

    0.目录 1.思路2.windows安装3.相关命令行4.简单配置和初步使用5.问题:squid是否支持HTTPS6.问题:配置多个代理条目,相同ip不同port报错7.问题:根据代理请求区分HTTP ...

  2. 反爬虫之搭建IP代理池

    反爬虫之搭建IP代理池 听说你又被封 ip 了,你要学会伪装好自己,这次说说伪装你的头部.可惜加了header请求头,加了cookie 还是被限制爬取了.这时就得祭出IP代理池!!! 下面就是requ ...

  3. 最全,可直接用的一些正则校验,判断邮箱,手机号码,车牌号,身份证号,网址,账号,密码,ip,去掉html格式,工商税号等。

    一些正则校验,判断邮箱,手机号码,车牌号,身份证号,网址,账号,密码,ip,去掉html格式,工商税号等. // 判断邮箱 isValid = [text isValidEmail]; // 判断手机 ...

  4. python爬虫redis-ip代理池搭建几十万的ip数据--可以使用

    from bs4 import BeautifulSoupimport requests,os,sys,time,random,redisfrom lxml import etreeconn = re ...

  5. 反反爬虫 IP代理

    0x01 前言 一般而言,抓取稍微正规一点的网站,都会有反爬虫的制约.反爬虫主要有以下几种方式: 通过UA判断.这是最低级的判断,一般反爬虫不会用这个做唯一判断,因为反反爬虫非常容易,直接随机UA即可 ...

  6. python开源IP代理池--IPProxys

    今天博客开始继续更新,谢谢大家对我的关注和支持.这几天一直是在写一个ip代理池的开源项目.通过前几篇的博客,我们可以了解到突破反爬虫机制的一个重要举措就是代理ip.拥有庞大稳定的ip代理,在爬虫工作中 ...

  7. 配置个人Ip代理池

    做爬虫最害怕的两件事一个是被封账户一个是被封IP地址,IP地址可以使用代理来解决,网上有许多做IP代理的服务,他们提供大量的IP地址,不过这些地址不一定都是全部可用,因为这些IP地址可能被其他人做爬虫 ...

  8. 记一次企业级爬虫系统升级改造(六):基于Redis实现免费的IP代理池

    前言: 首先表示抱歉,春节后一直较忙,未及时更新该系列文章. 近期,由于监控的站源越来越多,就偶有站源做了反爬机制,造成我们的SupportYun系统小爬虫服务时常被封IP,不能进行数据采集. 这时候 ...

  9. 爬取西刺ip代理池

    好久没更新博客啦~,今天来更新一篇利用爬虫爬取西刺的代理池的小代码 先说下需求,我们都是用python写一段小代码去爬取自己所需要的信息,这是可取的,但是,有一些网站呢,对我们的网络爬虫做了一些限制, ...

随机推荐

  1. Jsp自学2

    Jsp简单来说就是java代码与Html代码的组合,类,方法,属性跟网页展示夹杂在一起.Jsp就是Servlet,但比Servle简单,不需要配置web.xml(当然也可以配置).Jsp由模板数据与元 ...

  2. 微擎修改 icon.jpg 后项目主页未变

    微擎修改 icon.jpg 后项目主页Logo未变 产生原因: 设置了自定义图标,但系统未找到该图标,就选择使用默认的起始图标 解决办法: 在项目根目录位置上传一个图标名为 icon-custom.j ...

  3. pat 1008 Elevator(20 分)

    1008 Elevator(20 分) The highest building in our city has only one elevator. A request list is made u ...

  4. Mybatis实现数据的增删改查

    Mybatis实现数据的增删改查 1.项目结构(使用maven创建项目) 2.App.java package com.GetcharZp.MyBatisStudy; import java.io.I ...

  5. Linux内核版本 uname命令 GNU项目 Linux发行版

    1.内核版本由linux内核社区统一编码和发布,格式如下图: major.minor.patch-build.desc 主版本号.次版本号.对次版本号的修订次数-编译次数.当前版本的特殊信息 次版本号 ...

  6. Qt Framework 问题之 framework/Versions/A:bundle format unrecognized, invalid, or unsuitable

    在解决标题提到的问题之后,先来介绍下Qt Framework一些基本知识. 基于QT的Mac端工程,在打包时需要对所有需要嵌入到APP的framework及dylib文件进行手动签名处理. 一.签名处 ...

  7. .NET core3.0 使用Jwt保护api

    摘要: 本文演示如何向有效用户提供jwt,以及如何在webapi中使用该token通过JwtBearerMiddleware中间件对用户进行身份认证. 认证和授权区别? 首先我们要弄清楚认证(Auth ...

  8. 线程池的C++实现(一)

    现代的软件一般都使用了多线程技术,在有些软件里面,一个线程被创建出来执行了仅仅一个任务,然后就被销毁了.线程的创建与销毁是需要消耗资源,这样为了执行单一任务而被创建出来的线程越多,性能也就越差.如果能 ...

  9. 根据json数据中某一个属性 处理数组重组的方法 (二种)

    需求:根据role 的不同分组 渲染页面 进行后期操作 后台返回数据:   因为后台返回的json数据不是我们想要的 所以就得自己来了~  要啥样整啥样 js: 第一种处理方法 使用方法: 1: th ...

  10. 原生JS的移入溢出控制div的显示与隐藏

    原生JS的移入溢出控制div的显示与隐藏的写法 上面的写法火狐存在兼容性