linux_UBUNTU 12.04 上使用 SQUID 架设HTTP正向代理服务器
配置普通HTTP正向代理
安装
|
1
|
sudo apt-get install squid squid-common
|
配置 squid3
|
1
|
sudo vim /etc/squid3/squid.conf
|
搜索此句
|
1
|
http_access deny all
|
修改为
|
1
|
http_access allow all
|
启动/重启squid3
|
1
|
sudo service squid3 restart
|
注意: squid的http默认代理端口为 3128
配置HTTPS正向代理(单向认证)
由于Ubuntu 12.04 默认安装的squid版本是不支持 SSL 的,因此只能重新编译支持 SSL .
1.安装编译依赖
|
1
2
3
4
5
6
7
8
9
|
cd ~
mkdir squid_src
cd squid_src
sudo apt-get install build-essential fakeroot devscripts gawk gcc-multilib dpatch
sudo apt-get build-dep squid3
sudo apt-get build-dep openssl
sudo apt-get source squid3
sudo apt-get install libssl-dev
sudo apt-get install openssl
|
2.修改默认的编译选项,增加SSL支持
|
1
|
vim squid3-3.1.19/debian/rules
|
在 DEB_CONFIGURE_EXTRA_FLAGS 字段中增加 –enable-ssl
|
1
2
3
4
5
6
7
8
|
...
DEB_CONFIGURE_EXTRA_FLAGS := --datadir=/usr/share/squid3 \
--sysconfdir=/etc/squid3 \
--mandir=/usr/share/man \
--with-cppunit-basedir=/usr \
--enable-inline \
--enable-ssl \
...
|
3.配置编译
|
1
2
|
cd squid3-3.1.19/
debuild -us -uc -b
|
4.安装(编译后的文件存在在上层的squid_src 目录下面)
|
1
2
|
cd ..
sudo dpkg -i squid3_3.1.19-1ubuntu3.12.04.2_amd64.deb squid3-common_3.1.19-1ubuntu3.12.04.2_all.deb squid3-dbg_3.1.19-1ubuntu3.12.04.2_amd64.deb
|
5.验证安装后的版本是否支持SSL
|
1
|
squid3 -v |grep enable-ssl
|
如果看到 enable-ssl 输出,则说明编译成功。
6.生成自签名证书
|
1
|
openssl req -new -keyout key.pem -nodes -x509 -days 365 -out cert.pem
|
7.移动服务器证书到squid3 配置目录
|
1
2
|
sudo mv cert.pem /etc/squid3/cert.pem
sudo mv key.pem /etc/squid3/key.pem
|
8.配置squit3
|
1
|
sudo vim /etc/squid3/squid.conf
|
搜索 https_port ,如果搜索到,则在搜索到的位置增加,搜索不到则在文件的最后增加
|
1
|
https_port 443 cert=/etc/squid3/cert.pem key=/etc/squid3/key.pem
|
9.验证配置文件是否配置正确
|
1
|
squid3 -k parse
|
10.启动/重启squid
|
1
|
sudo service squid3 restart
|
11.安装stunnel,配置安装目录下的stunnel.conf,把原来的内容都删掉,粘贴下面的内容
|
1
2
3
4
|
client = yes
[https]
accept = 127.0.0.1:8080
connect = www.mobibrw.com:443
|
12.设置浏览器代理服务器地址

13.重新启动stunnel。
注意,如果只支持 Https 协议,可以注释掉原来的
|
1
|
http_port 3128
|
配置Squid3用户名密码认证
1. 安装 htpasswd (如果装了apache就省掉这一步)
(这个是用来产生密码的)
|
1
|
sudo apt-get install apache2-utils
|
也可以
|
1
|
sudo apt-get install mini-httpd
|
2.生成密码文件
|
1
|
htpasswd -c /etc/squid3/passwd user1
|
会让你输入user1的密码
3.改一下权限,确保squid能够读出密码文件
|
1
|
sudo chmod o+r /etc/squid3/passwd
|
4.修改squid.conf,增加或修改成下面的样子
|
1
2
3
|
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid3/passwd
acl ncsa_users proxy_auth REQUIRED
http_access allow ncsa_users
|
简单的修改可以在VIM中查询 “auth_param basic program /usr/lib/squid/ncsa_auth" 找到后修改一下即可。
然后搜索 “http_access allow all” 找到后替换为 “http_access allow ncsa_users”
在”http_access allow all” 上面就是 acl 控制部分,直接增加”acl ncsa_users proxy_auth REQUIRED”
5.重启squid3
|
1
|
sudo service squid3 restart
|
linux_UBUNTU 12.04 上使用 SQUID 架设HTTP正向代理服务器的更多相关文章
- Ubuntu 12.04上安装R语言
Ubuntu 12.04上安装R语言 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ R的安装 sudo gedit /etc/apt/sources. ...
- Ubuntu 12.04上安装HBase并运行
Ubuntu 12.04上安装HBase并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 一.HBase的安装 在官网上下载HBase-1.1.2 ...
- Ubuntu 12.04上安装MySQL并运行
Ubuntu 12.04上安装MySQL并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 安装MySQL数据库 sudo apt-get upda ...
- Ubuntu 12.04上安装Hadoop并运行
Ubuntu 12.04上安装Hadoop并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 在官网上下载好四个文件 在Ubuntu的/home/w ...
- Ubuntu 12.04上安装 MongoDB并运行
Ubuntu 12.04上安装 MongoDB并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 在Terminal输入 sudo apt-key ...
- 在Ubuntu 12.04 上为Virtualbox 启用USB 设备支持
在Ubuntu 12.04 上为Virtualbox 启用USB 设备支持 http://www.cnblogs.com/ericsun/archive/2013/06/10/3130679.htm ...
- 在Ubuntu 12.04上配置iSCSI Target服务
今天自己按照网上搜来的教程自己在Ubuntu 12.04上配置了iSCSI Target服务,在这里简单地做个纪录.操作系统是全新安装的Ubuntu 12.04,配置一块500 GB的SATA笔记 ...
- Ubuntu 12.04+DarwinStreamingSrvr6.0.3 架设流媒体服务器
1.安装Ubuntu 12.04操作系统,网上很多教程.. 2.打开终端,下载darwin源代码DarwinStreamingSrvr6.0.3-Source.tar,补丁patch dss-6.0. ...
- 在 Ubuntu 12.04 上安装 GitLab6.0
安装环境: 操作系统: Ubuntu 12.4 LTS 英文 数据库: mysql5.5.32 web服务器: nginx1.4.1 首先, 添加git和nginx的ppa,并升级 ...
随机推荐
- Best Time to Buy and Sell Stock I,II,III [leetcode]
Best Time to Buy and Sell Stock I 你只能一个操作:维修preMin拍摄前最少发生值 代码例如以下: int maxProfit(vector<int> & ...
- MVC5+EF6 入门完整教程 总目录
本系列文章会从一个主干开始,逐渐深入,初步规划30篇.初级10篇,中级10篇,综合项目实战10篇 初级10篇 MVC5+EF6 入门完整教程10:多对多关联表更新&使用原生SQL@201505 ...
- robot framework 使用三:他们主动浏览器的兼容性
robot framework 浏览器兼容性测试 上图中黄色圈的地方默认什么都不写,是firefox浏览器.写上ie就是ie浏览器了 firefox最新版本号即可,ie须要设置: 1. IE选项设置的 ...
- MMTool制作Ozmosis引导BIOS完美引导OS X系统
Ozmosis引导是德国黑苹果爱好者制作的一个引导程序,目前仍处于测试版,有了它,你可以不用再使用四叶草.变色龙之类引导工具,相对而言它更象白苹果.Ozmosis是基于AMI公司bios的硬件引导驱动 ...
- ext Window点击右上角的关闭(Xbutton)加入监控事件
使用场景:关闭window的时候添加监听事件. 正确的使用方式: addwin = new Ext.Window({ title : '新增', closable : true, width : 50 ...
- Kohana 数据库
只要不使用官方网站的教程,自己摸索出来的,有一个错误,当我们指了出来,哦,,好吧共同进步~ 首先配置:modules\database\config\database.php <?php 'de ...
- 思维导图(自己整理,希望对大家有用):JavaScript函数+canvas绘图+Array数组
1.javascript函数: 2.Array数组: 3.canvas绘图:
- or1200下Raw-OS学习(例子篇)
没有图我说个~毛(J)线(B)~对吧??? 直接上一个以前做过的项目来说说怎么去从一个前后台的程序过度到利用操作系统去管理的你代码吧~以前想过直接用事件驱动的框架去编写代码的,无奈这方面的资料实在太少 ...
- 使用RESTClient插件数据模拟(GET,POST)提交
1:在Firefox下载RESTClient插件安装 2:安装界面后, 3:点击设置头文件:(设请求地址有头部文件) 4:设置界面,当然有非常多选择.依据你的须要.一般在输入的时候有智能提示,我这里以 ...
- Node.js和PHP运行机制对比
为什么要用node.js它又有什么优势呢?一个新的技术被大家喜爱那么它就必然有它的优势,那么下面我们就来简单把它和php做一个对比 1 . Node.js 他用的是JavaScript引擎,那么注定它 ...