squid服务器

news2024/11/17 6:23:51

目录

squid初识

安装squid代理

常用命令

主要配置文件

正向代理

环境配置

linux服务器设置

windows客户端设置

反向代理

环境配置

在web服务器配置服务

linux服务器配置

squid初识

含义:squid cache是一个流行的自由软件(GNU通用公共许可证)的代理服务器和web缓存服务器。

原理:通过squid可以实现用户的快速访问功能,当用户想要下载一个主页时,可以向squid发起一个申请,要squid代替其进行下载,然后squid连接所申请的网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户申请同样的页面时,squid把保留的备份立即传给用户,使用户觉得速度相当快

官网:squid : Optimising Web Delivery

注意:squid服务默认端口为3128

squid代理分类

  • 正向代理
  • 反向代理
  • 透明代理

安装squid代理

检查软件是否安装: rpm -qa | grep squid

注意:没有任何反应表示没安装。

安装:yum -y install squid

常用命令

设置开机自启动:systemctl enable squid.service

关闭开机自启动:systemctl disable squid.service

手动开启squid:systemctl start squid.service

手动关闭squid:systemctl stop squid.service

查看squid服务状态:systemctl status squid

注意:squid配置文件位置——/etc/squid/squid.conf

主要配置文件

http_port 192.168.233.128:3128            //设置监听的ip和端口
cache_mem 64 MB                           //额外提供给squid使用的内存
maximum_object_size 4 MB                  //设置squid磁盘缓存最大文件,超过4MB的文件不保存到硬盘
minimum_object_size 0 KB                  //设置squid磁盘缓存最小文件
maximum_object_size_in_memory 4096 KB     //设置squid内存缓存最大文件
cache_dir ufs /var/spool/squid 100 16 256 //定义squid的catch存放路径、catch目录容量(单位M)、一级缓存目录数量、二级缓存目录数量
//定义log文件日志格式
logformat combined %ts.%03tu %6tr %>a %Ss/%03Hs %<st %rm %ru %un %Sh/%<A %mt.
//log文件存放路径和日志格式
access_log /var/log/squid/access.log combined
cache_log /var/log/squid/cache.log        //设置缓存日志
logfile_rotate 60                         //log轮询60天
cache_swap_high 95                        //cache目录使用量大于95%时,开始清理旧的cache
cache_swap_low 90                         //cache目录清理到90%时停止
acl localnet src 192.168.1.0/24           //定义外网网段
http_access allow localnet                //允许外网网段使用
acl lan src 192.168.233.0/24              //定义内网网段
http_access allow lan                     //允许内网网段使用
http_access deny all                      //拒绝所有
visible_hostname linuxserver              //主机名(随便起)
cache_mgr mchina_tang@qq.com              //管理员邮箱

正向代理

环境配置

  • windows虚拟机:一块网卡采用仅主机模式,(ip:192.168.233.188)
  • linux虚拟机:两块网卡,一块网卡采用仅主机模式(ip:192.168.233.128)一块网卡采用桥接模式(ip:192.168.1.35)
  • 外围物理机:windows系统,ip地址为192.168.1.14

解释:仅主机模式封闭无法访问外网,外围物理机可以访问外网,我要linux网卡1桥接到外围物理机可以上网,网卡2仅主机模式可以与windows虚拟机相互通信,让linux虚拟机成为windows虚拟机的代理服务器实现windows虚拟机上网。

linux服务器设置

编辑配置文件:vi /etc/squid/squid.conf

配置文件

http_port 192.168.233.128:3128
cache_dir ufs /var/spool/squid 100 16 256
logformat combined %ts.%03tu %6tr %>a %Ss/%03Hs %<st %rm %ru %un %Sh/%<A %mt.
access_log /var/log/squid/access.log combined
cache_log /var/log/squid/cache.log
acl localnet src 192.168.1.0/24
acl lan src 192.168.233.0/24
http_access allow localnet
http_access allow lan
http_access deny all
visible_hostname linuxserver

初始化squid缓存目录:squid -z

查看初始化生成的文件:ls /var/spool/squid/

启动squid服务:systemctl start squid.service

注意:开放端口3128才可以

windows客户端设置

安装代理插件——SwitchyOmega

配置代理并使用

结果:windows客户机可以上网(将本机的请求上传到192.168.233.128的3128端口,代理服务器收到后将请求对应的服务器并且响应给windows客户机)

注意:你的代理服务器必须得让你的客户机访问到才可以

反向代理

环境配置

  • windows server虚拟机:一块网卡采用仅主机模式,(ip:192.168.233.132)
  • linux虚拟机:两块网卡,一块网卡采用仅主机模式(ip:192.168.233.129)一块网卡采用桥接模式(ip:192.168.1.35)
  • 一部手机:对应的IP地址为192.168.1.12,仅用于外部访问

解释:windows server作为web服务器,在仅主机模式下模拟内网;而linux的网卡1仅主机模式下与windows server通信,网卡2在桥接模式下模拟外网与手机通信,从而linux作为反向代理服务器接收手机请求,转发给内网的windows server。

在web服务器配置服务

在d盘根目录下进行如下操作

将该网页文件发布到web服务器IIS中

打开iis点击服务器图标,选择网站右击添加网站

本地和仅主机访问http://192.168.233.132:8080请求成功 

linux服务器配置

 编辑配置文件:vi /etc/squid/squid.conf

配置文件

//linux主机监听192.168.1.35的3129端口
http_port 192.168.1.35:3129 accel vhost vport
//将端口的请求转发到192.168.233.132的8080端口上
cache_peer 192.168.233.132 parent 8080 0 no-query no-digest originserver
cache_dir ufs /var/spool/squid 100 16 256
logformat combined %ts.%03tu %6tr %>a %Ss/%03Hs %<st %rm %ru %un %Sh/%<A %mt.
access_log /var/log/squid/access.log combined
cache_log /var/log/squid/cache.log
http_access allow all

注意:

  • 要把监听端口的请求引导到哪台主机上,用cache_peer来管理
  • catch_peer可以写多个,用来配置负载均衡

启动squid服务:systemctl start squid.service

结果:手机访问192.168.1.35:3129地址成功。

理解:linux代理服务器监听3129端口,当有人请求3129端口后,那么就会将请求转发到192.168.233.123的8080端口上,进而实现了反向代理服务器的功能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/933495.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

奥比中光:进击具身智能,打造机器人之眼

大数据产业创新服务媒体 ——聚焦数据 改变商业 跨过奇点的生成式人工智能是一个缸中大脑&#xff0c;只有赋予形体&#xff0c;才能与物理世界产生互动。 在5月的ITF世界半导体大会上&#xff0c;英伟达创世人兼CEO黄仁勋说&#xff0c;人工智能的下一波浪潮将是具身智能。 8…

消息中间件 介绍

MQ简介 MQ,Message queue,消息队列&#xff0c;就是指保存消息的一个容器。具体的定义这里就不类似于数据库、缓存等&#xff0c;用来保存数据的。当然&#xff0c;与数据库、缓存等产品比较&#xff0c;也有自己一些特点&#xff0c;具体的特点后文会做详细的介绍。 现在常用…

TabBar组件如何跳转页面?

1、先引入 2、假数据 const tabs [{key: home,title: 首页,icon: <AppOutline />,badge: Badge.dot,},{key: todo,title: 待办,icon: <UnorderedListOutline />,badge: 5,},{key: message,title: 消息,icon: (active: boolean) >active ? <MessageFill /&…

开源与数据科学:一个完美的组合?

&#x1f337;&#x1f341; 博主猫头虎 带您 Go to New World.✨&#x1f341; &#x1f984; 博客首页——猫头虎的博客&#x1f390; &#x1f433;《面试题大全专栏》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &a…

如何在VSCode中将html文件打开到浏览器

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

Java学数据结构(2)——树Tree 二叉树binary tree 二叉查找树 AVL树 树的遍历

目录 引出什么是树Tree&#xff1f;树的实现二叉树binary tree查找树ADT——二叉查找树Binary Search Tree1.contains方法2.findMax和findMin方法3.insert方法4.remove方法&#xff08;复杂&#xff09;二叉查找树的深度 AVL(Adelson-Velskii和Landis)树——平衡条件(balance c…

元矿山下的音视频应用

// 近年来&#xff0c;矿业的技术和管理模式随着元宇宙的火爆和自动驾驶技术的发展逐渐变化、升级&#xff0c;进而衍生出元矿山的概念&#xff0c;音视频技术也在其中成为了关键一环。LiveVideoStackCon 2023 上海站邀请了来自希迪智驾的任思亮&#xff0c;为大家分享希迪智…

Haproxy+Keepalive 整合rabbitmq实现高可用负载均衡

Haproxy 实现负载均衡 HAProxy 提供高可用性、负载均衡及基于 TCPHTTP 应用的代理&#xff0c;支持虚拟主机&#xff0c;它是免费、快速并且可靠的一种解决方案&#xff0c;包括 Twitter,Reddit,StackOverflow,GitHub 在内的多家知名互联网公司在使用。HAProxy 实现了一种…

Rhino软件安装包分享(附安装教程)

目录 一、软件简介 二、软件下载 一、软件简介 Rhino是一款三维计算机辅助设计&#xff08;CAD&#xff09;软件&#xff0c;由Robert McNeel & Associates公司开发。它被广泛应用于工业设计、建筑设计、珠宝设计、玩具设计等领域&#xff0c;是一款非常流行的三维建模软…

05.sqlite3学习——DML(数据管理:插入、更新、删除)

目录 DML&#xff08;数据管理&#xff1a;插入、更新、删除&#xff09; 插入 更新 删除整个表 语法 实例 DML&#xff08;数据管理&#xff1a;插入、更新、删除&#xff09; 数据操纵&#xff08;DML&#xff09;&#xff1a;用于增、删、改数据 作用&#xff1a;负…

【Git游戏】远程分支

origin/<branch> 远程分支在本地以 origin/<branch>格式存在&#xff0c;他指向上次和远程分支通过时的记录 git checkout origin/<branch> 会出现HEAD分离的情况 与远程通讯 git fetch —— 从远端获取数据&#xff08;实际上将本地仓库中的远程分支更新…

Apache的简单介绍(LAMP架构+搭建Discuz论坛)

文章目录 1.Apache概述1.1什么是apache1.2 apache的功能及特性1.2.1功能1.2.2特性 1.3 MPM 工作模式1.3.1 prefork模式1.3.2 worker模式1.3.3 event模式 2.LAMP概述2.1 LAMP的组成2.2 LAMP各组件的主要作用2.3 LAMP的工作过程2.4CGI和FastCGI 3.搭建Discuz论坛所需4.编译安装Ap…

开源在物联网(IoT)中的应用

&#x1f337;&#x1f341; 博主猫头虎 带您 Go to New World.✨&#x1f341; &#x1f984; 博客首页——猫头虎的博客&#x1f390; &#x1f433;《面试题大全专栏》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &a…

小研究 - JVM 逃逸技术与 JRE 漏洞挖掘研究(一)

Java语言是最为流行的面向对象编程语言之一&#xff0c; Java运行时环境&#xff08;JRE&#xff09;拥有着非常大的用户群&#xff0c;其安全问题十分重要。近年来&#xff0c;由JRE漏洞引发的JVM逃逸攻击事件不断增多&#xff0c;对个人计算机安全造成了极大的威胁。研究JRE安…

Maven导入包

有些时候maven导入不进去包&#xff0c;这个时候可以去直接去maven仓库找到你需要的包 https://mvnrepository.com/ 在自己本地输入命令 &#xff08;这只是一个样例&#xff0c;请根据自己需要的包参考&#xff09; mvn install:install-file -Dfile"C:/Users//Downloa…

Audition软件安装包分享(附安装教程)

目录 一、软件简介 二、软件下载 一、软件简介 Audition软件是一款由Adobe公司开发的音频处理软件&#xff0c;主要用于音频录制、编辑、混音和音效处理。它提供了丰富的工具和功能&#xff0c;帮助用户处理各种音频需求&#xff0c;如制作音乐、广播节目、音频纪录片等。 A…

2023年新型智慧城市顶层设计规划解决方案86页[PPT]

导读&#xff1a;原文《2023年新型智慧城市顶层设计规划解决方案86页[PPT]》&#xff08;获取来源见文尾&#xff09;&#xff0c;本文精选其中精华及架构部分&#xff0c;逻辑清晰、内容完整&#xff0c;为快速形成售前方案提供参考。 内容简介 智慧城市顶层设计&整体架…

电商PC端设计之店招

设计总资料&#xff1a; 1、裂帛 2、小狗电器 3、店招120PX&#xff0c;导航栏30px 4、毕业那些年的店招 5、操作实例&#xff0c;建立120PX的画布 6、产品多的时候要加搜索框 7、产品店招在左边&#xff0c;主推产品在右边 8、贝蒂佩琪 实战案例 1、利用画布调整图像大小 2、…

Elasticsearch实战(二):Springboot实现Elasticsearch自动汉字、拼音补全,Springboot实现自动拼写纠错

文章目录 系列文章索引一、安装ik拼音分词器插件1、下载地址2、下载安装3、属性大全 二、自定义语料库1、新增索引映射2、批量新增文档3、查询结果 三、产品搜索与汉字、拼音自动补全1、概念2、java实现汉字自动补全3、java实现拼音自动补全 四、语言处理&#xff08;拼写纠错&…

设计模式第八讲:常见重构技巧 - 去除多余的if else

设计模式第八讲&#xff1a;常见重构技巧 - 去除多余的if else 最为常见的是代码中使用很多的if/else&#xff0c;或者switch/case&#xff1b;如何重构呢&#xff1f;方法特别多&#xff0c;本文是设计模式第八讲&#xff0c;带你学习其中的技巧。 文章目录 设计模式第八讲&am…