配置普通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正向代理服务器的更多相关文章

  1. Ubuntu 12.04上安装R语言

    Ubuntu 12.04上安装R语言 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ R的安装 sudo gedit /etc/apt/sources. ...

  2. Ubuntu 12.04上安装HBase并运行

    Ubuntu 12.04上安装HBase并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 一.HBase的安装 在官网上下载HBase-1.1.2 ...

  3. Ubuntu 12.04上安装MySQL并运行

    Ubuntu 12.04上安装MySQL并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 安装MySQL数据库 sudo apt-get upda ...

  4. Ubuntu 12.04上安装Hadoop并运行

    Ubuntu 12.04上安装Hadoop并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 在官网上下载好四个文件 在Ubuntu的/home/w ...

  5. Ubuntu 12.04上安装 MongoDB并运行

    Ubuntu 12.04上安装 MongoDB并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 在Terminal输入 sudo apt-key ...

  6. 在Ubuntu 12.04 上为Virtualbox 启用USB 设备支持

    在Ubuntu 12.04 上为Virtualbox 启用USB 设备支持  http://www.cnblogs.com/ericsun/archive/2013/06/10/3130679.htm ...

  7. 在Ubuntu 12.04上配置iSCSI Target服务

      今天自己按照网上搜来的教程自己在Ubuntu 12.04上配置了iSCSI Target服务,在这里简单地做个纪录.操作系统是全新安装的Ubuntu 12.04,配置一块500 GB的SATA笔记 ...

  8. Ubuntu 12.04+DarwinStreamingSrvr6.0.3 架设流媒体服务器

    1.安装Ubuntu 12.04操作系统,网上很多教程.. 2.打开终端,下载darwin源代码DarwinStreamingSrvr6.0.3-Source.tar,补丁patch dss-6.0. ...

  9. 在 Ubuntu 12.04 上安装 GitLab6.0

    安装环境: 操作系统:    Ubuntu 12.4 LTS 英文 数据库:        mysql5.5.32 web服务器: nginx1.4.1 首先, 添加git和nginx的ppa,并升级 ...

随机推荐

  1. 【课程分享】基于plusgantt的项目管理系统实战开发(Spring3+JDBC+RMI的架构、自己定义工作流)

    基于plusgantt的项目管理系统实战开发(Spring3+JDBC+RMI的架构.自己定义工作流) 课程讲师:张弘 课程分类:Java 适合人群:中级 课时数量:37课时 用到技术:Spring  ...

  2. Vs2010 配置驱动的开发环境

    我已被用来VS2010开发环境,之前曾经与vs2010驱动的开发环境.重装系统,一次又一次的配置,找了好几篇文章,配置没有成功,在配置阶段突然成功了,直接把原来的驱动程序的配置文件将能够接管使用. 当 ...

  3. Java 打开文件的两种方式

    import java.awt.Desktop; import java.io.File; import java.io.IOException; public class LnkDemo { pub ...

  4. Java DOM4J读取XML

    DOM4J是dom4j.org出品的一个开源XML解析包.Dom4j是一个易用的.开源的库,用于XML,XPath和XSLT.它应用于Java平台,採用了Java集合框架并全然支持DOM,SAX和JA ...

  5. MVC5+EF6 入门完整教程 总目录

    本系列文章会从一个主干开始,逐渐深入,初步规划30篇.初级10篇,中级10篇,综合项目实战10篇 初级10篇 MVC5+EF6 入门完整教程10:多对多关联表更新&使用原生SQL@201505 ...

  6. hdu2852--KiKi's K-Number(段树,求第一k的数量)

    KiKi's K-Number Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  7. 写hive sql和shell脚本时遇到几个蛋疼的问题!

    错误一: Hive的where后不能用字段的别名, 错误二: hive的groupby中不能用自己定义函数,否则报错(用嵌套select取代) 错误三: 运行:$ ./hive_game_operat ...

  8. MongoDB(三)——CRUD

    MongoDB作为非关系型数据库.还是传统数据库的增删改查有很大的差别的.这里仅仅是将知识点进行了一下提纲挈领,实际用的时候.我们百度一下具体使用方法就可以. 先看大的几个方面: 一.对于里边的插入和 ...

  9. 新RSS reader

    阅读之前采取正确的方法,但是非常不介意,没有收到订阅很大. 走到今天 http://www.feedspot.com 2014/11/8追加:用下来感觉不错. feedspot 的相关快捷键例如以下: ...

  10. SQL Server中TempDB管理(version store的逻辑结构)

    原文:SQL Server中TempDB管理(version store的逻辑结构) 原文来自: http://blogs.msdn.com/b/sqlserverstorageengine/arch ...