squid传统代理(附压缩包文件)
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,说明:当客户机通过代理来请求web页面时,指定的代理服务器会先检查自己的缓存,如果缓存中已经有客户机需要访问的页面(红色1 2 3 4),则直接将缓存中的页面内容反馈给客户机;如果缓存中没有客户机需要
千家信息网最后更新 2026年11月04日squid传统代理(附压缩包文件)
说明:
当客户机通过代理来请求web页面时,指定的代理服务器会先检查自己的缓存,如果缓存中已经有客户机需要访问的页面(红色1 2 3 4),则直接将缓存中的页面内容反馈给客户机;如果缓存中没有客户机需要访问的页面(蓝色1 2 3 4),则由代理服务器向Internet发送访问请求,当获得返回的web页面以后,将网页数据保存到缓存中并发送给客户机。使用传统代理的特点在于,客户机的相关程序必须指定代理服务器的地址、端口等基本信息。下面进行传统代理服务器的构建。
.
.
压缩文件包
链接: https://pan.baidu.com/s/1GmD1SCoYeWYFi9W1BG_Z-Q 提取码: kkcn
.
.
拓扑图如下:
.
.
实验环境:
.
.
一、编译安装squid
.
1 . 将压缩包挂载、解压到服务器中,安装编译环境
mkdir /ooo/ #创建挂载目录mount.cifs //192.168.201.1/gx /ooo/ #挂载压缩包cd /ooo/tar zxvf squid-3.5.23.tar.gz -C /opt/ #解压到/opt/yum install gcc gcc-c++ make -y #安装编译环境
.
.
2 .手工编译安装
./configure --prefix=/usr/local/squid \ #指定安装路径--sysconfdir=/etc \ #配置文件路径--enable-arp-acl \ #mack地址--enable-linux-netfilter \ #内核过滤--enable-linux-tproxy \ #透明模式--enable-async-io=100 \ #io优化--enable-err-language="Simplify_Chinese" \ #报错显示--enable-underscore \ #允许有下划键--enable-poll \ #提升--enable-gnuregex #支持正则表达式make && make install
.
.
3 . 安装完后,创建链接文件,用户和组
ln -s /usr/local/squid/sbin/* /usr/local/sbin/ #将命令放入系统识别路径下useradd -M -s /sbin/nologin squid #创建一个用户chown -R squid.squid /usr/local/squid/var/ #更改目录权限
.
.
4 . 修改squid配置文件,初始化缓存目录,启动服务,完成安装
vim /etc/squid.conf# And finally deny all other access to this proxyhttp_access allow all #允许所有http_access deny all# Squid normally listens to port 3128http_port 3128cache_effective_user squid #添加 指定程序用户cache_effective_group squid #添加 指定账号基本组squid -z #缓存目录初始化squid #启动服务
.
.
5 .编写启动脚本
cd /etc/init.dvim squid#!/bin/bash#chkconfig: 2345 90 25PID="/usr/local/squid/var/run/squid.pid"CONF="/etc/squid.conf"CMD="/usr/local/squid/sbin/squid"case "$1" in start) netstat -natp | grep squid &> /dev/null if [ $? -eq 0 ] then echo "squid is running" else echo "正在启动 squid..." $CMD fi ;; stop) $CMD -k kill &> /dev/null rm -rf $PID &> /dev/null ;; status) [ -f $PID ] &> /dev/null if [ $? -eq 0 ] then netstat -natp | grep squid else echo "squid is not running" fi ;; restart) $0 stop &> /dev/null echo "正在关闭 squid..." $0 start &> /dev/null echo "正在启动squid..." ;; reload) $CMD -k reconfigure ;; check) $CMD -k parse ;; *) echo "用法:$0{start|stop|status|reload|check|restart}" ;;esac
.
.
6 . 添加权限,名称,检查语法
chmod +x squid #添加执行权限chkconfig --add squid #添加名称,便于识别service squid check #检查语法
.
.
二、设置传统代理服务器
.
1 . squid服务器的配置
vim /etc/squid.conf.......http_port 3128cache_mem 64 MB #指定缓存功能所使用的内存空间大小,便于保持访问较频繁的WEB对象,容量最好为4的倍数,单位为MB,建议设为物理内存的1/4reply_body_max_size 10 MB #允许用户下载的最大文件大小,以字节为单位。默认设置0表示不进行限制maximum_object_size 4096 KB #允许保存到缓存空间的最大对象大小,以KB为单位,超过大小限制的文件将不被缓存,而是直接转发给用户
.
.
2 . 重启服务,清空防火墙
service squid restart #重启服务iptables -F #清空防火墙setenforce 0 #关闭增强功能iptables -I INPUT -p tcp --dport 3128 -j ACCEPT #在input链中,针对tcp协议,目标端口3128,允许转发
传统代理完成
.
.
三、测试传统代理
.
1 . 开启测试端网页
systemctl stop firewalld.servicesetenforce 0 #关闭防火墙yum install httpd -y #安装httpsystemctl start httpd #开启服务.
.
2 .win7端网络设置为NAT模式,用浏览器访问192.168.201.130
.
.
3 .网页端查看访问日志
cd /etc/httpd/logs/vim access_log #查看访问日志
可以看到来访客户端ip地址
.
.
4 . 此时设置代理访问
打开浏览器-->工具-->intenet选项
.
.
连接-->局域网设置
.
.
设置ip地址与端口
.
.
此时再用浏览器访问192.168.201.130,查看来访日志
可以看到,访问ip是代理服务器的ip地址,传统代理服务器测试成功
服务
代理
缓存
服务器
客户
传统
文件
客户机
地址
用户
页面
大小
目录
编译
单位
日志
权限
正在
浏览器
环境
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
有格互联网科技
科技互联网项目
互联网科技社
互联网科技小贷
奇酷互联网科技公司
唐信互联网科技
一五八零互联网科技
科技类的互联网平台
互联网科技公司的市场部门
隆华科技工业互联网
广州慧亚互联网科技怎么样
移动互联网科技股
佳云科技和互联网广告
哈尔滨屹滨互联网科技有限公司
民营互联网公司国防科技
新氧科技和美国互联网有关系吗
上海同邻互联网科技有限公司规模
唐山双旺合互联网科技产业园
科技互联网专业工作会议发言稿
互联网 科技节活动 微视频大赛
有格互联网科技
没上市的科技互联网公司
嘟嘟瓜互联网科技
北京禾田雨橡互联网科技
科技互联网公司logo
互联网时代科技改变生活
栖莱科技互联网股份有限公司
互联网校园科技培训
互联网科技大奖都有哪些公司
承德科技产业互联网平台