安装

./configure --disable-internal-dns
make
make install
修改squid.conf加以下两句
dns_children 20
redirect_children 20
再启动squid,哇........,这才是我要的squid!!!!!!!!!!!!!
ps一下发现多了20个dnsserver进程。再分析:可能是此参数把squid的逐个查询DNS改为了并行查询。现已运行数天,尚未发现问题。

yum install squid

修改配置文件 /etc/squid/squid.conf
(如果该文件配置坏掉了,有 squid.conf.default 可以备用,两个文件在刚安装后是一模一样的)

# squid 端口,默认是3128
http_port 3128

# 指定硬盘缓冲区的大小
# ufs: 缓存类型
# /var/spool/squid:缓存目录
# 300:缓存大小(Mbytes)
# 允许在“/tmp”下创建的第一级子目录数为16,每个第一级子目录下可以创建的第二级子目录数量为256
cache_dir ufs /var/spool/squid 300 16 256

# 自定义某个IP或者某网段,使用 http_access 选项允许该列表
acl our_networks src 11.11.11.11/255.255.255.255
acl our_networks src 12.12.12.12/29
http_access allow our_networks

# 服务器的主机名,可随便定义
visible_hostname 221_170

# 关闭此项将在访问网站时显示的IP是unknown,如果打开则显示的是你client的内网IP
forwarded_for off

# 防止知道客户的内部 ip
header_access Via deny all

# 防止知道代理服务器的服务器名以及端口
header_access X-Forwarded-For deny all

启动 squid
service squid start

squid 的 log:/var/log/squid/
access.log cache.log squid.out store.log

给出一些 header,可以屏蔽它们

Accept

HTTP_ACCEPT

Accept-Charset

HTTP_ACCEPT-CHARSET

Accept-Encoding

HTTP_ACCEPT-ENCODING

Accept-Language

HTTP_ACCEPT-LANGUAGE

Accept-Ranges

HTTP_ACCEPT-RANGES

Age

HTTP_AGE

Allow

HTTP_ALLOW

Authorization

HTTP_AUTHORIZATION

Cache-Control

HTTP_CACHE-CONTROL

Connection

HTTP_CONNECTION

Content-Base

HTTP_CONTENT-BASE

Content-Disposition

HTTP_CONTENT-DISPOSITION

Content-Encoding

HTTP_CONTENT-ENCODING

Content-Language

HTTP_CONTENT-LANGUAGE

Content-Length

HTTP_CONTENT-LENGTH

Content-Location

HTTP_CONTENT-LOCATION

Content-MD5

HTTP_CONTENT-MD5

Content-Range

HTTP_CONTENT-RANGE

Content-Type

HTTP_CONTENT-TYPE

Cookie

HTTP_COOKIE

Date

HTTP_DATE

ETag

HTTP_ETAG

Expires

HTTP_EXPIRES

From

HTTP_FROM

Host

HTTP_HOST

If-Match

HTTP_IF-MATCH

If-Modified-Since

HTTP_IF-MODIFIED-SINCE

If-None-Match

HTTP_IF-NONE-MATCH

If-Range

HTTP_IF-RANGE

Last-Modified

HTTP_LAST-MODIFIED

Link

HTTP_LINK

Location

HTTP_LOCATION

Max-Forwards

HTTP_MAX-FORWARDS

Mime-Version

HTTP_MIME-VERSION

Pragma

HTTP_PRAGMA

Proxy-Authenticate

HTTP_PROXY-AUTHENTICATE

Proxy-Authentication-Info

HTTP_PROXY-AUTHENTICATION-INFO

Proxy-Authorization

HTTP_PROXY-AUTHORIZATION

Proxy-Connection

HTTP_PROXY-CONNECTION

Public

HTTP_PUBLIC

Range

HTTP_RANGE

Referer

HTTP_REFERER

Request-Range

HTTP_REQUEST-RANGE

Retry-After

HTTP_RETRY-AFTER

Server

HTTP_SERVER

Set-Cookie

HTTP_SET-COOKIE

Title

HTTP_TITLE

Transfer-Encoding

HTTP_TRANSFER-ENCODING

Upgrade

HTTP_UPGRADE

User-Agent

HTTP_USER-AGENT

Vary

HTTP_VARY

Via

HTTP_VIA

Warning

HTTP_WARNING

WWW-Authenticate

HTTP_WWW-AUTHENTICATE

Authentication-Info

HTTP_AUTHENTICATION-INFO

X-Cache

HTTP_X-CACHE

X-Cache-Lookup

HTTP_X-CACHE-LOOKUP

X-Forwarded-For

HTTP_X-FORWARDED-FOR

X-Request-URI

HTTP_X-REQUEST-URI

X-Squid-Error

HTTP_X-SQUID-ERROR

Negotiate

HTTP_NEGOTIATE

X-Accelerator-Vary

HTTP_X-ACCELERATOR-VARY

Squid 用户名密码认证
利用 apache 携带的工具 htpasswd 生成密码文件并添加相应的用户信息,可能需要写全 htpasswd 的路径(如果这个服务器上有若干网站,选择使用80端口的那个目录下的htpasswd)
/usr/bin/htpasswd -c /etc/squid/passwd testuser
根据提示输入密码:1234
成功后将会在 /etc/squid/passwd 中写入:
testuser:cuUEnEwyMTcGY
第一列表明用户名,第二列表明密码

修改 squid 配置文件:
# 定义了认证方式为 basic,认证程序的路径,认证程度需要读取的帐户文件(注意 ncsa_auth 和 上个步骤建立的 passwd 的路径)
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd
# 自定义一条名为 auth_user 的ACL,ACL类型为 proxy_auth 通过外部程序进行用户认证方式,列表值为REQUIRED,说明接受所有合法用户的访问,然后使用 http_access 选项允许该列表
acl auth_user proxy_auth REQUIRED
http_access allow auth_user

体验:
- 在没有开启用户名密码认证时,能成功地只允许某些 IP 访问代理服务器,并且屏蔽掉客户端的信息。
- 当开启用户名密码认证时,只要验证成功,无论 IP 是什么,都能够使用代理服务器。

验证方法:
浏览器菜单 - 工具 - Internet选项 - 连接 - 局域网设置 - 勾选“为LAN使用代理服务器”,输入代理服务器的IP和端口

然后看是否能正常浏览网页,如果是通过用户名密码验证的,则会跳出验证框,如果不在IP允许列表里,则显示的页面是禁止访问。

另外,在淘宝旺旺这个工具上也可做类似操作,看能否正常运行该软件。

Centos 安装配置代理服务器软件Squid相关推荐

  1. 阿里云 centos mysql 5.6_关于centOS安装配置mysql5.6那点事

    关于centOS安装配置mysql5.6那点事 第一步 下载安装 一.主要因为现在mysql官网yum直接推送mysql8,mysql5.1,然而mysql8不稳定,mysql5.1版本又太低,要想用 ...

  2. 向日葵远程linux vnc,CentOS安装配置VNC实现远程连接图形桌面

    CentOS安装配置VNC实现远程连接图形桌面,我们在使用centos时候肯定会用到远程链接图形桌面,现在又很多远程链接桌面软件向日葵远程控制,teamviewer等远程控制软件实现远程链接图形图像软 ...

  3. CentOS 安装HTTP代理服务器Tinyproxy---配置简捷

    CentOS 安装HTTP代理服务器Tinyproxy Tinyproxy是一个小型的基于GPL的HTTP/SSL代理程序,非常适合小型网络而且便于快速部署.这个代理程序最大的优点就是占用系统资源比较 ...

  4. 一篇解决:Ubuntu安装配置、软件、工具、快捷键

    Ubuntu安装配置.软件.工具.快捷键 记录作者配置windows.Ubuntu双系统的各种细节. 此帖说明了Ubuntu初期配置的许多问题,也介绍了很多使用技巧,持续更新. 文章目录 Ubuntu ...

  5. 基于centos 安装配置Docker ssl

    基于centos 安装配置Docker ssl Docker SSL配置 生成证书 配置Docker启用TLS 测试 参考 Docker SSL配置 记录基于centos配置docker ssl访问 ...

  6. 基于centos 安装配置环境

    基于centos 安装配置环境 服务器环境配置 docker openjdk8 docker-nginx docker-mysql docker-redis 服务器环境配置 记录服务器的环境配置,包括 ...

  7. 一文掌握 conda 安装配置生物信息软件

    2.4 conda 安装配置生物信息软件 2.4.1 conda 安装和配置 2.4.2 conda 基本使用 2.4.3 conda 的 channel 2.4.4 创建不同的软件运行环境 2.4. ...

  8. linux播放mp4软件,linux(centos)安装Mplayer视频播放软件问题汇总

    linux(centos)安装Mplayer视频播放软件问题汇总 2015-02-10 12:31:00 admin 原创 3684 文章参考:http://blog.chinaunix.net/ui ...

  9. centos安装配置OPEN*PN

    centos安装配置OPENVPN 安装程序 生成证书密钥 创建PKI 生成CA证书 为服务器生成证书密钥 为客户端生成证书密钥 生成Diffie hellman 参数 生成TLS认证密钥 编辑ope ...

最新文章

  1. Mysql 8.0安装
  2. Spring Boot2.x-10 基于Spring Boot 2.1.2 + Mybatis 2.0.0实现多数据源,支持事务
  3. dotnet安装包时找不到依赖关系_孩子总找妈妈,小心单方父母过渡依赖症,4个方法让父母更平等...
  4. phplivechat安卓app下载_掌音教师端下载软件-掌音教师版app下载v1.5.1 安卓官方版...
  5. sql limit子句_SQL子句解释的位置:之间,之间,类似和其他示例
  6. set_bit() 等位函数分析! \linux-1.0\linux\include\asm\bitops.h
  7. LeetCode 1016. 子串能表示从 1 到 N 数字的二进制串(bitset)
  8. mysql索引为啥要选择B+树 (下)
  9. ASP.NET实现数据采集
  10. Hive中元数据表的关系和如何在元数据中删除表
  11. python获取快手无水印demo
  12. yoga14s amd r7-4800h虚拟机安装黑苹果记录
  13. html中加减页码怎么设置,word中如何设置页码
  14. 6种摆脱百度竞价恶意点击的技巧
  15. 如何向别人推荐(分享)一本书
  16. 王家林Spark笔记
  17. 金额数字转换成大写,英文。111,壹佰壹拾壹元整,one hundred and eleven yuan
  18. 应用实例之__get()魔术方法--ShuipFCMS的组件(Components)调用原理
  19. 融金所-孙明达:中国普惠金融覆盖率已属较高水平
  20. MATLAB基础图像处理算法

热门文章

  1. signature=8a8da1744f65c202ddd549875ac05881,Flurform
  2. jquery dataTable 参数详解
  3. tlp导致linux运行缓慢,通过TLP改善Linux中的电源使用 | MOS86
  4. centos内核升级的两种方法
  5. Coursera | Andrew Ng (01-week-2-2.17)—Jupyter _ ipython 笔记本的快速指南
  6. int64_t 在 32 位环境下其实是 long long
  7. 了解人脸识别和二维码识别
  8. C# JSON字符串序列化与反序列化(转)
  9. 【整理】getopt和getopt_long函数
  10. windows server2012R将域名和访问的网址绑定