转自:  https://blog.csdn.net/atco/article/details/43448885
 
1.安装squid
使用root用户进行操作。
先使用rpm检测是否已经安装了sqlid,如>> rpm –q squid
如未安装,可使用>> yum –install squid进行安装

2.配置squid
Squid安装后提供几个设置的地方:
/etc/squid/squid.conf:这个是主要的设置文件,所有squid所需要的设置都放在这里
/etc/squid/mime.conf:这是squid所支持的internet上的mime格式列表,一般来说不需修改
/usr/sbin/squid:squid 的主程序
/var/spool/squid:预设的squid放置缓存的地方
/usr/lib64/squid/:squid 提共的控制组件,如密码认证等

对/etc/squid/squid.conf进行配置:

只开通80端口的代理功能,把数据缓存关掉,通过密码认证方式进行使用代理,其它均不需要,设置如下:

# 使用帐号密码认证方式使用代理
auth_param basic program /usr/lib64/squid/ncsa_auth /etc/squid/squid_user.txt
auth_param basic children 5
auth_param basic realm Welcome to pycredit's proxy-only web server # 定义授权组
acl squid_user proxy_auth REQUIRED # 定义端口
acl Safe_ports port 80 # http # 拒绝所有非定义的端口
http_access deny !Safe_ports # 允许授权组
http_access allow squid_user # 拒绝其它所有未定义的
http_access deny all # Squid 端口
http_port 3128 # 缓存设置
cache_dir ufs /var/spool/squid 100 16 256 read-only
cache_mem 0 MB
coredump_dir /var/spool/squid

设置授权用户:
做好配置后,我们需要设置授权用户(即上面设置的密码文件):
>> htpasswd -c /etc/squid/squid_user.txt atco
此命令使用htpasswd进行密码设置生成用户atco,首次生成文件需要使用-c参数,如果无此命令则需使用指令>> yum install httpd,安装httpd。

3.启动squid
>> /etc/init.d/squid start

4.使用代理
Squid代理的使用方式与普通的代理使用方式一致,其端口为3128(可改),密码加密方式为base64位加密,示例如下:

try {
URL url = new URL("http://www.baidu.com");
// 创建代理服务器
InetSocketAddress addr = new InetSocketAddress("172.21.63.136",3128);
Proxy proxy = new Proxy(Proxy.Type.HTTP, addr); // http 代理
URLConnection conn = url.openConnection(proxy); String headerkey = "Proxy-Authorization";
String headerValue = "Basic "+Base64.encodeToString("user:pwd".getBytes(), false);
conn.setRequestProperty(headerkey, headerValue); InputStream in = conn.getInputStream();
// InputStream in = url.openStream();
String s = IOUtils.toString(in, "utf-8");
System.out.println(s);
} catch (Exception e) {
e.printStackTrace();

Squid配置之使用帐号密码验证的更多相关文章

  1. Ubuntu 12.04 64bit 配置完android 5.0编译环境后出现“could not write bytes: Broken pipe.”而无法进入输入帐号密码的登陆界面

    Ubuntu 12.04 64bit 配置完android 5.0编译环境后出现“could not write bytes: Broken pipe.”而无法进入输入帐号密码的登陆界面.上网问了问百 ...

  2. foxmail收取163企业邮箱设置,不能直接用foxmail默认的配置,否则一直提示帐号密码错误

    foxmail收取163企业邮箱设置,不能直接用foxmail默认的配置,否则一直提示帐号密码错误,收件.发件服务器配置需要用imap.ym.163.com,smtp.ym.163.com三级域名,帐 ...

  3. WCF加密操作(包括证书和证书+帐号密码)

    WCF作为.net三大组件之一,伟大之处不用多说,但是其加密配置对于我这样的萌新来说还是颇有难度,因此将几天来的研究成果共享出来,与各位共勉~ 首先声明我的开发环境,Win10创意者更新 + Visu ...

  4. 如何修改SharePoint2013服务器场帐号密码

    服务器远程登录帐号密码修改密码后,如何修改sharepoint服务器场管理员账户密码,今天登录了一下N久以前的搭建sharepoint2013服务器场的一台服务器器,登录进去以后直接提示帐号密码过期需 ...

  5. GitHub学习心得之 安装配置与多帐号管理

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 GitHub学习心得之 安装配置与多帐号管理 1.前言2.GitHub Linux安装(ub ...

  6. python3登录极路由并读取宽带帐号帐号密码.py

    python3登录极路由并读取宽带帐号帐号密码,fiddler抓包分析过程略... 步骤:1.登录路由,提取stok. 2.用stok拼成url,post请求 3.解析json数据 代码: " ...

  7. 开发Chrome Extension截取你微博的帐号密码

    Google允许开发者对Chrome浏览器做扩展,所以有了之前火爆的12306抢票软件,我 也用它抢过票,一直很好奇它怎么注入js到12306上面的.这周有空研究了下Chrome Extension, ...

  8. 用firefox 31配合KeePass密码管理器实现web帐号密码自动填写登录

    原文:http://bbs.kafan.cn/thread-1754676-1-1.html KeePass的优势:1.这是一款完全开源的密码管理器2.很多人都使用lastpass来保存密码,而这种严 ...

  9. TortoiseGit bonobo gitserver记住帐号密码

    记住帐号密码有两种方式: 针对服务器存储用户名密码 设置方式为在windows用户存储位置创建文件_netrc,没有后缀名.用文本编辑内容,格式为   machine 115.29.141.162 只 ...

随机推荐

  1. Java高级教程

    目录 1.Java面向对象方法 1.1. 创建类和对象的方法 1.2. this的使用 1.3. 静态域和静态方法 1.3.1. 静态域:属于类的级别 1.3.2.静态常量 1.3.3 静态方法 1. ...

  2. 谱聚类算法(Spectral Clustering)优化与扩展

    谱聚类(Spectral Clustering, SC)在前面的博文中已经详述,是一种基于图论的聚类方法,简单形象且理论基础充分,在社交网络中广泛应用.本文将讲述进一步扩展其应用场景:首先是User- ...

  3. Java多线程(五)线程的生命周期

    点我跳过黑哥的卑鄙广告行为,进入正文. Java多线程系列更新中~ 正式篇: Java多线程(一) 什么是线程 Java多线程(二)关于多线程的CPU密集型和IO密集型这件事 Java多线程(三)如何 ...

  4. gRPC奇怪的编译命令protoc

    举个栗子: protoc -I helloworld/ helloworld/helloworld.proto --go_out=plugins=grpc:helloworld 大神说得没错,读文档就 ...

  5. 设计模式のFlyweight(享元模式)----结构模式

    一.产生背景 享元模式:它使用共享物件,用来尽可能减少内存使用量以及分享资讯给尽可能多的相似物件:它适合用于只是因重复而导致使用无法令人接受的大量内存的大量物件.通常物件中的部分状态是可以分享.常见做 ...

  6. 手把手丨我们在UCL找到了一个糖尿病数据集,用机器学习预测糖尿病(三)

    梯度提升: from sklearn.ensemble import GradientBoostingClassifier gb=GradientBoostingClassifier(random_s ...

  7. BZOJ3378:[USACO]MooFest 狂欢节(树状数组)

    Description 每一年,约翰的N(1≤N≤20000)只奶牛参加奶牛狂欢节.这是一个全世界奶牛都参加的大联欢.狂欢节包括很多有趣的活动,比如干草堆叠大赛.跳牛栏大赛,奶牛之间有时还相互扎屁股取 ...

  8. GUNS后台管理框架部署与发布

    一.GUNS介绍 Guns基于SpringBoot,致力于做更简洁的后台管理系统,完美整合springmvc + shiro + mybatis-plus + beetl + flowable!Gun ...

  9. vue.js 二维码生成组件

    安装 通过NPM安装 npm install vue-qart --save 插件应用 将vue-qart引入你的应用 import VueQArt from 'vue-qart' new Vue({ ...

  10. Python:Day51 web框架

    from wsgiref.simple_server import make_server def application(environ, start_response): start_respon ...