网站服务器
HTTP响应状态码
HTTP服务器
HTTP开启SSL及鉴权
HTTP虚拟主机服务
NGINX服务器
NGINX开启SSL及鉴权
NGINX虚拟主机服务
NGINX代理与缓存功能
NGINX 重写规则
重新编译NGINX
NGINX安全加固
正向代理(HTTP)
Nginx服务器配置
SQUID缓存服务器
SQUID正向代理
SQUID透明代理
SQUID问题
本文档使用MrDoc发布
返回首页
-
+
SQUID正向代理
2020年5月12日 18:57
admin
#安装SQUID >##可跳转至:[传送门](http://baodoc.frp.bao-server.club:22080/project/36/290/ "传送门") #配置 >![](/media//202005/2020-05-12185108631265.png) >####注意:其实相对于反向代理,正向代理就是把反向代理消息去掉即可,如下: #http_port 80 accel vhost #cache_peer 192.168.31.146 parent 80 0 no-query originserver round-robin weight=1 >####yum源安装配置文件:/etc/squid/squid.conf >####源码安装配置文件:<安装目录>/etc/squid.conf --- vim /etc/squid/squid.conf --------------------------------------------------------- acl localnet src 10.0.0.0/8 # 定义源地址为10.0.0.0/8的ACL acl localnet src 172.16.0.0/12 # 定义源地址为172.16.0.0/12的ACL acl localnet src 192.168.0.0/16 # 定义源地址为192.168.0.0/16的ACL acl badfile urlpath_regex -i \.mp3$ \.rar$ # 定义特定文件 acl SSL_ports port 443 # 定义安全端口443的ACL acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 # https acl Safe_ports port 70 # gopher acl Safe_ports port 210 # wais acl Safe_ports port 1025-65535 # unregistered ports acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 777 # multiling http acl CONNECT method CONNECT # 定义连接方式为CONNECT的ACL http_access deny !Safe_ports # 拒绝所有非Safe_ports的连接 http_access deny CONNECT !SSL_ports http_access deny badfile # 拒绝访问特定文件 http_access allow localhost manager # 仅允许本机主机进行缓存管理 http_access deny manager # 拒绝其它主机的所有缓存管理 http_access allow localnet # 允许localnet的ACL访问 http_access allow localhost # 允许localhost访问 http_access deny all # 拒绝其它所有访问 http_port 3128 # 监听代理的3128端口,方便使用squidclient工具对缓存进行管理 #cache_mem 2048 MB # 内存缓存总容量 #maximum_object_size_in_memory 4096 KB # 内存可以缓存的单个文件最大容量 #maximum_object_size # 磁盘可以缓存的单个文件最大容量 cache_dir ufs /var/spool/squid 100 16 256 # 定义硬盘缓存目录,缓存最大容量100MB,将在缓存目录下创建16个一级子目录和256个二级子目录,用来分类管理缓存数据 cache_log /var/squid/cache.log # 缓存日志文件 cache_swap_high 95 # cache目录使用量大于95%时,开始清理旧的cache cache_swap_low 80 # cache目录清理到80%时停止 logfile_rotate 60 # log轮转60天 error_directory /var/squid/ # 定义报错文件的存放目录 # Leave coredumps in the first cache dir coredump_dir /var/spool/squid #refresh_pattern用于确定一个页面进入cache后,它在cache中停留的时间。 #格式:refresh_pattern [-i] <正则> min percent max [选项] #-i: 表示不区分大小写 #min: 保留的最低时间(单位为分钟) #percent 如果squid最后修改系数算法低于该百分比则数据不过期 #max 保留的最大时间(单位为分钟) refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern -i (/cgi-bin/|\?) 0 0% 0 refresh_pattern . 0 20% 4320 #确认ip_forward转发开启 echo 1 > /proc/sys/net/ipv4/ip_forward sysctl -a |grep -w ip_forward ![](/media//202108/2021-08-05093106644375.png) #修改配置 #修改端口 #默认端口是 3128,可以改成想要的端口,比如 8080 # Squid normally listens to port 3128 http_port 8080 #允许连接 默认情况下 Squid 不允许其他人访问,所以要开启 把这串配置 # And finally deny all other access to this proxy http_access deny all #改成这样 # And finally deny all other access to this proxy http_access allow all ##重启 Squid service squid restart --- #客户端 >##windows客户端设置 >![](/media//202005/2020-05-12191247280290.png) >![](/media//202005/2020-05-12191344237883.png) --- >##linux客户端设置 >####临时生效 export http_proxy=http://192.168.31.192:3128 export https_proxy=http://192.168.31.192:3128 >####永久生效 echo "export http_proxy=http://192.168.31.192:3128" >>/etc/profile echo "export https_proxy=http://192.168.31.192:3128" >>/etc/profile source /etc/profile
分享到: